在ElasticSearch中映射未知数量的嵌套对象

时间:2019-01-14 13:35:53

标签: elasticsearch elasticsearch-mapping

给出以下嵌套对象

{
  "nestedParent":{
    "type":"nested",
    "dynamic":"true",
    "properties":{
      ...
    }
  }
}

我也需要它的所有属性都属于nested类型。 如何为未知数量的嵌套子代生成映射?

在功能上等于:

{
  "nestedParent":{
    "type":"nested",
    "dynamic":"true",
    "properties":{

      "nestedChild1":{
        "type":"nested",
        "dynamic":"true",
        "properties":{
          ...
        }
      },
      "nestedChild2":{
        "type":"nested",
        "dynamic":"true",
        "properties":{
          ...
        }
      },
      "nestedChild3":{
        "type":"nested",
        "dynamic":"true",
        "properties":{
          ...
        }
      },

      ...
    }
  }
}

我确实知道嵌套子代的结构,但不知道它们的键/名称。

1 个答案:

答案 0 :(得分:0)

您将需要一些通用的数据结构,例如Maps地图,以映射未知结构。 在Java中,有许多实现此问题的方法。 例如,请看一下这篇文章,该文章描述了如何使用te jackson映射器处理{反序列化未知的json:https://www.baeldung.com/jackson-json-node-tree-model