对于es中很少的操作

Posted myunyu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于es中很少的操作相关的知识,希望对你有一定的参考价值。

今天在统计pv和ip时遇到之前没有遇到的查询操作,在这里先记录下...

1、使用nested嵌套后,聚合查询当前嵌套的字段与嵌套外的字段,建议在嵌套内添加嵌套外需要聚合的字段:

2、跳出嵌套:

 1       "aggs": {
 2                 "rev": {
 3                   "reverse_nested": {},  //跳出嵌套桶
 4                   "aggs": {
 5                     "age": {
 6                       "terms": {
 7                         "field": "gender",
 8                         "size": 3
 9                       }
10                     }
11                   }
12                 }

2、需要统计bucket桶中doc_count最大值:

"aggs": {
        "nestedDpiPv": {
          "terms": {
            "field": "dpi",
            "size": 15000
          }
        },
        "maxDpiPv": {
          "max_bucket": {
            "buckets_path": "nestedDpiPv>_count"
          }
        }
}

查询后的结果为:

...前面took,hits等省略
   "maxDpiPv": {
        "value": 198,
        "keys": [
          "414X736"
        ]
      }

 

以上是关于对于es中很少的操作的主要内容,如果未能解决你的问题,请参考以下文章

提效小技巧——记录那些不常用的代码片段

在Android中,如何将数据从类传递到相应的布局/片段文件?

22.es各操作实现原理

30秒就能看懂的JavaScript 代码片段

在 Firebase 中禁用自动活动跟踪

在GLSL ES中的片段着色器上旋转纹理