从弹性搜索集群的索引中获取所有文档,并将其编入另一个弹性搜索集群中

时间:2014-10-23 13:46:47

标签: elasticsearch indexing elasticsearch-bulk-api

我的目标是从ES群集的索引中获取所有文档,并将它们插入另一个保留相同元数据的ES群集中​​。

我查看了mget API来检索数据和Bulk API来插入它,但是这个Bulk API需要一个特殊的结构:

action_and_meta_data\n
optional_source\n
action_and_meta_data\n
optional_source\n

所以我的想法是在一个文件中检索我的EScluster1数据并重新安排它以满足Bulk API的结构并将其索引到EScluster2。

您是否看到更好和/或更快的方式继续进行?

1 个答案:

答案 0 :(得分:1)

elasticdump这样做。如果您想手动执行此操作,则需要使用scroll进行查询,然后使用bulk index进行查询。编写脚本并不难。使用弹性转储,您可以在不写入文件的情况下抽取数据。但是,当你有例如,它是有限的索引中的父/子关系。