问题描述
我是 Apache 超集的新手,我想实现图表,它应该代表粘性意味着每日活跃用户/每月活跃用户的比率。 使用 Druid 作为数据源。 列存在于我的数据库“userId”、“event”、“timestamp”中。
解决方法
对于 DAU,您只需将 timestamp
截断为每日粒度:
SELECT COUNT(DISTINCT userId) AS dau,FLOOR(timestamp TO DAY) AS day
FROM your_datasource
GROUP BY FLOOR(timestamp TO DAY)
您可以在 SQL Lab 中编写上面的查询,然后单击“可视化”以构建图表。或者,在探索视图中,您可以选择“天”作为时间粒度,然后将指标定义为 COUNT(DISTINCT userId)
。
对于 WAU/MAU,它有点复杂。传统上,您会使用自联接进行查询,如下所示(在伪 SQL 中):
SELECT ...
FROM your_datasource AS today
JOIN your_datasource AS last_month
ON last_month.timestamp BETWEEN today.timestamp AND (today.timestamp - 30 days)