Elasticsearch Architecture: Amusing Algorithms and Details on Data Structures
When you want to make search fast, 80% of the job involves organizing your data so that it can be accessed with as little work as possible. This is the exact reason why Elasticsearch is based on an inverted index.
But there are some very interesting algorithms and data structures involved in that last 20% of the job. In this talk, you will gain insights into some internals of Elasticsearch and see how priority queues, finite state machines, bit twiddling hacks and several other algorithms and data structures power Elasticsearch.
Officially trained as a molecular neurobiologist, Zachary has thrown off the shackles of pipettes and petri dishes to return to his original passion: building software. Zach is a developer for Elasticsearch, fondly remembers v0.18, and co-authored Elasticsearch: The Definitive Guide.
Adrien is a Lucene committer at The Apache Software Foundation and a software engineer at Elastic, where he works on improving Elasticsearch. He has worked with Apache Lucene since 2010 and became a committer in 2012. He joined Elastic in May 2013 and likes to work on search-related problems like index construction, query execution or aggregations from his home in Caen, France. In his spare time, he enjoys horseback riding.