ELASTICSEARCH – SEARCH
DONE RIGHT
Bart Wullems
Practice Manager NCORE
bart.wullems@ordina.be
https://bartwullems.blogspot.com
• ElasticSearch is a free and open source distributed inverted index
created by shay banon.
• Build on top of Apache Lucene
• Lucene is a java-based full text search index implementation.
• First public release version v0.4 in February 2010.
• Easy to scale (Distributed)
• Everything is one JSON call away (RESTful API)
• Unleashed power of Lucene under the hood
• Excellent Query DSL
• Support for advanced search features (Full Text, Facets, Fuzzy Search,
Autocomplete, Highlights, ...)
• Configurable and Extensible
• Document Oriented
• Schema free
JSON
FIELD 1
MAPPING
FIELD 2
FIELD ...
JSON
FIELD 1
MAPPING
FIELD 2
FIELD ...
NODE 1
P1 R1 R1
JSON
JSON
JSON
CLUSTER
NODE 1
P1
NODE 2MASTER
R2 R2R1 R1
P2 P2
• 2 official clients:
•High-level client that internally uses the low-
level Elasticsearch.Net client
•Maps requests and responses to strongly typed
objects
•Takes advantage of .NET features where they
make sense (i.e., covariant collection result
types, type and index inference)
•Low-level client that provides a one-to-one
mapping with the Elasticsearch REST API
•No dependencies
•Almost completely generated from the official
REST API spec which makes it easy to keep up to
date
https://github.com/wullemsb/D
emoTechoramaElasticSearch
• ElasticSearch brings “Google like” search into your reach
• Enabled in .NET(Core) through NEST and ElasticSearch.NET
• Search remains a complex beast
• The difficulty is not in the search but in the indexing
• Users love it!
ElasticSearch - Search done right

ElasticSearch - Search done right

  • 1.
  • 2.
    Bart Wullems Practice ManagerNCORE bart.wullems@ordina.be https://bartwullems.blogspot.com
  • 16.
    • ElasticSearch isa free and open source distributed inverted index created by shay banon. • Build on top of Apache Lucene • Lucene is a java-based full text search index implementation. • First public release version v0.4 in February 2010.
  • 18.
    • Easy toscale (Distributed) • Everything is one JSON call away (RESTful API) • Unleashed power of Lucene under the hood • Excellent Query DSL • Support for advanced search features (Full Text, Facets, Fuzzy Search, Autocomplete, Highlights, ...) • Configurable and Extensible • Document Oriented • Schema free
  • 20.
  • 21.
    JSON FIELD 1 MAPPING FIELD 2 FIELD... NODE 1 P1 R1 R1 JSON JSON JSON
  • 22.
  • 29.
  • 30.
    •High-level client thatinternally uses the low- level Elasticsearch.Net client •Maps requests and responses to strongly typed objects •Takes advantage of .NET features where they make sense (i.e., covariant collection result types, type and index inference) •Low-level client that provides a one-to-one mapping with the Elasticsearch REST API •No dependencies •Almost completely generated from the official REST API spec which makes it easy to keep up to date
  • 33.
  • 35.
    • ElasticSearch brings“Google like” search into your reach • Enabled in .NET(Core) through NEST and ElasticSearch.NET • Search remains a complex beast • The difficulty is not in the search but in the indexing • Users love it!