【问题标题】:elastic search aggregation and filter in RR中的弹性搜索聚合和过滤器
【发布时间】:2019-05-08 20:21:10
【问题描述】:

如何根据字段值创建存储桶聚合,然后运行查询,通过过滤器为每个存储桶(而不是每个文档)提供命中?

弹性搜索的新功能,我将不胜感激!

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    我目前正在努力解决这个问题。到目前为止,我已经弄清楚如何在字段上进行聚合,但还不能应用过滤器。请让我知道您是否取得了进展,因为我看到这是不久前发布的...

    # connect to elastic search
    elastic::connect('connection_string',
                     es_port = 9200)
    
    # define aggregation
    aggs <- list(
      aggs = list(
        field_name = list(
          terms = list(
            field = "field_name"
          )
        )
      )
    )
    
    # search
    Search(index = 'index_name', 
           body = aggs,
           asdf = T)
    

    【讨论】:

      【解决方案2】:

      我设法为日期应用过滤器,如下所示:

      last_week <- query('{
              "range" : {
                  "your_date_field" : {
                      "gte" : "mondays-date",
                      "lt" :  "sundays-date"
                  }
              }
      
      }')
      

      我将此作为主要查询。我认为您可以使用 %search% (last_week + agg) 表示法对此进行聚合,它应该可以工作。

      【讨论】:

        猜你喜欢
        • 2014-07-11
        • 1970-01-01
        • 2020-06-20
        • 1970-01-01
        • 1970-01-01
        • 2021-03-14
        • 1970-01-01
        • 1970-01-01
        • 2020-08-17
        相关资源
        最近更新 更多