ElasticSearch 因为索引字段改变,平滑迁移索引

问题:
某个索引创建时,没有按照想要的mapping,进行创建。
有个字段是text,不是想要的keyWord

此时需要重新按照mapping创建新索引,并迁移数据,

一、不使用别名的方式迁移

1. 创建新索引:

使用 Elasticsearch 的 PUT 请求创建一个新的索引,例如 PUT /new_index。
在创建新索引时,确保按照想要的mapping 进行了创建: GET /{indexName}/_mapping

2.导出旧索引数据到备份:

可以通过使用 Elasticsearch 的 Reindex API 或其他工具来导出旧索引中的数据。
执行导出操作时,需要指定源索引(旧索引)和目标索引(新索引)的名称,以及需要导出的数据范围等参数。

POST /_reindex
{
“source”: {
“index”: “{old_indexName}”
},
“dest”: {
“index”: “{bak_review_task}”
}
}

3.导入数据到新索引:

在导出数据后,可以使用 Reindex API 或其他工具将数据导入到新的索引中。
POST /_reindex
{
“source”: {
“index”: “{bak_review_task}”
},
“dest”: {
“index”: “{new_indexName}”
}
}

在数据导入完成后,需要对新索引中的数据进行验证,以确保数据迁移成功。
可以使用 Elasticsearch 的查询功能对新索引中的数据进行检查,例如使用 GET 请求查询新索引中的文档。
更新别名:

一旦确认数据迁移成功,可以更新别名,使其指向新索引,而不是旧索引。
可以使用 Elasticsearch 的 PUT 请求来更新别名,例如 PUT /_aliases。

4.删除旧索引:

最后,可以删除旧索引,以释放存储空间并避免不必要的资源浪费。
可以使用 Elasticsearch 的 DELETE 请求来删除旧索引,例如 DELETE /old_index。

二、使用别名的方式做数据迁移

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodingPeppa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值