Elasticsearch

Search engine based on Apache Lucene From Wikipedia, the free encyclopedia

Elasticsearch is a source-available search engine developed by Elastic. It is based on Apache Lucene and provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents. Official clients are available in Java, C#, PHP, Python, Ruby, and other languages. According to the DB-Engines ranking, Elasticsearch is the most popular enterprise search engine.[2]

Original authorShay Banon
Initial release8 February 2010; 16 years ago (2010-02-08)
Stable release
9.x9.3.0 / 28 January 2026; 41 days ago (2026-01-28)[1]
8.x8.19.11 / 11 January 2026; 58 days ago (2026-01-11)[1]
7.x7.17.29 / 24 June 2025; 8 months ago (2025-06-24)[1]
Quick facts Original author, Developer ...
Elasticsearch
Original authorShay Banon
DeveloperElastic NV
Initial release8 February 2010; 16 years ago (2010-02-08)
Stable release
9.x9.3.0 / 28 January 2026; 41 days ago (2026-01-28)[1]
8.x8.19.11 / 11 January 2026; 58 days ago (2026-01-11)[1]
7.x7.17.29 / 24 June 2025; 8 months ago (2025-06-24)[1]
Written inJava
Operating systemCross-platform
TypeSearch and index
LicenseTriple-licensed Elastic License (proprietary; source-available), Server Side Public License (proprietary; source-available) and Affero General Public License (free and open-source)
Websitewww.elastic.co/elasticsearch/ Edit this on Wikidata
Repositorygithub.com/elastic/elasticsearch
Close

Elasticsearch is distributed and uses JSON documents stored in indices divided into shards, each of which may have replicas distributed across cluster nodes. It supports full-text search, faceted search, real-time search, and multitenancy. The software is developed alongside Logstash, Kibana, and Beats as part of the Elastic Stack (formerly the ELK Stack).

History

Shay Banon created the precursor to Elasticsearch, called Compass, in 2004.[3] Developing a third version of Compass, he concluded that a full rewrite was necessary to build a scalable, distributed search solution using JSON over HTTP as a common interface.[3] He released the first version of Elasticsearch in February 2010.[4]

Elastic NV was founded in 2012 to provide commercial services and products around Elasticsearch and related software. In June 2014, the company raised $70 million in a Series C funding round led by New Enterprise Associates, with additional funding from Benchmark Capital and Index Ventures, bringing total funding to $104 million.[5]

In March 2015, the company changed its name from Elasticsearch to Elastic and, through the acquisition of Found, launched a managed cloud offering later known as Elastic Cloud.[6] In November 2017, Elastic acquired the search startup Swiftype, whose technology became the basis for Elastic App Search and Elastic Site Search.[7] Elastic also formed partnerships with Google to offer Elastic Cloud on Google Cloud Platform and with Alibaba to offer Elasticsearch and Kibana on Alibaba Cloud.

In June 2018, Elastic filed for an initial public offering with an estimated valuation of between $1.5 and $3 billion.[8] On 5 October 2018, Elastic was listed on the New York Stock Exchange.[9]

Licensing changes

In January 2021, Elastic announced that starting with version 7.11, Elasticsearch and Kibana would be relicensed from Apache License 2.0 to a dual license under the Server Side Public License and the Elastic License, neither of which is recognised as an open-source license.[10][11] Elastic stated the change was a response to Amazon Web Services (AWS) offering Elasticsearch and Kibana as a service without what Elastic described as adequate collaboration.[11][12] Critics of the change noted that Elastic had previously promised never to alter the Apache 2.0 licensing of Elasticsearch, Kibana, Beats, and Logstash, and predicted the move would damage the ecosystem.[11]

AWS responded by announcing a fork of the projects to continue development under Apache License 2.0.[13] Other members of the Elasticsearch ecosystem, including Logz.io, CrateDB, and Aiven, also committed to supporting a fork.[14][15][16] Due to potential trademark conflicts with the name "Elasticsearch", AWS rebranded their fork as OpenSearch in April 2021.[17]

In August 2024, Elastic added the GNU Affero General Public License as a third licensing option for Elasticsearch starting with version 8.16.0.[18][19] This made the software available under a free and open-source license once again alongside the two source-available options.

Architecture and features

Elasticsearch is built on Apache Lucene and exposes Lucene's capabilities through a JSON and Java API. Documents are stored in indices, which are divided into primary shards; each shard may have zero or more replicas distributed across cluster nodes. Routing and rebalancing are handled automatically. Once an index has been created, the number of primary shards cannot be changed.[20]

The engine supports faceted search and percolation, a form of prospective search in which stored queries are matched against incoming documents rather than the reverse.[21] A gateway module handles long-term index persistence, allowing an index to be recovered after a node failure.[22] Real-time GET requests make Elasticsearch usable as a NoSQL datastore, though it does not support distributed transactions.[23]

In May 2019, Elastic made the core security features of the Elastic Stack available without charge, including TLS for encrypted communications, file and native realm authentication, and role-based access control for cluster APIs and indices.[24] The corresponding source code is available under the Elastic License.[25] Elasticsearch also offers SIEM[26] and machine learning capabilities[27] as part of its commercial offerings.

Official client libraries are maintained for Java,[28] C# (.NET),[29] PHP,[30] Python,[31] and Ruby,[32] among others.

Elastic Stack

Elasticsearch is developed alongside Logstash (a data collection and log-parsing engine), Kibana (an analytics and visualisation platform), and Beats (lightweight data shippers). The four products are designed for use together as the Elastic Stack.[33] The combination was previously known as the ELK Stack, an abbreviation of Elasticsearch, Logstash, and Kibana.

See also

References

Related Articles

Wikiwand AI