Elasticsearch

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Elasticsearch
Elasticsearch logo.svg
Original author(s)Shay Banon
Developer(s)Elastic NV
Initial release8 February 2010; 9 years ago (2010-02-08)
Stable release
7.2.0 / June 26, 2019; 19 days ago (2019-06-26)[1]
Repository Edit this at Wikidata
Written inJava
Operating systemCross-platform
TypeSearch and index
LicenseVarious (open-core model), e.g. Apache License 2.0 (partially; open source), Elastic License (commercial)
Websitewww.elastic.co/products/elasticsearch
Shay Banon talking about Elasticsearch at Berlin Buzzwords 2010

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. Elasticsearch is developed in Java. Following an open-core business model, parts of the software are licensed under various open-source licenses (mostly the Apache License)[2], while other parts[3] fall under the commercial (source-available) Elastic License. Official clients are available in Java, .NET (C#), PHP, Python, Apache Groovy, Ruby and many other languages.[4] According to the DB-Engines ranking, Elasticsearch is the most popular enterprise search engine followed by Apache Solr, also based on Lucene.[5]

History[edit]

Shay Banon created the precursor to Elasticsearch, called Compass, in 2004.[6] While thinking about the third version of Compass he realized that it would be necessary to rewrite big parts of Compass to "create a scalable search solution".[6] So he created "a solution built from the ground up to be distributed" and used a common interface, JSON over HTTP, suitable for programming languages other than Java as well.[6] Shay Banon released the first version of Elasticsearch in February 2010.[7]

Elastic NV was founded in 2012 to provide commercial services and products around Elasticsearch and related software.[8] In June 2014, the company announced raising $70 million in a Series C funding round, just 18 months after forming the company. The round was led by New Enterprise Associates (NEA). Additional funders include Benchmark Capital and Index Ventures. This round brings total funding to $104M.[9]

In March 2015, the company Elasticsearch changed their name to Elastic.[10]

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

Features[edit]

Elasticsearch can be used to search all kinds of documents. It provides scalable search, has near real-time search, and supports multitenancy.[4] "Elasticsearch is distributed, which means that indices can be divided into shards and each shard can have zero or more replicas. Each node hosts one or more shards, and acts as a coordinator to delegate operations to the correct shard(s). Rebalancing and routing are done automatically".[4] Related data is often stored in the same index, which consists of one or more primary shards, and zero or more replica shards. Once an index has been created, the number of primary shards cannot be changed.[13]

Elasticsearch is developed alongside a data collection and log-parsing engine called Logstash, an analytics and visualisation platform called Kibana, and Beats, a collection of lightweight data shippers. The four products are designed for use as an integrated solution, referred to as the "Elastic Stack" (formerly the "ELK stack").[14]

Elasticsearch uses Lucene and tries to make all its features available through the JSON and Java API. It supports facetting and percolating,[15][16] which can be useful for notifying if new documents match for registered queries.

Another feature is called "gateway" and handles the long-term persistence of the index;[17] for example, an index can be recovered from the gateway in the event of a server crash. Elasticsearch supports real-time GET requests, which makes it suitable as a NoSQL datastore,[18] but it lacks distributed transactions.[19]

On 20 May 2019, Elastic made the core security features of the Elastic Stack free, including TLS for encrypted communications, file and native realm for creating and managing users, and role-based access control for controlling user access to cluster APIs and indexes.[20]

Managed services[edit]

Developed from the Found acquisition by Elastic in 2015,[21] Elastic Cloud is a family of Elasticsearch-powered SaaS offerings which include the Elasticsearch Service, as well as Elastic App Search Service, and Elastic Site Search Service which were developed from Elastic’s acquisition of Swiftype.[22] In late 2017, Elastic formed partnerships with Google to offer Elastic Cloud in GCP, and Alibaba to offer Elasticsearch and Kibana in Alibaba Cloud.

Elasticsearch Service on Elastic Cloud is the official hosted and managed Elasticsearch and Kibana offering from the creators of the project since August 2018[23][24] Elasticsearch Service users can create secure deployments with partners, Google Cloud Platform (GCP)  and Alibaba Cloud.[25][26]

AWS offers Elasticsearch as a managed service since 2015.[27][28][29] Such managed services provide hosting, deployment, backup and other support.[30] Most managed services also include support for Kibana.[citation needed]

Elasticsearch is the basis of Pangeanic's contribution to the EU's Marie Curie research project "EXPERT"[31] called ActivaTM. Pangeanic built a bilingual database compatible with Computer-Assisted Translation tools, which could offer real-time access via API from a variety of tools. The project received further funding from the EU as the National and European Central Translation Memory project [32] under the Connecting Europe Facility (CEF) programme. NEC TM aims to centralise national translation assets in all the EU's Member States so countries can re-use bilingual translation data produced as a result of public procurement contracts.

Reported Elasticsearch data breaches due to misconfigurations[edit]

  • 2018-11-15 AWS Elasticsearch database belonging to VoxOx exposed tens of millions of text messages, including password reset links, two-factor codes, shipping notifications and more.[33]
  • 2018-11-27 Elasticsearch database belonging to Urban Massage exposed more than 309,000 user records, including names, email addresses and phone numbers.[34]
  • 2019-01-21 Elasticsearch database belonging to Youth-run agency AIESEC exposed over 4 million intern applications including the applicant’s name, gender, date of birth, and the reasons why the person was applying for the internship.[35]
  • 2019-01-12 Elasticsearch server belonging to do-it-yourself chain, B&Q exposed personal details of individuals caught or suspected of stealing goods from stores. [36][37]
  • 2019-01-23 Elasticsearch database belonging to Ascension Data and Analytics exposed 24 million financial and banking documents, representing tens of thousands of loans and mortgages from some of the biggest banks in the U.S.[38]

See also[edit]

References[edit]

  1. ^ Gal, Gil-ad (26 June 2019). "Elasticsearch 7.2.0 released". Elastic Blog. Retrieved 26 June 2019.
  2. ^ Open Source, Distributed, RESTful Search Engine. Contribute to elastic/elasticsearch development by creating an account on GitHub, elastic, 14 March 2019, retrieved 14 March 2019
  3. ^ "No, Elastic X-Pack is not going to be open source - according to Elastic themselves -". Flax.co.uk. 2 March 2018. Retrieved 14 March 2019.
  4. ^ a b c "Official Website". Elasticsearch.org. Retrieved 4 February 2014.
  5. ^ "DB-Engines Ranking - popularity ranking of search engines". db-engines.com. Retrieved 10 January 2016.
  6. ^ a b c Banon, Shay. "The Future of Compass & ElasticSearch".
  7. ^ Banon, Shay (8 February 2010). "You Know, for Search". Archived from the original on 16 January 2013.
  8. ^ "Immediate Insight from Data Matters". elastic.co. Retrieved 25 March 2015.
  9. ^ "ElasticSearch Scores $70M In Series C To Fund Growth Spurt". TechCrunch. AOL. Retrieved 25 March 2015.
  10. ^ "Elasticsearch Changes Name to Elastic to Reflect Wide Adoption Beyond Search". Elastic.co. Retrieved 19 October 2016.
  11. ^ Schleifer, Theodore (21 June 2018). "The IPOs keep coming: The search company Elastic has filed to go public". Recode. Retrieved 22 June 2018.
  12. ^ Banon, Shay (5 October 2018). "Ze Bell Has Rung: Thank You Users, Customers, and Partners". Elastic (NV). Retrieved 24 October 2018.
  13. ^ "How to monitor Elasticsearch performance".
  14. ^ "Elastic brings order to its product line with Elastic Stack". Social.techcrunch.com. Retrieved 1 April 2019.
  15. ^ "percolate at elasticsearch.org reference". Elasticsearch.org. Archived from the original on 2 October 2013. Retrieved 4 February 2014.
  16. ^ "Percolating" is a term peculiar to Elasticsearch. Percolating is a reverse search: instead of returning all the documents that match a search query, percolating returns all the (stored) search queries that match a document as their output. Nunn, Xavier; "Detecting data leaks in real time with a custom percolator", Serena Capital blogs, 2019-January-8
  17. ^ "elasticsearch Guide: Gateway". Elasticsearch.org. Retrieved 19 April 2013.
  18. ^ "Elasticsearch as database". Karussell.wordpress.com. Retrieved 4 February 2014.
  19. ^ "No transaction support". Elasticsearch-users.115913.n3.nabble.com. 8 July 2010. Retrieved 4 February 2014.
  20. ^ "Security for Elasticsearch is now free". Elastic Blog. 20 May 2019. Retrieved 17 June 2019.
  21. ^ Oliver, Andrew C. (10 March 2015). "Elasticsearch buys into search as a service, rebrands as 'Elastic'". InfoWorld.com. Retrieved 1 April 2019.
  22. ^ "Elastic acquires search startup Swiftype". Social.techcrunch.com. Retrieved 1 April 2019.
  23. ^ "Open Source Search & Analytics · Elasticsearch - Elastic". Elastic.co. Retrieved 22 April 2019.
  24. ^ "Elastic Cloud: Hosted Elasticsearch, Hosted Search | Elastic". Elastic.co. Retrieved 1 April 2019.
  25. ^ Yegulalp, Serdar (7 April 2017). "Google Cloud to host open source Elasticsearch". InfoWorld.com. Retrieved 1 April 2019.
  26. ^ "Alibaba Cloud to Offer Elasticsearch, Kibana, and X-Pack in China". Elastic.co. 13 October 2017. Retrieved 1 April 2019.
  27. ^ "New – Amazon Elasticsearch Service". Amazon Web Services. 1 October 2015. Retrieved 22 April 2019.
  28. ^ "Amazon Elasticsearch Service – Amazon Web Services (AWS)". Amazon Web Services, Inc. (in Latin). Retrieved 8 February 2019.
  29. ^ "Hosted Elasticsearch & Kibana on AWS". Elastic.co. Retrieved 16 October 2016.
  30. ^ "Elasticsearch Setup". Ctovision.com. Retrieved 16 October 2016.
  31. ^ "EXPERT (EXPloiting Empirical appRoaches to Translation" (PDF). Expert-itn.eu. Retrieved 13 February 2019.
  32. ^ "National and European Central Translation Memory NEC TM". Nec-tm.eu. Retrieved 13 February 2019.
  33. ^ Zack, Whittaker. "A leaky database of SMS text messages exposed password resets and two-factor codes". TechCrunch.com. Retrieved 24 January 2019.
  34. ^ Zack, Whittaker. "Urban Massage exposed a huge customer database, including sensitive comments on its creepy clients". TechCrunch.com. Retrieved 24 January 2019.
  35. ^ Zack, Whittaker. "Youth-run agency AIESEC exposed over 4 million intern applications". TechCrunch.com. Retrieved 24 January 2019.
  36. ^ "B&Q 'exposed data about store thieves'". BBC News. Retrieved 28 January 2019.
  37. ^ Lee Johnstone (24 January 2019). "When Security Fails, 70,000 Offender and Incident Logs Exposed". Ctrlbox Information Security. Ctrlbox Information Security. Retrieved 5 February 2019.
  38. ^ Zack, Whittaker. "Millions of bank loan and mortgage documents have leaked online". TechCrunch.com. Retrieved 24 January 2019.

External links[edit]