Vladimir infomobileonair

1.007 visualizações

Publicada em

Produto para busca de informações em vídeos e áudio. A diferença com o Youtube é que o OnAir permite também a busca pelo conteúdo falado.

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
1.007
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
0
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Vladimir infomobileonair

  1. 1. OnAir usando Cassandra Vladimir Moreira Rocha
  2. 2. Roteiro  Contexto do OnAir  Contexto técnico  Problema arquitetural  Solução implantada  Resultados obtidos  Trabalhos em andamento  Conclusões
  3. 3. Contexto  OnAir é um sistema de busca de informações multimídia, como o Youtube.  A busca é realizada por palavras-chaves e pelo conteúdo falado, acessando diretamente o trecho.  Utiliza conceitos da Web Semântica que permitem expandir uma consulta.  Baseado na tese de mestrado de Christian Paz Trillo do IME - USP.  Criado como produto pela empresa Infomobile através de programas de subvenção para inovação tecnológica.
  4. 4. Contexto técnico  Processamento do vídeo − Criação das estruturas de recuperação - índices − Criação das estruturas para Web Semântica  Expansão da consulta − Utilização das estruturas de Web Semântica  Busca de resultados − Cálculo de relevância para os resultados
  5. 5. Problema arquitetural  As estruturas de recuperação estavam armazenadas em um banco de dados. Se esse servidor falhasse, o sistema todo ficava indisponível.  As estruturas de Web Semântica são coleções gigantes de informações. Armazenadas em memória, perdia-se a escalabilidade. Armazenadas em um banco de dados remoto perdia-se o desempenho do sistema.  A relevância de um vídeo é calculado utilizando fórmulas e algumas estruturas intermediárias. O armazenamento dessa informação em memória, causava a perda de escalabilidade do sistema para centenas de usuários.
  6. 6. Solução implantada  Requerimentos: − Escalável para milhares de usuários. − Curto tempo de resposta. − Evitar pontos únicos de falha. − De fácil administração caso seja um ambiente distribuído. − Que possibilite acessos a diferentes porções de dados de forma distribuída sem prejudicar o desempenho do sistema.
  7. 7. Solução implantada O projeto Cassandra (cassandra.apache.org) provê todas as funcionalidades necessárias para atender os requerimentos de escalabilidade, desempenho e alta disponibilidade, além de fornecer uma fácil administração da nuvem criada pelos computadores. Cassandra trabalha com o mapeamento “chave → valor” parecida a uma estrutura de hash distribuída. Nessa estrutura, a recuperação de um valor acontece em tempo quase constante, independente da quantidade de chaves armazenadas.
  8. 8. Solução implantada No OnAir, o Cassandra foi utilizado especificamente para:  Armazenar e procurar na nuvem os índices de uma determinada palavra. Esse índice era assim inserido na estrutura de recuperação (on demand).  Armazenar e procurar na nuvem os relacionamentos semânticos de uma palavra.  Armazenar e procurar na nuvem valores de fórmulas intermediárias, que já foram realizadas, para calcular a relevância de um vídeo.
  9. 9. Resultados Os resultados obtidos da utilização do Cassandra, quando sujeito a estresse de mil clientes, permitiram:  Melhorias no tempo de resposta da consulta (de 3 minutos a 2 segundos).  Melhorias no tempo de resposta da expansão da consulta (de 1 minuto a 1 segundo).  Melhorias na utilização de recursos do servidor (foram retiradas da memória estruturas e valores).  Melhoria na tolerância a falhas: quando algumas máquinas da nuvem são desconectadas, a disponibilidade das informações se mantém.
  10. 10. Trabalhos em Andamento  Cassandra com suporte à transações.  Cassandra com suporte à segurança.  Criação de espaços de busca dinâmicos.
  11. 11. Conclusões  Cassandra ajudou a melhorar o desempenho, a escalabilidade e tolerância a falhas do sistema.  Evitou o uso de um servidor de banco de dados, evitando pontos único de falha e simplificando a implementação do sistema.  Assim como outras ferramentas noSQL, existe o problema do mapeamento OO (objeto → valor).  Para questões relacionadas à transações distribuídas, Cassandra não é uma opção.
  12. 12. OnAir usando Cassandra Vladimir Moreira Rocha vmoreira@infomobile.com.br

×