使用Flink消费Kafka中ChangeRecord主题的数据,统计每三分钟各设备状态为“预警”且未处理的数据总数。将结果存入MySQL的shtd_industry.threemin_warning_state_agg表(追加写入),表结构如下,同时备份到Hbase一份,表结构同MySQL表的。请在将任务启动命令截图,启动且数据进入后按照设备id倒序排序查询threemin_warning_state_agg表进行截图,第一次截图后等待三分钟再次查询并截图,将结果截图粘贴至对应报告中。
连接kafka
val kafkaSource=KafkaSource.builder()
.setTopics("ChangeRecord")
.setBootstrapServers("bigdata1:9092")
.setValueOnlyDeserializer(new SimpleStringSchema())
.setStartingOffsets(OffsetsInitializer.earliest())
.build()
设置flink流处理环境
val env:StreamExecutionEnvironment=StreamExecutionEnvironment.getExecutionEnvironment
env.setParallelism(1)
从kafka源创建数据流
val dataStream = env.fromSource(kafkaSource, WatermarkStrategy.noWatermarks(), "03")
- formSource : 从外部数据源创建一个数据流
- kafkaSource : kafka地址及配置
- WatermarkStrategy.no