【HBZ分享】ES中的Reindex重建索引

本文讲述了如何使用Reindex功能在Elasticsearch中重建索引,包括处理字段类型错误、分片调整、数据筛选以及解决索引冲突的方法。同时强调了在实际操作中的注意事项,如测试环境预演、配置优化以提高效率。

Reindex如何实现索引重建?

  1. 滚动索引 + 批量复制

Reindex存在的问题

  1. 如果新的索引没有提前创建好,并指定字段类型,那么重建后的新索引类型极有可能会和旧的索引不一致,因为ES他会推断类型,而推断错误率从实战来说那是相当的高

Reindex能解决的问题

  1. 字段类型设置错了
  2. 旧的索引分片不合理,想重新分
  3. 某批数据存错了,或只想保留具备指定特性或关键字的数据,可以根据条件来重建索引,筛选出符合条件的数据进行重建,
POST _reindex
{
	"source": {
		"index":"remind_test",   // 旧的源索引名称
		"query": {
			"term": {
				"summary": "java"   // 只重建包含java的数据
			}
		}
	},
	"dest":{
		"index": "remind_new"   // 重建后新索引的索引名称
	}
}
  1. 指向要指定的字段,其余字段想删掉,也可以使用重建索引
POST _reindex
{
	"source": {
		"index":"remind_test",   // 旧的源索引名称
		"_source": ["id", "title", "name"]   // 只重建id, title, name字段,其余字段不要了,则重建后的新索引,只会有这3个字段
	},
	"dest":{
		"index": "remind_new"   // 重建后新索引的索引名称
	}
}
  1. 多个索引库合并重建(即有多个索引,想把字段和数据整合到一个大索引中)
    == 注意: 如果多个索引中存在相同的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值