What is Elasticsearch?
Elasticsearch is a distributed search and analytics engine built on Apache Lucene. Since its release in 2010, Elasticsearch has quickly become the most popular search engine and is commonly used for log analytics, full-text search, security intelligence, business analytics, and operational intelligence use cases.
On January 21, 2021, Elastic NV announced that they would change their software licensing strategy and not release new versions of Elasticsearch and Kibana under the permissive Apache License, Version 2.0 (ALv2) license. Instead, new versions of the software will be offered under the Elastic license, with source code available under the Elastic License or SSPL. These licenses are not open source and do not offer users the same freedoms. To ensure that the open-source community and our customers continue to have a secure, high-quality, fully open-source search and analytics suite, we introduced the OpenSearch project, a community-driven, ALv2 licensed fork of open-source Elasticsearch and Kibana.
How does Elasticsearch work?
You can send data in the form of JSON documents to Elasticsearch using the API or ingestion tools such as Logstash and Amazon Data Firehose. Elasticsearch automatically stores the original document and adds a searchable reference to the document in the cluster’s index. You can then search and retrieve the document using the Elasticsearch API. You can also use Kibana, a visualization tool, with Elasticsearch to visualize your data and build interactive dashboards.
Elasticsearch benefits
Fast time-to-value
Elasticsearch offers simple REST-based APIs, a simple HTTP interface, and uses schema-free JSON documents, making it easy to get started and quickly build applications for various use cases.
High performance
The distributed nature of Elasticsearch enables it to process large volumes of data in parallel, quickly finding the best matches for your queries.
Complimentary tooling and plugins
Elasticsearch comes integrated with Kibana, a popular visualization and reporting tool. It also offers integration with Beats and Logstash, helping you easily transform source data and load it into your Elasticsearch cluster. You can also use various open-source Elasticsearch plugins such as language analyzers and suggesters to add rich functionality to your applications.
Near real-time operations
Elasticsearch operations such as reading or writing data usually take less than a second to complete. This lets you use Elasticsearch for near real-time use cases such as application monitoring and anomaly detection.
Easy application development
Elasticsearch provides support for various languages including Java, Python, PHP, JavaScript, Node.js, Ruby, and many more.
Getting started with Elasticsearch on AWS
Managing and scaling Elasticsearch can be difficult and requires expertise in Elasticsearch setup and configuration. To make it easy for you to run open-source Elasticsearch, AWS offers Amazon OpenSearch Service to perform interactive log analytics, real-time application monitoring, website search, and more.
To learn more about OpenSearch and the ways to operationalize it, read What Is OpenSearch?
OpenSearch includes certain Apache-licensed Elasticsearch code from Elasticsearch B.V. and other source code. Elasticsearch B.V. is not the source of that other source code. ELASTICSEARCH is a registered trademark of Elasticsearch B.V.
Additional resources
Amazon OpenSearch Service pricing
Getting started with Amazon OpenSearch Service