我尝试以下列方式嵌套映射。
PUT /xyz
{
"mappings": {
"logs": {
"properties": {
"startTime": {"type": "date",
"format": "HH:mm:ss"
},
"stopTime": {"type": "date",
"format": "HH:mm:ss"
},
"acceptedRequests": {"type": "integer"},
"clientErrors": {"type": "integer"},
"serverErrors": {"type": "integer"}
},
"predicted":{"type":"nested",
"properties":{
"predict1": {"type":"nested",
"properties":{
"acceptedRequests":{"type":"integer"},
"clientErrors": {"type": "integer"},
"serverErrors": {"type": "integer"}
}
},
"predict2": {"type":"nested",
"properties":{
"acceptedRequests":{"type":"integer"},
"clientErrors": {"type": "integer"},
"serverErrors": {"type": "integer"} }
},
"predict3": {"type":"nested",
"properties":{
"acceptedRequests":{"type":"integer"},
"clientErrors": {"type": "integer"},
"serverErrors": {"type": "integer"}
}
}
}
}
}
}
}
我收到了一个错误说明 " root_cause":[ { "输入":" mapper_parsing_exception", "原因":"根映射定义具有不受支持的参数:[type:nested]"
感谢任何帮助。
答案 0 :(得分:0)
您收到错误,因为属性标记在“预测”属性之前关闭。使用以下映射来更正错误
{
"mappings":{
"logs":{
"properties":{
"startTime":{
"type":"date",
"format":"HH:mm:ss"
},
"stopTime":{
"type":"date",
"format":"HH:mm:ss"
},
"acceptedRequests":{
"type":"integer"
},
"clientErrors":{
"type":"integer"
},
"serverErrors":{
"type":"integer"
}
,
"predicted":{
"type":"nested",
"properties":{
"predict1":{
"type":"nested",
"properties":{
"acceptedRequests":{
"type":"integer"
},
"clientErrors":{
"type":"integer"
},
"serverErrors":{
"type":"integer"
}
}
},
"predict2":{
"type":"nested",
"properties":{
"acceptedRequests":{
"type":"integer"
},
"clientErrors":{
"type":"integer"
},
"serverErrors":{
"type":"integer"
}
}
},
"predict3":{
"type":"nested",
"properties":{
"acceptedRequests":{
"type":"integer"
},
"clientErrors":{
"type":"integer"
},
"serverErrors":{
"type":"integer"
}
}
}
}
}
}
}
}
}