Chapter 10. Index Management
We have seen how Elasticsearch makes it easy to start developing a new application without requiring any advance planning or setup. However, it doesn’t take long before you start wanting to fine-tune the indexing and search process to better suit your particular use case. Almost all of these customizations relate to the index, and the types that it contains. In this chapter, we introduce the APIs for managing indices and type mappings, and the most important settings.
Creating an Index
Until now, we have created a new index by simply indexing a document into it. The index is created with the default settings, and new fields are added to the type mapping by using dynamic mapping. Now we need more control over the process: we want to ensure that the index has been created with the appropriate number of primary shards, and that analyzers and mappings are set up before we index any data.
To do this, we have to create the index manually, passing in any settings or type mappings in the request body, as follows:
PUT/my_index{"settings":{...anysettings...},"mappings":{"type_one":{...anymappings...},"type_two":{...anymappings...},...}}
In fact, if you want to, you can prevent the automatic creation of indices by
adding the following setting to the config/elasticsearch.yml file on each
node:
action.auto_create_index:false
Note
Later, we discuss how you can use “Index Templates” to preconfigure automatically created indices. This ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access