Elasticsearch – oprogramowanie komputerowe służące do wyszukiwania informacji stworzone przez Shaya Banona z firmy Elastic NV(inne języki) w roku 2010. Jako główny silnik wyszukiwania, system Elasticsearch wykorzystuje bibliotekę Apache Lucene. Z tego m.in. powodu system Elasticsearch jest często porównywany do platformy o podobnych funkcjach i zastosowaniach Apache Solr.
Wiele elementów systemu Elasticsearch jest dostępnych w postaci otwartych źródeł na serwisie GitHub.
Według serwisu DB-engines(inne języki), Elasticsearch jest najpopularniejszym silnikiem wyszukiwania na świecie.
Struktura oprogramowania
Elasticsearch jest w istocie grupą systemów, które składają się na tzw. „elastyczny stos” (ang.Elastic Stack, ELK Stack):
Elasticsearch – pod tą nazwą rozumie się centralny serwer indeksowania i wyszukiwania danych. Interfejsem komunikacji z serwerem jest protokół HTTP, za pomocą którego można wykonywać operację dodawania jak i wyszukiwania danych (możliwość wyszukiwania jest możliwa właściwie od razu po dodaniu/zindeksowaniu danych)
Narzędzie Kibana – narzędzie służące do wizualizacji danych (w tym wizualizacji graficznej)
Rodzina narzędzi „beat” – narzędzia ułatwiające dodawanie do systemu Elasticsearch danych o różnym pochodzeniu, np. danych z plików tekstowych (narzędzie Filebeat), informacji o działaniu serwisu (Heartbeat) czy danych na temat pakietów przesyłanych w sieci (Packetbeat).
Użycie
Do głównych zastosowań platformy Elasticsearch należą:
Zbieranie i analiza logów,
Zbieranie, łączenie i analiza danych dostępnych publicznie,
Pełnotekstowe wyszukiwanie tekstu,
Zbieranie i analiza danych z pomiarów,
Wizualizacja danych.
Użytkownikami platformy Elasticsearch są m.in.: Wikipedia, Github, NY Times, Facebook, Engadget, Live Chat, SoftBank, Xoom i eBay.