查找最后5分钟页面视图

5f0d552i  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(246)

我有一个Kafka主题的名称的页面视图和流的名称的页面视图。现在我想计算最后5分钟页面浏览量。我使用的是ksql。试用

SELECT after->pageview_id FROM pageviews WHERE after->pageview_id >= NOW() - INTERVAL 10 MINUTE;

以及

SELECT AFTER ->pageview_id FROM pageviews WHERE after->pageview_id >= sysdate - 5/(24*60);

但不起作用。这是嵌套的avro模式。

zzzyeukh

zzzyeukh1#

你可以用 HOPPING 窗口来模拟ksql中的滑动窗口。对于跳转窗口,您应该指定窗口大小,在本例中为 5 minutes 以及指示窗口如何移动的提前值,即滑动(例如,每1秒)。所以你可以这样写一个查询:

CREATE STREAM foo AS SELECT after->pageview_id AS pv_id FROM pageviews;

CREATE TABLE bar AS SELECT pv_id, COUNT(pv_id) FROM foo WINDOW HOPPING (SIZE 5 MINUTES, ADVANCE BY 1 SECOND) GROUP BY pv_id;

更多关于 HOPPING WINDOW 请参阅以下页面:
https://docs.confluent.io/current/ksql/docs/developer-guide/syntax-reference.html#ksql-陈述
https://docs.confluent.io/current/streams/developer-guide/dsl-api.html#hopping-时间窗口

相关问题