ES中无法直接增删索引中的字段,只能能够覆盖,即重建新的索引
例:删除索引my_index中的source字段文章来源地址https://www.toymoban.com/news/detail-506013.html
- 先将source字段中的数据删除
否则后面reindex时,索引中会自动增加source字段和类型
POST my_index/_update_by_query
{
"script": {
"source": "ctx._source.remove(\"source\")",
"lang": "painless"
}
}
- 创建新的索引my_index_bak,该mapping中不包含source字段
- 数据迁移
POST _reindex
{
"source": {
"index": "my_index"
},
"dest": {
"index": "my_index_bak"
}
}
- 删除原来的索引
delete /my_index
- 再重新创建索引名为my_index的新索引
mapping中不包含要删除的字段source - 数据迁移
POST _reindex
{
"source": {
"index": "my_index_bak"
},
"dest": {
"index": "my_index"
}
}
- 删除旧索引
delete /my_index_bak
文章来源:https://www.toymoban.com/news/detail-506013.html
到了这里,关于ES中删除索引中某个字段的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!