以前我使用的是ES 1.5,所以我可以很容易地创建数百个层次映射,如下所示:
{
"mapping": {
"country.*.population": {
"type": "int"
}
}
}
这意味着在父类型国家/地区有数百个类型为int的国家/地区。
现在因为ES2.0不支持字段名中的点,所以在创建映射时我必须写入数百次映射。例如:
{
"country": {
"properties": {
"usa": {
"properties": {
"population": {
"type": "int"
}
}
},
"canada": {
"properties": {
"population": {
"type": "int"
}
}
}
}
}
}
有关于此的任何想法吗?
答案 0 :(得分:1)
您可以在映射中使用dynamic template,如下所示:
PUT index
{
"mappings": {
"type": {
"dynamic_templates": [
{
"countries": {
"path_match": "country.*.population",
"mapping": {
"type": "int"
}
}
}
]
}
}
}