跳出率查询Elasticsearch

时间:2014-07-25 11:55:12

标签: elasticsearch

我打算使用elasticsearch查询实现计算跳出率的查询。

任何人都可以知道如何使用脚本输入聚合结果吗?

{
   "aggs":{
      "monthly":{
         "date_histogram":{
            "field":"timestamp",
            "interval":"month",
            "script":""
         },
         "aggs":{
            "visits_greater_than_one":{
               "terms":{
                  "field":"sessionId",
                  "min_doc_count":2
               }
            }
         },
         "aggs":{
            "visitor_count":{
               "cardinality":{
                  "field":"sessionId"
               }
            }
         }
      }
   }
}

谢谢, Ankireddy Polu

1 个答案:

答案 0 :(得分:0)

我找到了解决此问题的一些解决方法

{
   "aggs":{
      "monthly":{
         "date_histogram":{
            "field":"timestamp",
            "interval":"month"
         },
         "aggs":{
            "visits_greater_than_one":{
               "terms":{
                  "field":"sessionId",
                  "min_doc_count":2
               }
            },
                "visitor_count":{
               "cardinality":{
                  "field":"sessionId"
               }
            }
         }

      }
   }
}

这种方法的缺点是我们需要单独执行计算,无论我们在哪里削减结果,我们将有两个不同的桶,一个将保存具有多个条目的会话数和在此期间的会话总数间隔。使用它(visitor_count - visits_greater_than_one)/ visitor_count将是我的跳出率 (visitor_count - visits_greater_than_one)为我提供了用户仅访问过单页的会话