ELASTIC

Învață Elasticsearch & OpenSearch: comenzi explicate cu exemple

91 de comenzi 26 de categorii Comunitate & Q&A

Elasticsearch (alături de bifurcația sa open-source menținută de Linux Foundation și AWS, OpenSearch) este cel mai puternic și răspândit motor de căutare full-text distribuit și analiză de date în timp real din lume. Construit pe baza renumitei biblioteci Apache Lucene, Elasticsearch este capabil să indexeze și să caute prin miliarde de documente nestructurate în câteva milisecunde.

De la casetele de căutare inteligente ale marilor platforme de e-commerce (cu toleranță la greșeli de tipar, auto-completare și clasificare semantică a relevanței cu algoritmul BM25), până la analiza masivă de loguri de securitate și metrici de infrastructură (stiva ELK: Elasticsearch, Logstash, Kibana), Elasticsearch combină căutarea lingvistică avansată cu analize agregate de mare adâncime.

Mecanismul Indexului Inversat (Inverted Index) în Lucene
# Documente de Intrare:
# Doc 1: "Programare modernă în limbajul Python"
# Doc 2: "Curs intensiv de Python și React"

# Analiză Text (Tokenizare, Lowercase, Stemming):
# Doc 1 ──► ['programare', 'modern', 'limbaj', 'python']
# Doc 2 ──► ['curs', 'intensiv', 'python', 'react']

# Indexul Inversat Rezultat (Harta cuvânt -> ID-uri documente):
#   'curs'        ──► [Doc 2]
#   'limbaj'      ──► [Doc 1]
#   'modern'      ──► [Doc 1]
#   'programare'  ──► [Doc 1]
#   'python'      ──► [Doc 1, Doc 2]   <-- Căutarea 'python' găsește ambele instantaneu!
#   'react'       ──► [Doc 2]

Pilonii Tehnologici ai Elasticsearch & OpenSearch

Concept Fundamental Mecanism Tehnic Rol în Producție
Indexul Inversat Structură de date binară optimizată ce mapează fiecare cuvânt unic către documentele în care apare. Căutare full-text instantanee fără scanarea secvențială a textului pe disc.
Scoring BM25 Algoritm matematic probabilistic de clasificare a relevanței bazat pe frecvența termenilor (TF-IDF modern). Returnează cele mai relevante rezultate primele, penalizând cuvintele comune și documentele redundante.
Query DSL Limbaj declarativ bogat de interogare în format JSON (bool, match, term, fuzzy). Permite compunerea de căutări complexe cu filtre exacte, căutare geografică și semantică.
Sharding Distribuit Fiecare index este divizat în bucăți (Shards) distribuite automat pe nodurile fizice ale clusterului. Scalare orizontală automată și redundanță prin replici de date (*Replica Shards*).
Interogare REST Avansată cu Query DSL
POST /articles/_search
{
  "query": {
    "bool": {
      "must": [
        { "match": { "content": { "query": "arhitectură microservicii", "fuzziness": "AUTO" } } }
      ],
      "filter": [
        { "term": { "status": "PUBLISHED" } },
        { "range": { "publishedAt": { "gte": "2026-01-01" } } }
      ]
    }
  },
  "highlight": {
    "fields": { "content": {} }
  },
  "size": 10
}

Arhitectură & Lucene 1 comandă

cluster 2 comenzi

Query DSL & Căutare 1 comandă

Analiză Text & NLP 1 comandă

index 3 comenzi

Agregări & Analytics 1 comandă

aggregations 2 comenzi

Căutare Semantică și AI 1 comandă

Arhitectură și Întreținere 1 comandă

Interfață și Căutare 1 comandă

Performanță și Interogări 1 comandă

Căutare Geospațială 1 comandă

Procesare Date Ingest 1 comandă

Infrastructură și Scalare 1 comandă

Securitate Enterprise 1 comandă

Compact and Aligned Text (Cat APIs) 7 comenzi

Gestiune Cluster și Monitorizare de Sistem 5 comenzi

Index Management și Operațiuni de Date 14 comenzi

Full-Text Search Queries 6 comenzi

Term-Level Queries 5 comenzi

Compound Queries și Arhitectură Bool 6 comenzi

Agregări de Date și Analitică 7 comenzi

Analizatori, Tokenizers și Procesare Text 7 comenzi

Căutare Vectorială și AI Semantic (kNN & ELSER) 5 comenzi

Ciclul de Viață al Datelor (ILM) și Backup/Restore 5 comenzi

Index complet de API-uri, query DSL și concepte Elasticsearch & OpenSearch

Consultați lista completă a endpointurilor REST (_cat, _bulk, _search), a operatorilor Query DSL, a analizatoarelor lexicale, a agregărilor analitice și a capabilităților de căutare vectorială (kNN/ELSER):

Agregări & Analytics

API / Concept / Query Descriere și Aplicabilitate Tehnică
aggregations-metrics-bucketing Metrici, Bucketing (Terms, Date Histogram) și Generarea de Dashboard-uri

Agregări de Date și Analitică

API / Concept / Query Descriere și Aplicabilitate Tehnică
aggs-cardinality Numărarea Valorilor Unice (HyperLogLog++)
aggs-composite Paginarea Masivă a Agregărilor
aggs-metric-avg-sum Agregări Metrice Fundamentale
aggs-nested Agregarea Obiectelor Îmbricate
aggs-range Segmentarea pe Intervale Numerice
aggs-stats stats & extended_stats în Elasticsearch
aggs-top-hits Extragerea Celor Mai Relevante Documente per Bucket

Analizatori, Tokenizers și Procesare Text

API / Concept / Query Descriere și Aplicabilitate Tehnică
analyze-api Testarea Analizatorilor de Text
custom-analyzer Compunerea unui Analizator Propriu
keyword-analyzer keyword analyzer în Elasticsearch
standard-analyzer standard analyzer în Elasticsearch
stemmer-stop-filters stemmer & stop token filters în Elasticsearch
synonym-token-filter synonym token filter în Elasticsearch
whitespace-analyzer whitespace analyzer în Elasticsearch

Analiză Text & NLP

API / Concept / Query Descriere și Aplicabilitate Tehnică
analyzers-tokenizers-stemming Analyzers, Tokenizers, Token Filters, Stopwords și Stemming în Limba Română

Arhitectură & Lucene

API / Concept / Query Descriere și Aplicabilitate Tehnică
inverted-index-lucene-architecture Indexul Inversat (Inverted Index), Segmente Lucene și Sharding

Arhitectură și Întreținere

API / Concept / Query Descriere și Aplicabilitate Tehnică
ilm-lifecycle-management Politici Hot, Warm, Cold și Frozen

Ciclul de Viață al Datelor (ILM) și Backup/Restore

API / Concept / Query Descriere și Aplicabilitate Tehnică
create-snapshot Crearea unui Snapshot
get-all-snapshots Verificarea Catalogului de Backup-uri
ilm-rollover Rotația Indecșilor
restore-snapshot Restaurarea Datelor
snapshot-repository Înregistrarea Depozitelor de Backup

Compact and Aligned Text (Cat APIs)

API / Concept / Query Descriere și Aplicabilitate Tehnică
cat-aliases Vizualizarea Alias-urilor de Index
cat-allocation Utilizarea Spațiului de Disc
cat-health Starea de Sănătate în Format Tabular
cat-nodes Monitorizarea Nodurilor din Cluster
cat-recovery Monitorizarea Sincronizării Shards
cat-shards Distribuția Partițiilor Shards pe Noduri
cat-tasks Monitorizarea Operațiunilor Asincrone

Compound Queries și Arhitectură Bool

API / Concept / Query Descriere și Aplicabilitate Tehnică
query-bool-filter Filtrare Fără Calcul de Scor (Cacheable)
query-bool-must-not Excluderea Documentelor din Rezultate
query-bool-should Condiții Opționale și Creștere de Scor
query-boosting Penalizarea Rezultatelor Fără Excludere
query-constant-score Atribuirea unui Scor Fix
query-dis-max Cel Mai Bun Câmp Câștigă

Căutare Geospațială

API / Concept / Query Descriere și Aplicabilitate Tehnică
geospatial-geo-point-distance geo_point, geo_shape și Distanțe

Căutare Semantică și AI

API / Concept / Query Descriere și Aplicabilitate Tehnică
dense-vector-knn-semantic dense_vector, kNN și Căutare Hibridă

Căutare Vectorială și AI Semantic (kNN & ELSER)

API / Concept / Query Descriere și Aplicabilitate Tehnică
inference-processor AI în Pipeline-urile de Ingestie
knn-search-query Căutare Semantică cu k-Nearest Neighbors
reciprocal-rank-fusion-rrf Căutare Hibridă
similarity-metrics Cosine, L2, Dot Product
text-expansion-elser Căutare Semantică Sparse

Full-Text Search Queries

API / Concept / Query Descriere și Aplicabilitate Tehnică
intervals-query Căutare de Proximitate Avansată
match-bool-prefix Autocompletare cu Căutare Booleană
query-match-phrase Căutare de Fraze Exacte
query-match-phrase-prefix Căutare As-You-Type Simplă
query-string Sintaxa Avansată Lucene
simple-query-string Căutare Sigură pentru Utilizatori Finali

Gestiune Cluster și Monitorizare de Sistem

API / Concept / Query Descriere și Aplicabilitate Tehnică
cluster-reroute Redistribuirea Manuală a Shard-urilor
cluster-settings Reconfigurarea Dinamică a Clusterului
cluster-state Starea Globală de Consens a Clusterului
cluster-stats Metrici Agregate de Performanță
nodes-reload-secure-settings Reîncărcarea Keystore-ului

Index Management și Operațiuni de Date

API / Concept / Query Descriere și Aplicabilitate Tehnică
delete-by-query Ștergere în Masă pe Filtru
delete-doc-by-id Ștergerea Documentelor
delete-index Ștergerea Indecșilor
get-doc-by-id Extragerea Documentelor după ID
index-aliases Rotația Atomică a Alias-urilor
index-doc-post Crearea Documentelor cu ID Automat
index-doc-put Indexare Idempotentă cu ID Explicit
index-flush Sincronizarea pe Disc (fsync)
index-refresh Vizibilitatea Documentelor
index-settings Setările Indexului
index-shrink-split Redimensionarea Shard-urilor
reindex-api Migrarea Datelor între Indecși
update-by-query Modificare în Masă
update-doc-api Actualizare Parțială

Infrastructură și Scalare

API / Concept / Query Descriere și Aplicabilitate Tehnică
cluster-node-roles Master, Data și Ingest

Interfață și Căutare

API / Concept / Query Descriere și Aplicabilitate Tehnică
search-as-you-type-suggester search_as_you_type și Completion Suggester

Performanță și Interogări

API / Concept / Query Descriere și Aplicabilitate Tehnică
search-after-point-in-time search_after și Point in Time (PIT)

Procesare Date Ingest

API / Concept / Query Descriere și Aplicabilitate Tehnică
ingest-pipelines-grok Procesori Grok, Date și Set (_ingest)

Query DSL & Căutare

API / Concept / Query Descriere și Aplicabilitate Tehnică
query-dsl-bool-fuzzy-search Interogări Bool (must, filter, should), Căutare Fuzzy și Relevanță BM25

Securitate Enterprise

API / Concept / Query Descriere și Aplicabilitate Tehnică
securitate-rbac-tls Utilizatori, Roluri și TLS

Term-Level Queries

API / Concept / Query Descriere și Aplicabilitate Tehnică
query-exists Verificarea Existenței Câmpurilor
query-fuzzy Toleranță la Greșeli de Tipar (Levenshtein)
query-ids Filtrare Rapidă pe Tablou de ID-uri
query-prefix Căutare pe Baza Prefixului
query-wildcard Căutare cu Caractere Înlocuitoare

aggregations

API / Concept / Query Descriere și Aplicabilitate Tehnică
aggs-date-histogram GET /_search – aggs (date_histogram)
aggs-terms GET /_search – aggs (terms)

cluster

API / Concept / Query Descriere și Aplicabilitate Tehnică
cat-indices GET /_cat/indices
cluster-health GET /_cluster/health

index

API / Concept / Query Descriere și Aplicabilitate Tehnică
bulk-api POST /_bulk
create-index PUT /
put-mapping PUT //_mapping

search

API / Concept / Query Descriere și Aplicabilitate Tehnică
query-bool GET /_search – bool query
query-match GET /_search – match
query-multi-match GET /_search – multi_match
query-range GET /_search – range query
query-term GET /_search – term & terms
Comunitate & Schimb de cunoștințe

Discuții, Întrebări & Coduri Elasticsearch & OpenSearch

Ai o întrebare legată de Elasticsearch & OpenSearch, cauți o soluție sau vrei să împărtășești un fragment util de cod? Trimite mai jos contribuția ta.

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.