我有一个带有以下映射的索引
{
"testmap": {
"mappings": {
"user": {
"properties": {
"plans": {
"type": "nested",
"properties": {
"user": {
"type": "long"
}
}
},
"status": {
"type": "integer"
}
}
}
}
}
}
我想删除状态字段映射。我不介意放弃该领域的数据。是否有删除状态字段的选项。 尝试
curl -XDELETE http://192.168.2.2:9200/testmap/user/status
{"found":false,"_index":"testmap","_type":"user","_id":"status","_version":1
非常感谢您的帮助。谢谢。
答案 0 :(得分:7)
您无法从此映射中删除status
字段。如果您确实需要删除此字段,则必须创建另一个没有status
字段的映射并重新索引数据。看看这个answer。
答案 1 :(得分:3)
如果您只需要在状态字段中更改映射类型,则无法将其删除,但您可以将其更改为multi_field
类型,该类型使用多个选项集对该字段编制索引。
旧数据不会被索引到新字段,但是向前移动的索引请求将会。在某些用例中,它是"删除索引并使用新映射创建新索引的正确选择"。
https://www.elasticsearch.org/guide/en/elasticsearch/reference/0.90/mapping-multi-field-type.html