首页 > 解决方案 > 如何检查 ElasticSearch 的 Reindex API 的进度

问题描述

我正在尝试通过Reindex API从远程 ES 2.4 集群执行重新索引操作。哪个工作是将超过 1 亿个索引文档传输到最新版本的弹性搜索。

对于测试用例,我正在小数据集上尝试它,但我面临以下问题。

问题:

  1. 我看不到脚本的进度,即传输了多少文档以及剩下多少文档。

  2. 如果失败,我如何恢复脚本而不是从 0 重新启动。

标签: elasticsearchlogstashelastic-stackreindex

解决方案


您可以使用任务管理 API来了解状态reindex,正如reindex API 官方文档中所建议的那样。来自同一个文档

如果请求包含 wait_for_completion=false,Elasticsearch 会执行一些预检检查,启动请求,并返回一个您可以用来取消或获取任务状态的任务。 Elasticsearch 在 .tasks/_doc/${taskId} 中创建此任务的记录作为文档。完成任务后,您应该删除任务文档,以便 Elasticsearch 可以回收空间。


推荐阅读