Pesquisando bilhões de documentos em milésimos de segundo

0 visualizações

Publicada em

Apresentação Realizada no Cotemig na semana da computação em 2011.

Pesquisando Bilhões de Documentos em Milésimos de Segundo usando Apache Solr.

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

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

Nenhuma nota no slide

Pesquisando bilhões de documentos em milésimos de segundo

  1. 1. Pesquisando Bilhões de documentos em milésimos de segundo. Hermano Soares
  2. 2. Agenda <ul><li>Palestrante </li></ul><ul><li>A Necessidade </li></ul><ul><li>Cenário não aplicável </li></ul><ul><li>Cenário Aplicável </li></ul><ul><li>Apache Lucene </li></ul><ul><li>Apache Solr </li></ul><ul><li>Arquiteturas </li></ul><ul><li>Estudo Caso </li></ul><ul><li>Fechamento </li></ul>
  3. 3. Hermano Soares <ul><li>Diretor técnico na Itsway Sistemas </li></ul><ul><li>Trabalha c/ desenvolvimento a 10 anos </li></ul><ul><li>Especialista em todas plataformas do Java ( EE, SE,ME ) </li></ul><ul><li>Desenvolvedor Microsoft .NET </li></ul><ul><li>7 certificações Sun: SCJA, SCJP, SCJD, SCWCD, SCBCD, SCEA, SCMAD </li></ul><ul><li>Bacharel em SI </li></ul>
  4. 4. A Necessidade <ul><li>Motor de busca </li></ul><ul><li>Busca textual arbitrária </li></ul><ul><li>Altíssima performance (<1s) </li></ul><ul><li>Integração com qualquer linguagem de programação </li></ul>
  5. 5. Cenário: não aplicável <ul><li>A importância da pesquisa é baixa, o foco do software é outro </li></ul><ul><li>O numero de usuários acessando é baixo ex: <100 </li></ul><ul><li>O volume do acervo é pequeno(200.000rows) e seu crescimento é 5% ao ano. </li></ul><ul><li>Tempo de resposta para o usuário até 3s é aceitável. </li></ul>
  6. 6. Cenário: aplicável <ul><li>Pesquisa é de grande valor aos usuários </li></ul><ul><li>O tempo de resposta é muito importante </li></ul><ul><li>O número de usuário concorrentes é alto (ex: 10.000) </li></ul><ul><li>A pesquisa precisa atender a critérios Web 2.0 </li></ul>
  7. 7. Categorização (Facet)
  8. 8. Categorização (Facet/Highlight)
  9. 9. Nuvem de tags
  10. 10. <ul><li>A TECNOLOGIA </li></ul>
  11. 11. Apache Lucene <ul><li>Motor de Busca textual </li></ul><ul><li>Alta perfomance </li></ul><ul><li>Suporte a facet (categorias) </li></ul><ul><li>Suporte highlight ( grifar resultados) </li></ul><ul><li>Suporte spellchecker (Você quis dizer ...) </li></ul><ul><li>Suporte stopwords (termos dispensaveis) </li></ul><ul><li>Diversos algoritmos de busca textual </li></ul><ul><li>Open Source e Free </li></ul>
  12. 12. Apache Lucene
  13. 13. Apache Solr <ul><li>Servidor HTTP de Pesquisa textual, construido sob o Lucene. </li></ul><ul><li>Suporte a todas as features do lucene </li></ul><ul><li>Suporte a replicação: Master-Slave </li></ul><ul><li>Independente de Linguagem/SO (WS) </li></ul><ul><li>Open source </li></ul><ul><li>Escrito em Java </li></ul><ul><li>Dispensa escrever código Java </li></ul><ul><li>Configurável via xml </li></ul><ul><li>Suporte Operações: SELECT/ADD/DELETE </li></ul><ul><li>Cache </li></ul><ul><li>Estatísticas </li></ul><ul><li>Suggestions </li></ul><ul><li>Interface web de Administração e Query (Ferramenta) </li></ul>
  14. 14. Arquitetura SOLR
  15. 15. Schema.xml
  16. 16. Stopwords.txt <ul><li>dos, em, que, por, de, do, da, sao, teve, se ,os , na, ou, sua, como, das, ha, etc </li></ul>
  17. 17. Synonyms.txt <ul><li>Carro = veiculo </li></ul><ul><li>Gordo = obeso </li></ul><ul><li>Morrer = falecer </li></ul><ul><li>Bonito = belo </li></ul>
  18. 18. Spellings.txt <ul><li>Entaum=entao </li></ul><ul><li>Aham=sim </li></ul><ul><li>Blz=ok </li></ul>
  19. 19. protwords.txt <ul><li>Lista de Termos indesejáveis, ofensivos, vulgares, sexuais, etc </li></ul>
  20. 20. <ul><li>Operações </li></ul>
  21. 21. Interface: Webservice REST
  22. 22. <ul><li>Arquitetura de Alta Disponibilidade </li></ul>
  23. 23. Replicação
  24. 24. Arquitetura Mundo Real Escalável
  25. 25. <ul><li>Estudo de Caso </li></ul>
  26. 26. Estudo de Caso <ul><li>Evento: Apache Lucene EuroCon 2010 </li></ul><ul><li>Empresa: Attensity Group </li></ul><ul><li>Projeto: Social Media Monitoring </li></ul><ul><li>Pais: Europa </li></ul><ul><li>Objetivo: </li></ul><ul><li>6-12 months of Twitter, blogs, Youtube, Facebook, Google Buzz </li></ul>
  27. 27. Successfully scaled Solr to 3+ billion documents. <ul><li>40+ Solr servers </li></ul><ul><li>Amazon EC2 </li></ul><ul><li>3 billion documents </li></ul><ul><li>http://2010.lucene-eurocon.org/ </li></ul>
  28. 28. <ul><li>Fechamento </li></ul>
  29. 29. Como saber o melhor cenário ? <ul><li>Expectativa do volume de usuários </li></ul><ul><li>Críticidade do tempo de resposta </li></ul><ul><li>Importância de uma pesquisa eficiente e relevante . </li></ul>
  30. 30. Dúvidas ? <ul><li>Email: [email_address] </li></ul><ul><li>Site: www.itsway.com.br </li></ul>

×