满足条件可执行重建
索引字段类型错误,名称被占用
单个分片数据量大查询性能下降,增加分片数
单个分片容量超过50G,增加分片数
需修改索引类型type名称
重建过程说明
第一步先准备*.json索引结构脚本
第二步重建时,无用数据可以增加过滤条件
第二步全量数据迁移耗时较长时,执行完后可执行第四步时差迁移
第三步将索引别名test_index,由test_index_1删除,更换为test_index_2
第四步时差可自行调整,通过时间范围同步数据
_reindex 复制数据效率较好 推荐使用,也可以使用datax或其他工具同步数据
此同步过程,支持热迁移
重建过程
脚本示例:将别名为test_index 的索引test_index_1,重建为 test_index_2
第一步新增加索引结构
curl -H "Content-Type:application/json" -X PUT :9200/test_index_2 -d @/test_index_2.json
第二步执行索引数据-全量迁移
curl -H "Content-Type:application/json" -X POST :9200/_reindex -d '{"source":{"index":"test_index_1","size": 10000},"dest":{"index":"test_index_2"}}'
第三步执行别名切换
curl -H "Content-Type:application/json" -X POST :9200/_aliases -d '{"actions":[{"add":{"index":"test_index_2","alias":"test_index"}},{"remove":{"index":"test_index_1","alias":"test_index"}}]}'
第四步执行索引数据-时差迁移
curl -H "Content-Type:application/json" -X POST :9200/_reindex -d '{"conflicts":"proceed","source":{"index":"test_index_1","type":"test_index","query":{"range": {"updatetime": {"gte": "now-1d/d"}}}},"dest":{"index":"test_index_2","version_type": "external"}}'
第五步完成...检查es索引数据