Your SlideShare is downloading. ×
0
Getting search working should not be hard.                 Lucas Catón
ElasticSearch?Full-text search engine and database.
It’s based on Lucene...  Written in Java (fast!)     painless setup      open-source
Real-time searchFull-text search engine and database         Communicating     JSON over RESTful HTTP        Free search s...
Cloud-ready & distributed    Built for the cloud    Highly-available    Always available         Scalable    Scale to hund...
Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
Query DSL
Normalise values             and search terms"deleteByQuery"             "DELETE QUERY"                  delete           ...
AnalyseNormalise values             and search terms"deleteByQuery"             "DELETE QUERY"                  delete    ...
What is stored in ElasticSearch?
Document:{    tweet => "Perl is GREAT!",    posted => "2011-08-15",    user => {       name => "Clinton Gormley",       em...
Document:         {             tweet => "Perl is GREAT!",             posted => "2011-08-15",             user => {      ...
Document:                                    Values{    tweet => "Perl is GREAT!",    posted => "2011-08-15",    user => {...
Built in analyzers:Pattern, Language, Snowball, Custom, Standard      Simple, Whitespace, Stop, Keyword
The Brown-Cows Part_No. #A.BC123-456 joe@bloggs.com                          keyword:     The Brown-Cows Part_No. #A.BC123...
RTFM!
Language Analyzers A set of analyzers aimed at analyzing specific language text. The following types are supported: arabic,...
ClientsJava, Ruby, PHP, Groovy, Python,Perl, Erlang, .NET, Clojure, Scala...
Ruby clientshttps://github.com/karmi/tireGreat documentation, easy installation, flexible.↪ 43,605 total downloads (rubygem...
Ruby clientshttps://github.com/karmi/tireGreat documentation, easy installation, flexible.↪ 43,605 total downloads (rubygem...
evenshtein algorithmL                  ce)     an (similarity based on dist
Rails
Highlight> highlight :tags, :title, :options => { :tag => <strong> }=> "Foo <strong>matched word</strong> Bar"  https://gi...
Powerfull aggregation feature (Facets)
Powerfull aggregation feature (Facets)
PluginsHow to install:/path/elasticsearch/<version>/bin/plugin -install <plugin_name>
Plugin - elasticsearch-head A web front end for an ElasticSearch clusterhttps://github.com/mobz/elasticsearch-head
Plugin - elasticsearch-head
Plugin - elasticsearch-head
Plugin - Paramedic  A simple tool to inspect the state and statistics          about ElasticSearch clusters.https://github...
Plugin - Paramedic
Plugin - BigDeskLive charts and statistics for ElasticSearch cluster.    https://github.com/lukas-vlcek/bigdesk
Plugin - BigDesk
Disadvantages=> Uses lots of memory;=> No autowarming;
Interesting reading / referenceOfficial guidehttp://www.elasticsearch.org/guide/Language Analyzershttp://www.elasticsearch....
Thank you!
Questions?
2012 06-26 - Apresentação sobre ElasticSearch
2012 06-26 - Apresentação sobre ElasticSearch
2012 06-26 - Apresentação sobre ElasticSearch
2012 06-26 - Apresentação sobre ElasticSearch
2012 06-26 - Apresentação sobre ElasticSearch
2012 06-26 - Apresentação sobre ElasticSearch
Upcoming SlideShare
Loading in...5
×

2012 06-26 - Apresentação sobre ElasticSearch

3,600

Published on

http://blog.lucascaton.com.br/?p=1373

Published in: Technology

Transcript of "2012 06-26 - Apresentação sobre ElasticSearch"

  1. 1. Getting search working should not be hard. Lucas Catón
  2. 2. ElasticSearch?Full-text search engine and database.
  3. 3. It’s based on Lucene... Written in Java (fast!) painless setup open-source
  4. 4. Real-time searchFull-text search engine and database Communicating JSON over RESTful HTTP Free search schema Document oriented
  5. 5. Cloud-ready & distributed Built for the cloud Highly-available Always available Scalable Scale to hundreds
  6. 6. Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
  7. 7. Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
  8. 8. Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
  9. 9. Benchmarks by Socialcast Engineeringhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/
  10. 10. Query DSL
  11. 11. Normalise values and search terms"deleteByQuery" "DELETE QUERY" delete by query deletebyquery
  12. 12. AnalyseNormalise values and search terms"deleteByQuery" "DELETE QUERY" delete by query deletebyquery
  13. 13. What is stored in ElasticSearch?
  14. 14. Document:{ tweet => "Perl is GREAT!", posted => "2011-08-15", user => { name => "Clinton Gormley", email => "drtech@cpan.org" }, tags => ["perl","opinion"], posts => 2}
  15. 15. Document: { tweet => "Perl is GREAT!", posted => "2011-08-15", user => { name => "Clinton Gormley",Fields email => "drtech@cpan.org" }, tags => ["perl","opinion"], posts => 2 }
  16. 16. Document: Values{ tweet => "Perl is GREAT!", posted => "2011-08-15", user => { name => "Clinton Gormley", email => "drtech@cpan.org" }, tags => ["perl","opinion"], posts => 2}
  17. 17. Built in analyzers:Pattern, Language, Snowball, Custom, Standard Simple, Whitespace, Stop, Keyword
  18. 18. The Brown-Cows Part_No. #A.BC123-456 joe@bloggs.com keyword: The Brown-Cows Part_No. #A.BC123-456 joe@bloggs.com whitespace: The, Brown-Cows, Part_No., #A.BC123-456, joe@bloggs.com simple: the, brown, cow, s, part, no, a, bc, joe, bloggs, com standard: brown, cows, part_no, a.bc123, 456, joe, bloggs.com snowball (English): brown, cow, part_no, a.bc123, 456, joe, bloggs.com
  19. 19. RTFM!
  20. 20. Language Analyzers A set of analyzers aimed at analyzing specific language text. The following types are supported: arabic, armenian, basque, brazilian, bulgarian, catalan, chinese,cjk, czech, danish, dutch, english, finnish, french, galician, german, greek, hindi, hungarian, indonesian, italian, norwegian, persian, portuguese, romanian, russian, spanish, swedish, turkish, thai.
  21. 21. ClientsJava, Ruby, PHP, Groovy, Python,Perl, Erlang, .NET, Clojure, Scala...
  22. 22. Ruby clientshttps://github.com/karmi/tireGreat documentation, easy installation, flexible.↪ 43,605 total downloads (rubygems.org)https://github.com/grantr/rubberbandPoor documentation.↪ 9,570 total downloads (rubygems.org)https://github.com/wireframe/elastic_searchable/Not very flexible.↪ 16,820 total downloads (rubygems.org)https://github.com/angelf/escargotNot ready yet (WIP).↪ 998 total downloads (rubygems.org)
  23. 23. Ruby clientshttps://github.com/karmi/tireGreat documentation, easy installation, flexible.↪ 43,605 total downloads (rubygems.org)https://github.com/grantr/rubberbandPoor documentation.↪ 9,570 total downloads (rubygems.org)https://github.com/wireframe/elastic_searchable/Not very flexible.↪ 16,820 total downloads (rubygems.org)https://github.com/angelf/escargotNot ready yet (WIP).↪ 998 total downloads (rubygems.org)
  24. 24. evenshtein algorithmL ce) an (similarity based on dist
  25. 25. Rails
  26. 26. Highlight> highlight :tags, :title, :options => { :tag => <strong> }=> "Foo <strong>matched word</strong> Bar" https://github.com/karmi/tire/blob/master/test/integration/highlight_test.rb
  27. 27. Powerfull aggregation feature (Facets)
  28. 28. Powerfull aggregation feature (Facets)
  29. 29. PluginsHow to install:/path/elasticsearch/<version>/bin/plugin -install <plugin_name>
  30. 30. Plugin - elasticsearch-head A web front end for an ElasticSearch clusterhttps://github.com/mobz/elasticsearch-head
  31. 31. Plugin - elasticsearch-head
  32. 32. Plugin - elasticsearch-head
  33. 33. Plugin - Paramedic A simple tool to inspect the state and statistics about ElasticSearch clusters.https://github.com/karmi/elasticsearch-paramedic
  34. 34. Plugin - Paramedic
  35. 35. Plugin - BigDeskLive charts and statistics for ElasticSearch cluster. https://github.com/lukas-vlcek/bigdesk
  36. 36. Plugin - BigDesk
  37. 37. Disadvantages=> Uses lots of memory;=> No autowarming;
  38. 38. Interesting reading / referenceOfficial guidehttp://www.elasticsearch.org/guide/Language Analyzershttp://www.elasticsearch.org/guide/reference/index-modules/analysis/lang-analyzer.htmlTerms of endearment – the ElasticSearch Query DSL explainedhttp://www.elasticsearch.org/tutorials/2011/08/28/query-dsl-explained.htmlRealtime Search: Solr vs Elasticsearchhttp://engineering.socialcast.com/2011/05/realtime-search-solr-vs-elasticsearch/The Ruby Toolbox - Elastic Searchhttps://www.ruby-toolbox.com/search?utf8=%E2%9C%93&q=elastic+searchComo adicionar consultas ultra-eficientes em grandes bases de documentoshttp://prezi.com/tdskmzuxflts/como-adicionar-consultas-ultra-eficientes-em-grandes-bases-de-documentos-com-elasticsearch/Rails Castshttp://railscasts.com/episodes/306-elasticsearch-part-1http://railscasts.com/episodes/307-elasticsearch-part-2 (paid content)
  39. 39. Thank you!
  40. 40. Questions?
  1. A particular slide catching your eye?

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

×