一个文件可以分成两个桶吗?

时间:2018-02-14 05:31:14

标签: elasticsearch elasticsearch-5

在弹性搜索中,我有文件列表。每个文档都包含字段类型(类型的可能值为1,2,3,4,5)。现在我想创建两个桶

  1. 一个包含类型字段值为1和
  2. 的文档
  3. 包含所有文档(包括类型1)。
  4. 弹性搜索有可能吗?如果是,那么如何?

    我在互联网上搜索但我找不到任何有用的东西。

    以下是文档结构: -

    "_source": { "city": "Ahmadabad",
                   "pId": "A1332605",
                   "sellerType": 1,
                   "seller": "Dealer",
                   "makeId": 7,
                   "makeName": "ABC",
                   "modelId": 673,
                   "type": 1
               },
    "_source": { "city": "Surat",
                       "pId": "A265843",
                       "sellerType": 1,
                       "seller": "Dealer",
                       "makeId": 45,
                       "makeName": "XYZ",
                       "modelId": 520,
                       "type": 2
                   }
    

1 个答案:

答案 0 :(得分:1)

我从Kibana制作的可视化中复制了此请求,它的工作方式应该相同。我选择了你的一个整数字段,如果你需要别的东西就改变它。

{
  "query": {
    // your query
  },
  "size": 0,
  "_source": {
    "excludes": []
  },
  "aggs": {
    "2": {
      "filters": {
        "filters": {
          "filter_for_specific": {
            "query_string": {
              "query": "sellerType: 1",
              "analyze_wildcard": true
            }
          },
          "filter_for_existing": {
            "query_string": {
              "query": "sellerType: *",
              "analyze_wildcard": true
            }
          }
        }
      }
    }
  }
}