Basics

_source

Elasticsearch keeps the original JSON document in a field called _source. The source field serves special purposes such as...

Aggregation

The aggregations framework is a tool built in every Elasticsearch deployment. The different aggregation types: Bucket, Metric & Pipeline...

Alias

In Elasticsearch, an alias is a secondary name to refer to one or more indices. Aliases can be created and deleted dynamically using...

Bulk

Elasticsearch bulk makes it possible to perform many write operations in a single API call, which increases indexing speed. Using bulk API...

Cache: Node Request, Shard Data & Field Data Cache

Elasticsearch uses 3 types of caches to improve the efficiency of operation: node requests, shards and field data cache. It is possible to...

Circuit Breakers

Elasticsearch has circuit breakers to deal with OutOfMemory errors that cause nodes to crash. Each breaker is used to...

Client

Official Elasticsearch clients are available for java, javascript, Perl, PHP, python, ruby and .NET. To avoid surprises, keep your client....

Cluster

An Elasticsearch cluster consists of a number of servers (nodes) working together as one to store data and respond to requests. It enables...

DELETE

DELETE is an Elasticsearch API which removes a document from a specific index. It requires an index name and _id document in order to...

Deprecation

To find out which functions have been deprecated in Elasticsearch, you can use deprecation logs, deprecation API, read breaking pages...

Discovery

Discovery occurs when an Elasticsearch node starts, restarts or loses contact with the master node. In those cases the node needs to...

DiskThreshold

Elasticsearch uses several parameters to enable it to manage hard disk storage across the cluster, such as...

Document

Each Elasticsearch document is a JSON structure, which is ultimately considered to be a series of key:value pairs. An example for creating...

Fielddata

In Elasticsearch the term Fielddata is relevant when performing sorting and aggregations on text field. To set fielddata=true, you...

Filter

Elasticsearch Filters apply conditions inside the query to narrow down the matching results. A filter clause can be used used in...

Flush, Translog and Refresh

In Elasticsearch, flush is the process of permanently storing data onto the disk for all of the operations that have been stored in memory.

Index - How to create Elasticsearch Index and what it

How to create an Elasticsearch Index & what it is with a general overview - an index (plural: indices) contains a schema and can have

Indexing

Indexing is the process of adding or updating new documents to an Elasticsearch index. In its simplest form, you can index a document by...

Lucene

Elasticsearch Lucene or Apache Lucene is an open-source Java library used as a search engine. Elasticsearch is built on top of Lucene...

Mapping

Mapping contains the properties of each field in the index. A common issue in Elasticsearch is an incorrectly defined mapping. Examples of...

Metadata

Elasticsearch metadata refers to additional information stored for each document using metadata fields. Metadata fields can be customized...

Nodes

There are different types of nodes in Elasticsearch. Each has its own role and purpose. Master, coordinating and data nodes differ...

Persistent

In Elasticsearch, Persistent refers to cluster settings that persist across cluster restarts. This setting is used in Cluster Update API...

Plugins

Plugins in Elasticsearch are used to extend the functionality of Elasticsearch. An Elasticsearch plugin is installed and removed using the...

Queue

Queues in Elasticsearch exist in the context of Thread Pools. Queues are used to hold the pending requests for thread pools instead of...

Rebalance

Cluster rebalancing is the process by which an Elasticsearch cluster distributes data across the nodes. To force rebalance manually...

Recovery

In Elasticsearch, recovery refers to the process of recovering an index or shard when something goes wrong. You can recover data by using...

Refresh Interval

Elasticsearch requires a refresh operation to make indexed information available for search. You can set the refresh interval by...

Reindex

Reindex is the concept of copying existing data from a source index to a destination index. In some scenarios, the reindex API is...

Replica

In Elasticsearch there are two types of shards: the primary shard & the replica copy. Each replica is located on a different node to ensure...

Replication

Elasticsearch replication refers to storing a redundant copy of the data. Elasticsearch creates 1 primary shard with a replication factor...

Repository

The Elasticsearch snapshot provides a backup mechanism that takes the current state and data in the cluster and saves it to a repository.

Restore

In Elasticsearch, restore refers to a snapshot restore mechanism. To restore a cluster from the snapshot, an index, or selected indices...

Routing

In Elasticsearch, routing refers to document routing. When you index a document, Elasticsearch will determine which shard will be used...

Scroll

The Elasticsearch scroll API is useful when a search returns a large set of results. Large search results are exhaustive for the system...

Search

To search in Elasticsearch, send a GET request to the _search endpoint in the search API. In the query phase and the fetch phase there are...

Settings

Elasticsearch settings can be configured on the cluster-level, node-level and index-level. Here's how to set up and optimize your settings...

Shards

The number of shards is set when an index is created, and cannot be changed without reindexing. To handle unassigned Elasticsearch shards...

Task

A task is equivalent to an Elasticsearch operation, any request performed on an Elasticsearch cluster. The following commands are used...

Template

An Elasticsearch template falls into one of these categories: index templates or search templates. Examples of index templates include...

Threadpool

Elasticsearch threadpools are used to manage how requests are processed and to optimize the use of resources. The write threadpool...

Upgrade

An Elasticsearch upgrade of an existing cluster can be done in 2 ways: through a rolling upgrade or a full cluster restart. To upgrade...

Version

A version corresponds to the Elasticsearch built-in tracking system that tracks the changes in each document with the purpose of...

Skip to content