Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Growing with ElasticSearch

Avatar for Devi Devi
May 11, 2018

Growing with ElasticSearch

RoofConf 2018

Avatar for Devi

Devi

May 11, 2018
Tweet

More Decks by Devi

Other Decks in Technology

Transcript

  1. About me • Over a decade of experience in building

    software • Lead developer/Architect at PowerToFly
  2. Our journey with ElasticSearch 2014: launched with Postgres Full text

    search 2015: Faceted Search with ES v1.4 2016: Log monitoring system with ELK 2.3 2017: Analytics pipeline with ELK 5.5
  3. Search for a search engine Postgres v9.3 Sphinx v2.1 Solr

    v4.x ElasticSearch v1.4 Full text search ✓ ✓ ✓ ✓ Support for facets ❌ ✓ ✓ ✓ Cluster ready ❌ ❌ Limited ✓ Search in PDFs ❌ ❌ ✓ ✓ REST APIs ❌ ❌ ❌ ✓ Nested docs, Parent-Child relations ❌ NA Limited ✓ Powerful and Flexible Query DSL ❌ NA ❌ ✓
  4. distributed, multitenant-capable, full-text search engine. • Built upon battle tested

    Lucene • Powerful and flexible Query DSL • Powerful Aggregations • REST APIs for everything • Ease with nested documents and parent-child relationships • Suitable eco system for data pipelines The goodness of ElasticSearch
  5. What sits where ? Internet Search Service ES cluster Periodic

    Indexing job Postgres DB Primary datastore for core data jobs, candidates data
  6. Log monitoring: From a third-party solution to ELK based AWS

    S3 ElasticSearch cluster web & worker nodes with filebeat logstash Dashboards on Kibana Daily indices logs
  7. Recommendation engine Web Application ElasticSearch cluster web nodes with filebeat

    logstash User activity Kibana Dashboards Daily indices
  8. • Disable indexing, storing, norms, _source when you don’t need

    • Use smallest numeric data or make it keyword • Optimize number of primary shards • Use bulk requests, optimize their size Index performance tuning
  9. Summary • Elastic stack is growing and improving - see

    if it fits your needs • Defaults are good only to start - know what they are and tune them • Different indexes for different data • Understand your needs and model your documents well