专业的JAVA编程教程与资源

网站首页 > java教程 正文

大数据_Flink_Java版_数据处理_时间语义(3)_事件时间语义的设置

temp10 2024-12-03 02:46:52 java教程 13 ℃ 0 评论


大数据_Flink_Java版_数据处理_时间语义(3)_事件时间语义的设置

?


然后我们再来看,如何设置时间语义.


可以看到:


?


我们再设置环境以后,设置并行度,然后设置


env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime);


这里设置了,时间语义采用,数据产生时间来算.


?


我们可以去看看这个TimeCharacteristic这个是个枚举类


?


可以看到有ingestionTime这个是进入到flink的时间对吧


?


然后这个processingTime这个是flink进行数据处理的时间,我们这里就用的这个时间.


?


然后我们再看,这里的


EventTime,这个是事件数据发生的时间


?


可以看到这里,我们依然是从socket中获取数据,


然后把env.execute加上


?


然后我们看不是说,让生成数据的时候,带上,时间戳,我们这里是SensorReading中有Long型的


时间戳啊


但是我们想一下,虽然我们这里定义了,这个字段是时间戳,但是,flink知道么?


他不知道对吧.




所以这里就需要我们告诉flink ,时间戳是什么?


这里可以通过这个,可以看到整理后的map后的SensorReading流,有个


assignTimestampsAndWatermarks这个,就可以进行告诉,flink哪个字段是时间戳和


waterMark的设置,这里这个waterMark我们还没有说,所以说了


waterMark以后,我们这里再继续说.

?

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表