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

Growing with ElasticSearch

Devi
May 11, 2018

Growing with ElasticSearch

RoofConf 2018

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