0

我已经成功设置了 ELK 堆栈。ELK 给了我对数据的深刻见解。但是,我不确定如何获取以下结果。

假设,我有一个专栏user_idaction. 实际值可以是installedactivated和。因此,我希望如果特定用户在 5 月 21 日和 6 月 21 日执行了一项活动,那么在获取 6 月份的结果时,ELK 不应该返回那些之前已经执行过该活动的用户。例如,对于下表:-engagementclickinstalled

Date    UserID      Activityin the previous month
1 May       1           Activated
3 May       2           Activated
6 May       1           Click
8 May       2           Activated
11 June     1           Activated
12 June     1           Activated
13 June     1           Click

User1 和 User2 分别于 5 月 1 日和 3 日激活。User2 也在 5 月 8 日激活。因此,当我过滤 5 月份有活动的用户时Activated,它应该返回我 count 2,即

   1 May        1           Activated
   3 May        2           Activated

5 月 8 日的 User2 将被删除,因为它之前曾执行过相同的活动。

现在,如果我为 6 月份编写相同的查询,它应该不会返回任何内容,因为相同的用户之前也执行了相同的活动。

如何在 ELK 中编写此查询?

4

1 回答 1

0

这种类型的关系查询在 ElasticSearch 中是不可能的。

您需要添加另一列 (FirstUserAction) 并在加载数据时填充它,或者安排一个任务(使用您熟悉的任何脚本/编程语言)以定期计算和更新此列的值。

于 2016-01-08T01:44:25.143 回答