Managing indices
In the previous recipe we saw how to initialize a client to send calls to an ElasticSearch cluster. In this recipe, we will see how to manage indices via client calls.
Getting ready
You need a working ElasticSearch cluster and required packages of the Creating a client recipe of this chapter.
The full code of this recipe is in the chapter_11/indices_management.py
file.
How to do it...
In Python, managing the lifecycle of your indices is very easy, we need to perform the following steps:
- We initialize a client as follows:
import elasticsearch es = elasticsearch.Elasticsearch() index_name = "my_index"
- All the indices methods are available in the
client.indices
namespace. We can create and wait for the creation of an index as follows:es.indices.create(index_name) es.cluster.health(wait_for_status="yellow")
- We can close/open an index as follows:
es.indices.close(index_name) es.indices.open(index_name) es.cluster.health(wait_for_status="yellow")
- We can optimize...