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

1,749 views

Published on

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.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,749
On SlideShare
0
From Embeds
0
Number of Embeds
664
Actions
Shares
0
Downloads
13
Comments
0
Likes
1
Embeds 0
No embeds

No notes for 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>

×