我有以下两个es索引:
index1 = {
"id": 1,
"name": "fred",
"shared_id": 77
}
index2 = {
"id": 89,
"FacebookID": 9288347,
"shared_id": 77
}
我想将这两个索引合并到第三个索引中:
index3 = {
"index1.id": 1,
"index2.id": 89,
"shared_id": 77,
"FacebookID": 9288347,
}
换句话说,具有sharedID的所有对象将合并到具有所有现有属性的第三个对象中。这样做的高效方法是什么?我目前的想法是下载两个对象中的所有数据,并使用Java或C ++进行合并/上传。有没有更好的方法来做到这一点,也许是ES本身的原生代码?我估计每个索引有几百万个对象。
我发现了这一点,这表明最佳解决方案是同时搜索两个索引或手动加入它们:http://elasticsearch-users.115913.n3.nabble.com/Merging-Two-Indexes-td4021708.html。