Warming up
Sometimes, there may be a need to prepare Elasticsearch in order to handle your queries. Maybe it's because you heavily rely on the field data cache and you want it to be loaded before your production queries arrive or maybe you want to warm up your operating system's I/O cache. Whatever the reason, Elasticsearch allows us to define the warming queries for our types and indices.
Defining a new warming query
A warming query is nothing more than the usual query stored in a special index called _warmer
in Elasticsearch. Let's assume that we have the following query that we want to use for warming up:
{ "query" : { "match_all" : {} }, "facets" : { "warming_facet" : { "terms" : { "field" : "tags" } } } }
To store the preceding query as a warming query for our library
index, we will run the following command:
curl -XPUT 'localhost:9200/library/_warmer/tags_warming_query' -d '{ "query" : { "match_all" : {} }, "facets" : { "warming_facet...