首页/数据/NoSQL 速查/_reindex 重建索引与数据迁移
Elasticsearch89 条

_reindex 重建索引与数据迁移

reindex 把源索引数据复制到目标索引,常用于映射调整、分片数变更与跨集群迁移;支持脚本改写文档、切片并行与冲突处理。

NoSQL 速查数据更新于 2026-10-12
接口POST /_reindex
常用参数slices=auto、conflicts=proceed、wait_for_completion=false
进阶script 改写文档,dest 可挂 ingest pipeline,source 支持远程集群

示例

示例
POST /_reindex?slices=auto&wait_for_completion=false
{
  "source": {
    "index": "old-index",
    "size": 1000
  },
  "dest": {
    "index": "new-index",
    "op_type": "create"
  }
}
先建好目标索引映射再迁移;迁移完成后核对 _count 与旧索引一致,再切换别名并删旧索引。

易错点

  • op_type 用 index 会覆盖同名文档,要保留并发写入的历史版本用 create 并处理冲突
  • reindex 只同步已有数据,新写入的增量要靠双写或切换别名方案兜住

数据来源与参考

  • Elasticsearch Guide: Reindex API
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌