如何将数据从 150 GB 大小的 Elastic 索引复制到另一个

问题描述 投票:0回答:1

我有一个大小为 150+ GB 的索引“索引 A”,有几个字段需要转换为 NESTED,并且对于少数字段,类型需要从“关键字”更改为“文本”,反之亦然。

我创建了一个具有必要类型/更改的新索引“索引 B”,因为我无法将现有索引修改为具有嵌套类型,因为它具有数据。

每当我使用“POST _reindex”时,无论是否有过滤器查询,它都会陷入“超时错误”,将 150+ GB 的数据从索引 A 复制到索引 B 的过程是什么?

elasticsearch kibana elastic-stack elk
1个回答
0
投票

重新索引是可行的方法,但是,由于该过程将持续超过几秒/分钟,因此您需要通过在 URL 中添加

?wait_for_completion=false
来在后台运行该过程:

POST _reindex?wait_for_completion=false
{
    ...
}

该调用将立即返回一个任务 ID,您可以使用以下命令来监控重新索引的进度:

GET _tasks/<task_id>

任务完成后,您可以使用

删除它
DELETE .tasks/<task_id>
© www.soinside.com 2019 - 2024. All rights reserved.