2017-01-10 39 views
0

我正在將來自Kafka流光標的消息帶入Flink。該消息包含Record_time字段,我想根據Record_time應用時間窗口。Flink:使用消息中包含的EventTime窗口的時間戳

我可以提取或使用Record_time字段爲該郵件分配時間戳嗎?由於接口TimestampExtractor的所有方法都被棄用,有沒有其他的方法可以做到這一點?

回答

0

TimestampExtractor已棄用,由AssignerWithPeriodicWatermarksAssignerWithPunctuatedWatermarks替代。

AssignerWithPeriodicWatermarks爲每條記錄提取時間戳,並定期查詢當前水印。

'AssignerWithPunctuatedWatermarks`也提取每個記錄的時間戳。另外還要求每個記錄提取一個水印。如果水印以特殊記錄編碼,這將很有幫助。

+0

目前我正在使用'FlinkKafkaConsumer09',這個'AssignerWithPunctuatedWatermarks'的時間戳提取功能也可以使用if或者只有'FlinkKafkaConsumer010'可用。我正在使用kafka 0.9 jar。 – kadsank

+0

**對不起,有一個錯字(...有它,或者它只有可用....) – kadsank

+0

所有Flink卡夫卡消費者支持這兩種類型的分配者。也許你有一箇舊版本的連接器?您應該確保所有Flink依賴項具有相同的版本。 –