Elasticsearch Engineering – Digest

The short companion to Elasticsearch Engineering: a glossary, then the facts worth memorising for the Elastic Certified Engineer exam (Elasticsearch 9.3), domain by domain. Use it for revision; go back to the full guide for explanations, examples and doc links.


A. Glossary

TermMeaning (one line)
AliasA secondary name pointing to one or more indices or data streams; can filter, route and have one write index
Allocation (shard)The master's decision about which node holds each shard copy, governed by deciders
Allocation awarenessSpreads shard copies across node attributes (zone, rack); forced awareness refuses to overload surviving zones
Allocation explain APIGET _cluster/allocation/explain: says why a shard is (un)assigned
AnalyzerChar filters → tokenizer → token filters; turns text into terms at index and search time
API keyCredential with its own (restricted) privileges; Authorization: ApiKey <encoded>
Auto-follow patternCCR rule that automatically follows new leader indices matching patterns
Bool queryCompound query with must, should, filter, must_not
Bootstrap checksStartup checks enforced in production mode (heap, file descriptors, vm.max_map_count, memory lock…)
Bucket aggregationGroups documents into buckets (terms, date_histogram, range, filters, composite…)
Bulk APINDJSON batch of index/create/update/delete actions in one request
CCRCross-cluster replication: read-only follower indices pull changes from leader indices on a remote cluster
CCSCross-cluster search: query remote_alias:index from the local cluster
Classic streamA Streams-managed view over an existing data stream (no migration)
Cluster stateMetadata (indices, mappings, settings, routing table) managed by the elected master
Component templateReusable settings/mappings/aliases block referenced by index templates
Composable index template_index_template: patterns + priority + composed_of + own template; can create data streams
Coordinating nodeThe node receiving a request; fans it out and merges results (a node with roles: [] does only this)
copy_toCopies a field's value into another field at index time
Cross-cluster API keyAPI key created on the remote (/_security/cross_cluster/api_key) that scopes CCS/CCR access
Data streamAppend-only name over hidden backing indices; needs @timestamp and a template with data_stream: {}
Data stream lifecycle (DSL)Simpler alternative to ILM for data streams: retention (+ downsampling)
Data tierNode role groups data_hot/warm/cold/frozen/content; placement via _tier_preference
Dense vectorFixed-length float embedding; searched with knn (HNSW)
DissectDelimiter-based parsing (faster, simpler than grok)
DLS / FLSDocument-level security (role query) / field-level security (field_security.grant/except)
Doc valuesOn-disk columnar structure used for sorting, aggregations and scripts
Dynamic mappingAuto-mapping of unknown fields; controlled by dynamic: true/false/strict/runtime
Dynamic templateRule mapping new fields by detected type, name or path; first match wins
ELSERElastic Learned Sparse EncodeR: Elastic's sparse-embedding model for semantic search
Enrich policy / processorLookup table built from a source index (_execute) and applied at ingest
ES|QLPiped query language: FROM … | WHERE … | EVAL … | STATS … BY … | SORT … | LIMIT …
Failure storePer-data-stream store that keeps documents that failed ingestion (<ds>::failures)
Filter contextYes/no matching with no scoring, cacheable (filter, must_not)
FlattenedMaps an entire object as one field of keywords (avoids mapping explosion)
Flood-stage watermark95% disk: indices on that node get read_only_allow_delete
Follower / leader indexCCR copy (read-only) and its source
GrokRegex-based parsing with named patterns (%{IP:client.ip})
Health reportGET _health_report: indicator-based health with diagnoses
Hybrid searchCombining lexical (BM25) and semantic results, e.g. with an RRF retriever
ILMIndex lifecycle management: hot → warm → cold → frozen → delete phases with actions
IndexLogical collection of documents with one mapping and settings, split into shards
Index modestandard, logsdb, time_series (TSDS), lookup
Inference endpoint_inference/<task>/<id>: a configured model/service used to create embeddings
Ingest pipelineOrdered processors that transform documents before indexing
Keystoreelasticsearch-keystore: encrypted store for secure settings
kNNk-nearest-neighbour vector search (knn section or query)
LOOKUP JOINES|QL join against an index with index.mode: lookup
MappingSchema of an index: fields, types, analyzers, parameters
Master-eligible nodeCan be elected master; production uses 3
Metric aggregationComputes values (avg, sum, cardinality, percentiles, stats, top_hits…)
Multi-fieldSame value indexed in several ways (fields: { raw: keyword })
NestedField type keeping array-of-object members as separate hidden docs; needs nested query/agg
NormalizerAnalyzer-like chain for keyword fields (no tokenizer): lowercase, asciifolding
Pipeline aggregationAggregation over other aggregations' outputs (derivative, bucket_selector, max_bucket…)
Point in time (PIT)Frozen view of indices for consistent deep pagination with search_after
Primary / replica shardThe original / copy of a shard; never on the same node
Query contextScored matching ("how well"): must, should
RealmAuthentication source: native, file, LDAP, AD, SAML, OIDC, PKI, Kerberos, JWT
RefreshMakes recent writes searchable (default 1s)
ReindexCopies documents from a source to a destination index (optionally with query/script/pipeline)
Remote clusterNamed connection (sniff or proxy mode; API key on port 9443, or certificate) used by CCS/CCR
Reroute processorIngest processor sending a doc to another data stream
RetrieverComposable search building block: standard, knn, rrf, linear, text_similarity_reranker
Role / role mappingNamed bundle of privileges / rule assigning roles to externally authenticated users
RolloverCreating a new write index when conditions (age, size, docs) are met
RRFReciprocal Rank Fusion: merges ranked lists without score normalisation
Runtime fieldField computed at query time from a script; no reindex needed
search_afterCursor-based deep pagination using the last hit's sort values
Searchable snapshotIndex mounted from a snapshot repository (fully mounted = cold, partially = frozen)
SegmentImmutable Lucene sub-index inside a shard; merged over time
semantic_textField type that auto-chunks and embeds text through an inference endpoint
Service accountBuilt-in identity for Elastic services (e.g. elastic/kibana) using service tokens
ShardA Lucene index holding part of an Elasticsearch index
SLMSnapshot lifecycle management: scheduled snapshots with retention
SnapshotIncremental backup of indices or cluster state into a repository
Sparse vectorToken → weight embedding (e.g. ELSER)
StreamsKibana feature to process, partition, map, retain and monitor log data from one UI/API
Synonyms API_synonyms/<set>: manage synonym sets usable by updateable search-time analyzers
Term-level queryExact, non-analysed matching (term, terms, range, exists, prefix…)
TranslogPer-shard write-ahead log for durability between flushes
Update By QueryUpdates matching docs in place (script or pipeline)
Watermarks (disk)Low 85% / high 90% / flood 95%
Wired streamStreams-managed hierarchy rooted at logs (9.2–9.3) with partitioning and inheritance

B. Key things to remember

0. Exam mechanics

1. Architecture

2. Data Management

3. Ingestion & Processing

4. Searching Data

5. Cluster Management

6. Security & Access Control


C. Ten-second API recall

NeedAPI
Health & diagnosis_cluster/health, _health_report, _cat/shards, _cluster/allocation/explain, _cluster/reroute?retry_failed=true
Templates_component_template, _index_template, _index_template/_simulate_index/<n>
Data streams_data_stream/<n>, <ds>/_rollover, <ds>::failures, _data_stream/<n>/_lifecycle
ILM_ilm/policy/<p>, <idx>/_ilm/explain, <idx>/_ilm/retry
AliasesPOST _aliases {actions:[add/remove/remove_index]}
Mapping & analysis<idx>/_mapping, <idx>/_analyze, _synonyms/<set>
Move data_reindex, <idx>/_update_by_query, <idx>/_delete_by_query, _tasks/<id>
Pipelines_ingest/pipeline/<p>, …/_simulate?verbose, _ingest/_simulate, _enrich/policy/<p>/_execute
Search<idx>/_search, _async_search, <idx>/_pit, _query (ES|QL), _resolve/cluster/<pattern>
Semantic_inference/<task>/<id>, semantic_text, semantic query, rrf retriever
Snapshots_snapshot/<repo>, _snapshot/<repo>/<snap>/_restore, _slm/policy/<p>/_execute
Remote / CCR_remote/info, _security/cross_cluster/api_key, <f>/_ccr/follow, _ccr/auto_follow/<n>, <f>/_ccr/unfollow
Security_security/role/<r>, _security/user/<u>, _security/api_key, _security/role_mapping/<m>, _security/_authenticate, _security/user/_has_privileges

Revision #1
Created 28 September 2026 14:29:01 by N8N
Updated 28 September 2026 14:29:01 by N8N