_sourceElasticsearch keeps the original JSON document in a field called _source. The source field serves special purposes such as...
AggregationThe aggregations framework is a tool built in every Elasticsearch deployment. The different aggregation types: Bucket, Metric & Pipeline...
AliasIn Elasticsearch, an alias is a secondary name to refer to one or more indices. Aliases can be created and deleted dynamically using...
BulkElasticsearch bulk makes it possible to perform many write operations in a single API call, which increases indexing speed. Using bulk API...
Circuit BreakersElasticsearch has circuit breakers to deal with OutOfMemory errors that cause nodes to crash. Each breaker is used to...
ClientOfficial Elasticsearch clients are available for java, javascript, Perl, PHP, python, ruby and .NET. To avoid surprises, keep your client....
ClusterAn Elasticsearch cluster consists of a number of servers (nodes) working together as one to store data and respond to requests. It enables...
DELETEDELETE is an Elasticsearch API which removes a document from a specific index. It requires an index name and _id document in order to...
DeprecationTo find out which functions have been deprecated in Elasticsearch, you can use deprecation logs, deprecation API, read breaking pages...
DiscoveryDiscovery occurs when an Elasticsearch node starts, restarts or loses contact with the master node. In those cases the node needs to...
DiskThresholdElasticsearch uses several parameters to enable it to manage hard disk storage across the cluster, such as...
DocumentEach Elasticsearch document is a JSON structure, which is ultimately considered to be a series of key:value pairs. An example for creating...
Elasticsearch Curl DeleteThis guide will focus on how to use cURL to perform delete operations in Elasticsearch. It covers best practices, common issues & examples.
Elasticsearch Date FormatIn this article, we will discuss the best practices and customization options for date formats in Elasticsearch.
Elasticsearch Delete DocumentIn this guide, we will discuss the process of deleting documents in Elasticsearch as well as best practices for deleting documents.
Elasticsearch Insert DocumentThis guide will discuss best practices & performance optimization techniques for inserting documents into Elasticsearch. First, use the API...
Elasticsearch Python ExampleIn this guide, we'll walk through an example of using the Elasticsearch Python client, Elasticsearch-py, to index & search documents.
Elasticsearch Synonym Token FilterA tokenizer decides how Elasticsearch will take a set of words and divide it into separated terms called “tokens”. To work with synonyms...
Elasticsearch UpsertUpsert in Elasticsearch allows you to perform both update and insert actions in a single request. To perform an upsert operation...
FielddataIn Elasticsearch the term Fielddata is relevant when performing sorting and aggregations on text field. To set fielddata=true, you...
FiltersElasticsearch Filters apply conditions inside the query to narrow down the matching results. A filter clause can be used used in...
Flush, Translog and RefreshIn Elasticsearch, flush is the process of permanently storing data onto the disk for all of the operations that have been stored in memory.
IndexingIndexing is the process of adding or updating new documents to an Elasticsearch index. In its simplest form, you can index a document by...
LuceneElasticsearch Lucene or Apache Lucene is an open-source Java library used as a search engine. Elasticsearch is built on top of Lucene...
MappingMapping contains the properties of each field in the index. A common issue in Elasticsearch is an incorrectly defined mapping. Examples of...
MetadataElasticsearch metadata refers to additional information stored for each document using metadata fields. Metadata fields can be customized...
NodesThere are different types of nodes in Elasticsearch. Each has its own role and purpose. Master, coordinating and data nodes differ...
PersistentIn Elasticsearch, Persistent refers to cluster settings that persist across cluster restarts. This setting is used in Cluster Update API...
PluginsPlugins in Elasticsearch are used to extend the functionality of Elasticsearch. An Elasticsearch plugin is installed and removed using the...
QueueQueues in Elasticsearch exist in the context of Thread Pools. Queues are used to hold the pending requests for thread pools instead of...
RebalanceCluster rebalancing is the process by which an Elasticsearch cluster distributes data across the nodes. To force rebalance manually...
RecoveryIn Elasticsearch, recovery refers to the process of recovering an index or shard when something goes wrong. You can recover data by using...
Refresh IntervalElasticsearch requires a refresh operation to make indexed information available for search. You can set the refresh interval by...
ReindexReindex in Elasticsearch refers to copying existing data from a source index to a destination index. In some scenarios, the reindex API is...
ReplicaIn Elasticsearch there are two types of shards: the primary shard & the replica copy. Each replica is located on a different node to ensure...
ReplicationElasticsearch replication refers to storing a redundant copy of the data. Elasticsearch creates 1 primary shard with a replication factor...
RepositoryAn Elasticsearch repository needs to be registered using the _snapshot endpoint. The supported repository types are: S3, HDFS, Azure...
RestoreIn Elasticsearch, restore refers to a snapshot restore mechanism. To restore a cluster from the snapshot, an index, or selected indices...
RoutingIn Elasticsearch, routing refers to document routing. When you index a document, Elasticsearch will determine which shard will be used...
ScrollThe Elasticsearch scroll API is useful when a search returns a large set of results. Large search results are exhaustive for the system...
SearchTo 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...
SettingsElasticsearch settings can be configured on the cluster-level, node-level and index-level. Here's how to set up and optimize your settings...
ShardsThe number of shards is set when an index is created, and cannot be changed without reindexing. To handle unassigned Elasticsearch shards...
TaskA task is equivalent to an Elasticsearch operation, any request performed on an Elasticsearch cluster. The following commands are used...
TemplateAn Elasticsearch template falls into one of these categories: index templates or search templates. Examples of index templates include...
ThreadpoolElasticsearch threadpools are used to manage how requests are processed and to optimize the use of resources. The write threadpool...
UpgradeAn Elasticsearch upgrade of an existing cluster can be done in 2 ways: through a rolling upgrade or a full cluster restart. To upgrade...
VersionA version corresponds to the Elasticsearch built-in tracking system that tracks the changes in each document. By using _version...