This article aims to discover Elasticsearch superficially.
This birth history of Elasticsearch is a bit funny. Shay Banon, the man behind Elasticsearch, decided to develop a search engine to help his wife, who was taking a cooking class, with her vast recipes: That is the early stage of the most popular search engine.
Since then, Elasticsearch has grown and its use in many cases. From simple search to collecting and analyzing to BI and visualization.
When searching for Elasticsearch, multiples keywords tend to rise to the surface. These keywords are:
- search engine
- Analytics database
- big data solution.
We clearly understand that Elasticsearch is a powerful tool with various capabilities.
What is Elasticsearch?
Elasticsearch is a search engine based on the Lucene library. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents.
That is the definition given by Wikipedia. From the above description, we clearly understand that Elasticsearch processes JSON documents. With Elasticsearch, we can store, search and analyze a massive volume of data and give back answer in nearly milliseconds.
How does Elasticsearch works?
Two majors keys concepts gravitate around Elasticsearch, and it's critical to understand them:
Documents: Elasticsearch has a structure based on documents, and each record has a JSON format and id associated with it.
Inverted index: Search engines work using inverted index mechanisms. Elasticsearch creates a table (inverted index) where we insert all unique terms collected from documents, and it also indicates the specific document where each word is present. As you can see in the image above, take from google image:
What is Elasticsearch used?
Many companies, such as Netflix, Uber, and Medium. Those companies use Elasticsearch or the Elastic Stack, where Elasticsearch is the significant component because it has various utilities and different use cases. We use Elasticsearch for :
- Logs analytics
- Infrastructure metrics and container monitoring
- Business analytics
- search (text..)
In this short article, we learned about:
- Introduction to ElasticSearch
- Usage of Elasticsearch