gpt4 book ai didi

Elasticsearch reindex api - 无法复制所有文档

转载 作者:行者123 更新时间:2023-12-02 23:10:52 27 4
gpt4 key购买 nike

我已经设置了目标索引 new_dest_index在运行 _reindex 之前操作,包括设置映射、分片计数、副本等。

我运行了下面的 POST 命令来从 source_index 复制所有文件至 new_dest_index但它看起来像是在后台运行并且只复制了部分文档,而不是来自 source_index 的所有数据。 .

有人可以帮忙吗,如果有更好的方法可以从一个索引复制到另一个索引吗?

POST _reindex
{
"source": {
"index": "source_index"
},
"dest": {
"index": "new_dest_index"
}
}

最佳答案

我认为这是从一个索引复制到另一个索引的最佳方式。
reindex过程,如果我没记错的话,每次从一个索引复制大量 10,000 到另一个索引。您没有看到目标索引中的所有文档,因为任务尚未完成(在最好的情况下)。

您可以随时列出 reindex_cat/tasks 的任务喜欢:

GET _cat/tasks?v

如果您看到 reindex输出中的任务,它还没有完成,你必须再等一会儿。这些过程需要几分钟甚至几小时,具体取决于要复印的文档数量。

但是,如果您没有看到它列出并且一个索引中的文档与另一个索引中的复制文档数不匹配,则 reindex进程失败,必须再次运行。

当您想不受限制地复制所有文档时,最后一种情况令人失望。

避免这种情况的一种方法是 reindex with Queries .例如,您可以运行 reindex 1 月至 3 月所有文件的任务,4 月至 6 月文件的另一个任务,依此类推。

您可以运行多个 reindex任务不重叠。请注意这一点,因为任务过多可能会影响集群的性能或健康状况。

希望这是有帮助的! :)

关于Elasticsearch reindex api - 无法复制所有文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60664029/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com