Advantages¶
Fast Search
Elasticsearch is built on Lucene, so it does a great job at full-text search. Elasticsearch is also a near real-time search platform, which means that the delay between indexing a document and making it searchable is as short as one second. Therefore, Elasticsearch is ideal for time-critical use cases, such as security analysis and infrastructure monitoring.
Distributed Nature
Documents stored in Elasticsearch are distributed across containers (called shards), which can be replicated to provide redundant copies of data in case of hardware failure. The distributed nature of Elasticsearch allows it to scale to hundreds (or even thousands) of servers and process petabytes of data.
Rich Features
In addition to advantages in terms of speed, scalability, and elasticity, Elasticsearch also has a large number of powerful built-in features (such as data aggregation and index lifecycle management), which can facilitate users to store and search data more efficiently.
Simplified Data Acquisition, Visualization and Reporting
Elasticseach integrated Beats and Logstash, allowing users to easily process data before indexing it into Elasticsearch. Besides, Kibana not only provides real-time visualization of Elasticsearch data, but also provides user-friendly UI for users to quickly access data, such as application performance monitoring (APM), logs, and infrastructure metrics.
Multiple Programming Languages
Elasticsearch supports several programming languages:
- Java
- JavaScript (Node.js)
- Go
- .NET (C#)
- PHP
- Perl
- Python
- Ruby