1.修改mapping(索引已存在,之前并不不存在的字段)相当于新增字段
# curl -H "Content-Type: application/json" -XPOST '192.168.198.129:9200/suggest/ensuggest/_mapping' -d'
{
"properties": {
"language": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}'
2.已经存在的字段(无法修改) update不支持,所以只能通过reindex重建索引-索引迁移
- 新建索引:curl -XPUT 'http://ip:9200/productv2'
- 设置(更新)mappings和settings
-
reindex之前先禁用副本,提高速度
curl -H "Content-Type: application/json" -XPUT 'http://ip:9200/productv2/_settings' -d ' { "number_of_replicas": 0,//副本数为0 "refresh_interval": -1 //增加refresh间隔 } '
- reindex
curl -H "Content-Type: application/json" -XPOST 'http://ip:9200/_reindex?pretty=true' -d ' { "source": { "index": "product", "size":5000 //每次copy5000条数据 }, "dest": { "index": "productv2" } } '
- 可以看到reindex数量总数等信息。
- 将副本数重新修改回