大家好,

我遇到一个奇怪的问题,通过计算列提取出某一字段。定义为row_time的watermark,
如下面原始字段为message,从中提取13位unix-timestamp,转成timestamp(3)再定义为watermark。

执行窗口计算不报错,但是无输出结果。

数据源是kafka,各partition内数据均匀。

建表语句类似下面(单位机器不能联外网,下面的语句是我手打的,可能有typo请见谅)

create table kafka_source(
    message Varchar,
    ts as TO_TIMESTAMP(FROM_UNIXTIME(CAST(SPLIT_INDEX(message,’\u001B’,3) AS 
BIGINT)/1000)),
WATERMARK FOR ts AS ts - INTERVAL ‘2’ SECOND
)WITH(
.......
)

INSERT INTO sink_table
SELECT
TUMBLE_END(ts, INTERVAL ‘10’ SECOND),
COUNT(*)
From Kafka_source
Group by TUMBLE(ts, INTERVAL ‘10’ SECOND);

感谢各位!

回复