gpt4 book ai didi

elasticsearch - 更新ElasticSearch映射类型而不删除它

转载 作者:行者123 更新时间:2023-12-02 22:40:40 25 4
gpt4 key购买 nike

我的索引上有这种映射类型。

{
"iotsens-summarizedmeasures": {
"mappings": {
"summarizedmeasure": {
"properties": {
"id": {
"type": "long"
},
"location": {
"type": "boolean"
},
"rawValue": {
"type": "string"
},
"sensorId": {
"type": "string"
},
"summaryTimeUnit": {
"type": "string"
},
"timestamp": {
"type": "date",
"format": "dateOptionalTime"
},
"value": {
"type": "string"
},
"variableName": {
"type": "string"
}
}
}
}
}
}

我想将 sensorId字段更新为。
"sensorId": {
"type": "string",
"index": "not_analyzed"
}

有什么方法可以更新索引而不删除并重新映射它?我不必更改字段类型,只需设置 "index": "not_analyzed"即可。

谢谢。

最佳答案

您可以做的是在现有的sensorId字段中创建一个multi-field,并使用一个名为raw的子字段not_analyzed:

curl -XPUT localhost:9200/iotsens-summarizedmeasures/_mapping/summarizedmeasure -d '{
"summarizedmeasure": {
"properties": {
"sensorId": {
"type": "string",
"fields": {
"raw": {
"type": "string",
"index": "not_analyzed"
}
}
}
}
}
}'

但是,您仍然必须重新索引数据以确保创建了所有 sensorId.raw子字段。

关于elasticsearch - 更新ElasticSearch映射类型而不删除它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31851930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com