我有一张带翻窗的table。
CREATE TABLE total_transactions_per_1_days AS
SELECT
sender,
count(*) AS count,
sum(amount) AS total_amount,
histogram(recipient) AS recipients
FROM
completed_transactions
WINDOW TUMBLING (
SIZE 1 DAYS
)
现在我只需要从当前窗口中选择数据,即windowstart<=current time和windowend<=current time。有可能吗?我找不到任何例子。
1条答案
按热度按时间odopli941#
取决于您所说的“选择数据”是什么意思;)
ksqldb支持两种主要的查询类型(参见https://docs.ksqldb.io/en/latest/concepts/queries/).
如果您想要的是拉式查询,即传统的sql查询,您希望将当前窗口作为一个一次性结果拉回来,那么您想要的可能是可能的,尽管拉式查询是最近的功能,尚未完全具备。从版本0.10开始,您只能查找已知的密钥。例如,如果
sender
是表的键,可以运行如下查询:这将要求表已处理的数据的时间戳接近当前的挂钟时间,以便它回拉数据,即,如果系统滞后,或者如果您正在处理历史数据或延迟数据,这将不起作用。
注意:上述查询将在ksqldbv0.10上运行。您在旧版本上的成功可能会有所不同。
有计划扩展pull查询的功能。所以请留意ksqldb的更新。