ES索引重建–使用python elasticsearch
在ES集群的使用过程中,有时会遇到需要重新建立mapping的情况,通常,我们会选择建立一个新的索引,然后将数据从原索引迁移到新索引的方式来重建需要的mapping。
之前也有看到过通过Elasticsearch 的Java API 调用scan&scroll 和bulk 的方法,无奈Java 太久没有上手了~~
所以,找了一下,发现有Python的elasticsearch包针对这种Reindex作业提供了方法,相对Java 方法而言,Python 更为简单,仅需数行代码即可。
Python elasticsearch的详细文档链接:http://elasticsearch-py.readthedocs.io/en/latest/
一个简单的示例如下所示:
from elasticsearch import Elasticsearch
from elasticsearch import helpers
es_src=Elasticsearch(host_src) #原索引所在ES集群的host
es_des=Elasticsearch(host_des)