在Elasticsearch中,如果你想要修改一个已存在的字段的search_analyzer
(例如从ik_smart更改为ik_max_word你通常不能直接在一个已经存在的索引上更改字段映射。这是因为Elasticsearch的设计原则是索引一旦创建,字段的映射就不能被修改(除了某些有限的例外,如增加新的字段))
先创建new_index 配置好某个字段 然后重新索引 会将数据全部赋值到new_index中
查看索引信息
GET new_index
GET new_index/_search #查看doc信息
{
"query": {"match_all": {}}
}
POST _reindex
{
"source": {
"index": "old_index"
},
"dest": {
"index": "new_index"
}
}
这时候可以通过删除旧的索引
DELETE new_index
然后再重命名新的索引即可
PUT new_index/_alias/old_index
网友评论