如何在flink中用sql计算一天每分钟的uv

7vhp5slm  于 2021-06-24  发布在  Flink
关注(0)|答案(0)|浏览(269)

我们要计算一天的紫外线,并通过flink每分钟显示结果。
我们通过java代码实现了这一点:

dataStream.keyBy(dimension)
            .incrementWindow(Time.days(1), Time.minutes(1))
            .uv(userId)

输入数据很大。所以我们使用valuestate来存储从00:00:00到最后一分钟的所有不同的用户id。对于当前分钟,我们将分钟的数据与valuestate合并以获得新的valuestate并输出当前uv。
问题是如何将java代码转换成sql?我们希望sql是这样的:

select incrementWindow_end, dimension, distinct(userId) from table group by incrementWindow(Time.days(1), Time.minutes(1)), dimension

谁能给我一些建议?非常感谢你。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题