flink计算过程:Source->Transform->Sink
整体设计
消费kafka数据,解析、计算后,分两路输出 1 归档(HDFS) 2 业务应用(PG)
代码实现
消费kafka:FlinkKafkaConsumer<byte[]> kafkaConsumer
解 析: 按照协议、结构规则,构建map函数,解析并输出
水 印:Flink时间语义之EventTime(事件事件)(可实现AssignerWithPunctuatedWatermarks, 也可调用WatermarkStrategy)
事件计算:业务逻辑,window划分
输 出: Sink(hdfsSink, DBSink)
说明: 事件时间:时间取数据中的时间戳字段;hdfsSink:streamingFileSink,刷写策略(检查点同步刷新,定时定长定间隔刷新(Hadoop2.6以上))