Elasticsearch as consistent Lookupstore
Elasticsearch is a distributed system which is highly scalable, performant and provides near-real time search capability. But elasticsearch don’t have a concept of transactions and is infamous for losing data or serving stale data. Can Elasticsearch be used as a consistent lookup data store, where we can ensure that any write that has happened is available for all future lookups? Can we ensure that we always gets the latest document for a search request?
- What is lookupstore?
- Consistency & resiliency issues in ES
- How are we trying to make it consistent
- Trade offs of the approach.
- Is the solution enough?
Go through this doc for more on what ES team is doing - https://www.elastic.co/blog/resiliency-elasticsearch
I am SDE 2 in Flipkart and am a part of Logistics Insights team building data streaming pipeline to enable the data driven decisions.