繁体   English   中英

在elasticsearch文档中有多层次的字段吗?

[英]is it good have multi level fields in elasticsearch document?

在elasticsearch文档中有多层次的字段吗?

如果是,那么如何使用嵌套字段搜索文档

我没有看到关于elasticsearch docshttps的文档://www.elastic.co/guide/en/elasticsearch/reference/current/index.html

多级别我的意思是嵌套字段

{
 "account_number": 0,
    "balance": 16623,
    "firstname": "Bradshaw",
    "lastname": "Mckenzie",
    "age": 29,
    "gender": "F",
    "address": {
        "244 Columbus Place",
        "employer": "Euron",

        "email": {
            "personal":"bradshawmckenzie@euron.com",
            "work": "bradshawmckenzie@euron.com"
        }
        "city": "Hobucken",
        "state": "CO"
    }
}```

In about document address and email inner objects

是的,拥有多个级别的对象是完全没问题的。

但是,您当前的JSON文档无效。 我认为它应该更像这样。

{
    "account_number": 0,
    "balance": 16623,
    "firstname": "Bradshaw",
    "lastname": "Mckenzie",
    "age": 29,
    "gender": "F",
    "address": "244 Columbus Place",
    "employer": "Euron",
    "email": {
        "personal": "bradshawmckenzie@euron.com",
        "work": "bradshawmckenzie@euron.com"
    },
    "city": "Hobucken",
    "state": "CO"
}

要访问内部对象,可以使用点表示法。 例如:

GET my-index/_search
{
  "query": {
    "match": {
      "email.personal": "bradshawmckenzie@euron.com"
    }
  }
}

在Elasticsearch中有多种方法可以使用“多个级别”,每种方法都有优缺点。 以下文章很好地解释了它们: https//www.elastic.co/blog/managing-relations-inside-elasticsearch

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM