我已经为我的PRODUCT
索引创建了以下Map,我已经激活了它的数字检测。
{
"product": {
"mappings": {
"numeric_detection": true,
"properties": {
"my_float": {
"type": "float"
},
"my_integer": {
"type": "long"
}
}
}
}
} <br><Br>
字符串
当我想在同一索引上启用日期检测时,我得到以下错误
{
"error": "Incorrect HTTP method for uri [/product?pretty=true] and method [POST], allowed: [PUT, DELETE, GET, HEAD]",
"status": 405
}<br><br>
型
以下是我用来启用日期检测的弹性命令
post product
{
"mappings":
{
"dynamic_date_fromats":
[
"yyyy-MM-dd HH:mm:ss",
"yyyy-MM-dd",
"yyyy/MM/dd HH:mm:ss",
"yyyy/MM/dd"
],
"date_detection":true
}
}
型
我不想创建一个新的索引与新的Map,它将包含日期检测和数字检测。我只是想知道它是否有任何方法来更新它,而无需我们重新创建一切了吗?我知道,我们可以更新properties
部分,如果我们有新的领域,我们要添加它,但我不确定的数字检测和日期检测
1条答案
按热度按时间xtupzzrd1#
你点击的URL是用来创建一个新的索引的。如果索引已经创建,你只想修改Map,你只需要调用PUT Mapping API,它只会更新现有的Map参数:
字符串
注意:更新MapAPI不允许对现有Map进行任何更改,只允许进行某些更改
另外值得注意的是,默认情况下启用
date_detection
。默认支持的日期格式是[ "strict_date_optional_time","yyyy/MM/dd HH:mm:ss Z||yyyy/MM/dd Z"]
。