ES索引重建(零工具纯脚本执行)

作者:fyupeng

技术专栏:☞ https://github.com/fyupeng

项目地址:☞ https://github.com/fyupeng/distributed-blog-system-api

项目预览地址:☞ 预览


在日常开发与业务迭代过程中,索引结构的调整是 Elasticsearch 应用场景中非常常见的需求 ------ 随着业务需求的更新(比如字段新增 / 类型调整、分词规则优化、数据结构适配业务逻辑变更等),原有 ES 索引的 Mapping/Settings 配置往往无法满足新的业务诉求。而 ES 本身不支持直接修改已创建索引的核心配置(如字段类型、分词器),因此索引重建就成为解决这类问题的核心方案。
回归正题,索引重建主要包括这几步:

数据备份与迁移、旧索引清理与新索引重建、数据回迁与验证和业务切换。这里为了方便,业务切换采取的服务重启自动重建索引。

第一步:拷贝源索引上的数据 到 临时索引上

cmd 复制代码
curl -XPOST "http://localhost:9200/_reindex" -H "Content-Type: application/json; charset=UTF-8" -d "{\"source\":{\"index\":\"scs-ckp-task-2026\"},\"dest\":{\"index\":\"scs-ckp-task-2026-copy\"},\"max_docs\":100000}"

第二步:验证临时索引是否创建,数据是否与原数据一致

cmd 复制代码
# 原索引数据计数
curl -XGET "http://localhost:9200/scs-ckp-task-2026/_count"
cmd 复制代码
# 临时索引数据计数
curl -XGET "http://localhost:9200/scs-ckp-task-2026-copy/_count"
# 返回成功结果示例:{"count":28675,"_shards":{"total":1,"successful":1,"skipped":0,"failed":0}}

第三步:删除原索引(谨慎操作,临时索引要保留,为了重建索引)

cmd 复制代码
curl -XDELETE "http://localhost:9200/scs-ckp-task-2026"
# 返回成功结果示例: {"acknowledged":true}

第四步:波塞冬重新部署 SCS 服务

cmd 复制代码
# 保证执行以下命令能查询出结果
curl -XGET "http://localhost:9200/scs-ckp-task-2026/_count"
# 返回成功结果示例:{"count":0,"_shards":{"total":3,"successful":3,"skipped":0,"failed":0}}
第五步:临时索引把数据重新复制回新索引
cmd 复制代码
curl -XPOST "http://localhost:9200/_reindex" -H "Content-Type: application/json; charset=UTF-8" -d "{\"source\":{\"index\":\"scs-ckp-task-2026-copy\"},\"dest\":{\"index\":\"scs-ckp-task-2026\"},\"max_docs\":100000}"
相关推荐
极光代码工作室9 小时前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化
秋名山码民10 小时前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag
m0_3801671410 小时前
面向开发者的Top10加密货币数据API(2026年最新)
大数据·人工智能·区块链
yyxx41212310 小时前
上海企业如何选择专业的钉钉服务商
java·大数据·人工智能·钉钉
QZ1665609515911 小时前
动态感知·全覆盖管控·符合司法要求:通用行业知形数据库风险监测合规落地方案
大数据·人工智能
GEO优化小助手11 小时前
2026临沂GEO优化公司实测解析:3家本土机构适配性参考
大数据·人工智能·python
OceanBase数据库官方博客12 小时前
OceanBase + Flink 数据集成(第二部分):通过 JDBC 协议实现实时数据同步
大数据·flink·oceanbase
跨境摸鱼12 小时前
年中政策切换窗口临近跨境卖家如何安排新品测试与库存回收
大数据·人工智能·跨境电商·跨境·营销策略
Volunteer Technology12 小时前
Flink Table API与SQL(一)
大数据·sql·flink
醉颜凉13 小时前
Elasticsearch高性能优化:Bulk API大规模数据导入性能调优全攻略
elasticsearch·性能优化·jenkins