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}"
相关推荐
珠海西格电力11 小时前
零碳园区的能源成本优势具体体现在哪些方面
大数据·人工智能·算法·架构·能源
敖正炀11 小时前
索引写入与数据持久化深度
elasticsearch
一线数智11 小时前
AI+业务 Vs 业务+AI?寻找让AI真正“转”起来的确定性答案
大数据·人工智能
智慧医养结合软件开源11 小时前
数智协同,赋能康养服务高效升级
大数据·人工智能·云计算·生活
docsz12 小时前
Ambari3.0集成Flink 2.2+Paimon1.4
大数据·flink
CryptoPP12 小时前
快速集成:基于现代API的金融数据流解决方案
大数据·数据结构·笔记·金融·区块链
清平乐的技术专栏12 小时前
【Flink学习】(七)Flink 状态编程入门,有状态实时计算
大数据·学习·flink
humors22112 小时前
不借外力,内力自生:提升竞赛水平的四种内功心法
大数据·程序人生
染指111012 小时前
8.向量数据库-RAG基础2
大数据·数据库·人工智能·rag
电商API_1800790524712 小时前
京东商品主图 & 详情图 API 接口实战开发|电商图片数据合规获取方案
java·大数据·人工智能·数据挖掘·网络爬虫