你好。在用kafka table connector时如果使用eventTime,需要怎么启用这个eventTime,
没有找到一些相应的sample,我是这样用的,1.
设置Stream环境setStreamTimeCharacteristic(TimeCharacteristic.EventTime);2.
在connector里指定watermark,其中transTime是消息里的字段" rowtime AS
TO_TIMESTAMP(FROM_UNIXTIME(transTime / 1000, 'yyyy-MM-dd HH:mm:ss')), \n "
+" WATERMARK FOR rowtime AS rowtime - INTERVAL '10' SECOND \n" +3.
然后直接用datastream的windowds.keyBy(marketCode).timeWindow(Time.minutes(1L));
但在运行时会报以下exception, 已经 在connector里定义了,还需要assign吗?java.lang.RuntimeException:
Record has Long.MIN_VALUE timestamp (= no timestamp marker). Is the time
characteristic set to 'ProcessingTime', or did you forget to call
'DataStream.assignTimestampsAndWatermarks(...)'?即使我在datastream里定义了strategy
,ds.assignTimestampsAndWatermarks(WatermarkStrategy.forBoundedOutOfOrderness(Duration.ofSeconds(10)));也还是报上面一样的错。
--
Sent from:
http://apache-flink.147419.n8.nabble.com/