内部对象搜索elasticsearch v2.3

时间:2016-11-16 11:43:54

标签: elasticsearch

我在elasticsearch中有以下文档:

{ 
  "region": "US",
  "manager": { 
    "age":     30,
    "name": { 
      "first": "John",
      "last":  "Smith"
    }
  }
}

根据this page in documentation,内部对象也可以在不提供完整路径的情况下进行搜索。例如,我可以用first = John向我展示文档。

这对我来说非常适用于1.5.2 开箱即用的但我最近迁移到2.3.2版本的弹性和非完全限定名称-based-search 已停止工作。现在我必须明确说出name.first = John,因为文档中键的动态性,我不想这样做。

我已经尝试明确说明在声明映射时name是一个对象类型。还可以使用herehere {/ 3}}中的include_in_all选项包含姓名。

有没有人知道如何在弹性搜索的2.3.2版本中使用它。如何仅通过first=John而不是name.first=John来搜索弹性内部字段。

1 个答案:

答案 0 :(得分:1)

不幸的是,弹性搜索2.x已删除此功能(短名称)。

https://www.elastic.co/guide/en/elasticsearch/reference/2.3/breaking_20_mapping_changes.html

这与确保无法创建冲突的映射以及减少歧义有关。