Buscas Poderosas Com Solr

6,032
-1

Published on

Apresentação no devinsampa

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,032
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
66
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • Buscas Poderosas Com Solr

    1. 1. Ricardo Almeida - Gonow Buscas Poderosas com Solr
    2. 2. Quem sou?
    3. 3. Solr • Engine de Busca • Open Source (Apache) • Baseado no Lucene • Java Servlet container (Jetty) • XML/HTTP e JSON APIs • Faceted Search, caching, replicação. • Web adm Interface
    4. 4. Lucene • Full Search Text • Search and Index (Busca Index ao invés de textos) • Document (Unidade de Pesquisa e Index) • Fields • Queries
    5. 5. acts_as_taggable_on • script/plugin install git://github.com/mbleigh/acts-as-taggable-on.git • script/generate acts_as_taggable_on_migration • rake db:migrate
    6. 6. Solr - Atributos Dinâmicos DynamicAttribute.new :name => “hora_extra”, :value => “A definir”
    7. 7. Solr - Atributos Dinâmicos • script/generate dynamic_attributes_migration • rake db:migrate
    8. 8. Solr - Geo-Distância
    9. 9. Solr - Geo-Localização • script/generate local_migration • rake db:migrate
    10. 10. Integrando Solr e plugin acts_as_solr com Rails (5 min)
    11. 11. Requerimentos: Java Runtime Environment (JRE) 5.0 Passos: 1. Criar aplicação Rails 2. Instalar plugin acts_as_solr_reloaded script/plugin install git://github.com/ricardoalmeida/acts_as_solr_reloaded.git 3. Criar um modelo Palestrante 5. Executar a migração 6. Editar o modelo 7. rake solr:start http://0.0.0.0:8982/solr/admin 8. Usar o script/console
    12. 12. Acts_as_solr • query = “Palestrante devinsampa” • palestrante.find_by_solr(query, options) • palestrante.search(query, options) • evento.palestrantes.search(query)
    13. 13. Por que Solr? • JVM
    14. 14. Por que Solr? • JVM • Performance /Cache / Replicação
    15. 15. Por que Solr? • JVM • Performance /Cache / Replicação • Usa Lucene
    16. 16. Por que Solr? • JVM • Performance /Cache / Replicação • Usa Lucene • Boa integração com Rails
    17. 17. Performance de Indexação • multithread / multiprocessos • solrconfig.xml
    18. 18. Performance de Busca • Index Otimizado • Cache tuning (solrconfig.xml) • Replicação de Busca
    19. 19. Por que Solr? Acts_as_solr Sphinx Acts_as_ferret
    20. 20. Sai Sphinx entra Solr
    21. 21. Acts_as_solr X Sphinx • Acts_as_solr trabalha com Sqlite3 e Sphinx exigia Mysql • Acts_as_solr indexa documento no after_create • Atributos Dinâmicos • Faceting e Geo-localizacao
    22. 22. acts_as_taggable_on • script/plugin install git://github.com/mbleigh/acts-as-taggable-on.git • script/generate acts_as_taggable_on_migration • rake db:migrate
    23. 23. Solr - Faceting • Número de vezes que um termo aparece em um documento
    24. 24. Lucene - Relevance :tag => 0 :nome => 2 Palestrante.search “Ricardo” palestrante1.tag_list = “Ricardo” palestrante2.nome = “Ricardo”
    25. 25. Lucene - Query Parser Sintaxe • title:ipod* AND price:[0 TO 100]
    26. 26. Testes • rake solr:start RAILS_ENV=test • Porta 8981
    27. 27. Por que reloaded? • Plugin de Thiago Jackiw (http://www.railsfreaks.com/) • acts_as_solr_reloaded de Diego Carrion (www.mouseoverstudio.com)
    28. 28. Por que reloaded? • Solr 1.4 • Geo-Localização • Relevance • Highlighting
    29. 29. Novas Features (Meu fork) • Migrate para DynamicAttribute e Local • DynamicAttribute e Local internos
    30. 30. Lucene • WhitespaceAnalyser • StopAnalizers • SynonymAnalyser • I18n (Internacionalização)
    31. 31. http://www.workingwithrails.com/person/17033-ricardo-almeida
    32. 32. Agradecimentos
    33. 33. Referências • http://www.mouseoverstudio.com/blog/2009/08/27/sai-sphinx-entra-solr- actsassolrreloaded/ • http://github.com/mbleigh/acts-as-taggable-on/tree/master • http://github.com/dcrec1/acts_as_solr_reloaded/tree • http://lucene.apache.org/solr/ • http://wiki.apache.org/solr/ • http://lucene.apache.org/solr/tutorial.html • http://github.com/jeveaux/aprendendo-solr/tree/master/solrServer/ • http://solrjs.solrstuff.org/test/reuters/ • http://www.lucenetutorial.com/
    34. 34. Duvidas? http://manifestonaweb.wordpress.com @almeidaricardo http://visaoagil.wordpress.com www.infoq.com/br
    35. 35. Obrigado!
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×