我需要使用动态模板为索引中的未知新字段创建动态映射。我的示例映射是:
{
"indexname":{
"dynamic_templates":[
{
"template_1":{
"match":"*",
"dynamic fields":{
"type":"dynamictype",
"index":"not_analyzed"
}
}
}
]
}
}
我对创建动态映射感到有点困惑,任何人都可以指导我解决这个问题。
我想在运行时创建映射多个字段,使用java API可以指导我。
答案 0 :(得分:1)
按照:
{
"dynamic_templates": [
{
"template_1": {
"path_match": "*",
"mapping": {
"index": "not_analyzed",
"type": "string"
}
}
}
]
}
我不太确定' dynamictype'在你的代码中。您必须指定确切的类型。
编辑:
{
"dynamic_templates": [
{
"dynamic_1": {
"path_match": "abcd*",
"mapping": {
"include_in_all": true,
"index": "not_analyzed",
"type": "string"
}
}
},
{
"dynamic_2": {
"path_match": "address.phone.*",
"mapping": {
"include_in_all": true,
"type": "long"
}
}
}
]
}
第一个(名为template_1)将应用于以' abcd'开头的所有新字段。第二个(名为template_2)将应用于所有嵌套字段,其中包含' phone'它已经嵌套在'地址'字段。