IT Baza danych

Elasticsearch

Definicja #

Elasticsearch to dystrybuowana wyszukiwarka i silnik analityczny oparty na bibliotece Apache Lucene, rozwijany przez firmę Elastic. Przechowuje dane w formacie JSON jako dokumenty i udostępnia pełne REST API do indeksowania i wyszukiwania.

Kluczowe cechy Elasticsearch:

  • Full-text search — zaawansowane wyszukiwanie pełnotekstowe z analizą językową, tokenizacją, stemming i relevance scoring
  • Dystrybucja i skalowalność — dane automatycznie podzielone na shardy (odłamki) dystrybuowane po węzłach klastra; repliki zapewniają wysoką dostępność
  • JSON REST API — wszystkie operacje (indeksowanie, wyszukiwanie, agregacje) realizowane przez HTTP
  • Near real-time (NRT) — dokumenty dostępne do wyszukiwania niemal natychmiast po zaindeksowaniu (opóźnienie rzędu sekund)
  • Agregacje — potężny silnik analityczny do grupowania, statystyk, histogramów i pipeline'ów analitycznych
  • Query DSL — bogaty język zapytań JSON do filtrowania, sortowania i wyszukiwania złożonych warunków

Stos ELK (Elastic Stack):

  • Elasticsearch — przechowywanie i wyszukiwanie danych
  • Logstash — zbieranie, parsowanie i przesyłanie danych (pipeline ETL)
  • Kibana — wizualizacja danych i dashboardy w przeglądarce
  • Beats — lekkie agenty zbierające dane (Filebeat, Metricbeat)

Zastosowania #

Elasticsearch stosuje się do:

  • Wyszukiwania pełnotekstowego w aplikacjach — autouzupełnianie, wyszukiwanie produktów w e-commerce, wyszukiwanie dokumentów z relevance ranking
  • Centralizacji i analizy logów — zbieranie logów z mikroserwisów i aplikacji do jednego miejsca z ELK Stack
  • Monitoringu infrastruktury — metryki serwerów, alerting na podstawie anomalii w danych
  • Analizy bezpieczeństwa (SIEM) — wykrywanie zagrożeń, korelacja zdarzeń bezpieczeństwa
  • Analityki biznesowej w czasie rzeczywistym — agregacje na milionach rekordów z latencją poniżej sekundy

Ścieżka nauki #

Elasticsearch wymaga znajomości podstaw HTTP i formatu JSON. Warto zacząć od postawienia lokalnej instancji przez Docker.

Zacznij od:

  • Uruchomienie Elasticsearch lokalnie: docker run -p 9200:9200 elasticsearch:8.x
  • Podstawowe operacje REST: indeksowanie dokumentu (PUT/POST), pobieranie (GET), wyszukiwanie (POST /_search)
  • Query DSL: match, term, bool (must/should/filter), range
  • Mappings i typy danych: text (full-text), keyword (exact match), date, nested

Następnie poznaj:

  • Agregacje — terms, date_histogram, stats, pipeline aggregations
  • Stos ELK — konfiguracja Logstash i Kibana, tworzenie dashboardów
  • Administracja klastrem — shardy, repliki, cluster health, indeks policies (ILM)
  • Bezpieczeństwo — TLS, uwierzytelnienie użytkowników, role-based access control (RBAC)
  • Klienty programistyczne: oficjalne SDK dla Java, Python, .NET, JavaScript

FAQ #

Czym różni się Elasticsearch od relacyjnej bazy danych?
Relacyjna baza danych (SQL) przechowuje dane w tabelach i jest zoptymalizowana pod transakcje i spójność. Elasticsearch przechowuje dokumenty JSON i jest zoptymalizowany pod full-text search i agregacje analityczne. Elasticsearch nie gwarantuje ACID — nie zastępuje SQL, lecz uzupełnia go jako warstwa wyszukiwania.
Co to jest ELK Stack?
ELK Stack to trójka narzędzi: Elasticsearch (przechowywanie i wyszukiwanie), Logstash (zbieranie i parsowanie danych) i Kibana (wizualizacja). Dziś Elastic Stack obejmuje też Beats — lekkie agenty zbierające dane z serwerów.
Czy Elasticsearch jest darmowy?
Elasticsearch jest open-source na licencji Elastic License 2.0 (od wersji 7.11). Wersja podstawowa jest darmowa. Elastic Cloud (zarządzany hosting) jest płatny. Istnieje też fork OpenSearch (Amazon), rozwijany jako w pełni open-source pod licencją Apache 2.0.
Ile zarabia specjalista Elasticsearch?
Inżynier ze znajomością Elasticsearch i ELK Stack zarabia w Polsce od 12 000 do 22 000 zł brutto. Umiejętność jest szczególnie ceniona w rolach DevOps, SRE i Data Engineering.
Ostatnia aktualizacja:

Powiązane hasła

Technologie i biblioteki, które najczęściej pojawiają się razem z Elasticsearch w ogłoszeniach.

Cały słownik IT

Przeglądaj słownik IT alfabetycznie

Wybierz literę, aby zobaczyć wszystkie hasła zaczynające się od niej.