【问题标题】:Kafka KSQL Tumbling windowKafka KSQL 翻滚窗口
【发布时间】:2022-03-17 07:31:36
【问题描述】:

我正在尝试理解和处理 KSQL 上的一些示例。我在本地机器上安装了 Confluent 社区版(6.0.0)。

我在 KSQL 中有下表

sql> DESCRIBE TUMB;

Name                 : TUMB
 Field    | Type                           
-------------------------------------------
 EMAIL    | VARCHAR(STRING)  (primary key) 
 AMOUNT   | DOUBLE                         
 CURRENCY | VARCHAR(STRING)   

我正在使用 python 生产者来生产这个主题/表中的数据。当我尝试使用下面的 SQL 聚合翻滚窗口时

CREATE TABLE pageviews_per_region_per_minute AS
>  SELECT CURRENCY,
>         COUNT(*)
>  FROM TUMB
>  WINDOW TUMBLING (SIZE 1 MINUTE)
>  GROUP BY CURRENCY
>  EMIT CHANGES;

我收到错误消息 - “表聚合不支持窗口化。”

我在 youtubehttps://www.youtube.com/watch?v=2fUOi9wJPhk 上查找了此视频,其中做了类似的事情,但没有错误。我查看了https://docs.ksqldb.io/en/latest/developer-guide/aggregate-streaming-data/ 的 ksql 文档,语法似乎没问题。我无法弄清楚我做错了什么。

【问题讨论】:

    标签: apache-kafka ksqldb


    【解决方案1】:

    您检查过您的 ksqlDB 版本吗,在最新版本的 ksqlDB (0.14.0) 中应该没问题。 Confluent Platform 6.0.0 或 6.0.1 仅包含 0.10.0。

    并不是说您使用的是 Confluent Cloud,而是要注意它也使用最新版本的组件,因此它也使用 0.14.0。

    【讨论】:

      【解决方案2】:

      假设 TUMB 是一个表,因为它有一个 PK。 您不能从表创建窗口表/流,您需要一个 STREAM 作为聚合源。 尝试将 TUMB 定义为流。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多