Successfully reported this slideshow.

Buscas Poderosas Com Solr

4

Share

Loading in …3
×
1 of 43
1 of 43

More Related Content

Related Audiobooks

Free with a 14 day trial from Scribd

See all

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!

Editor's Notes

×