培训对象: 实时计算工程师、大数据开发人员、流处理应用开发者、数据平台架构师。
培训目标:
理解Flink的流批一体架构和运行原理。
掌握DataStream API进行流处理开发。
熟练使用Flink的窗口函数和状态管理。
具备Checkpoint配置和Exactly-Once语义保证能力。
培训内容介绍:
二、 Flink部署与开发环境: 搭建Flink本地集群,配置IDE开发环境,熟悉Flink命令行操作。
三、 DataStream API基础: 创建执行环境,定义Source(Socket、Kafka)、Transformation(map、filter)和Sink。
四、 时间语义与Watermark: 理解事件时间、摄入时间、处理时间的区别,设置Watermark处理乱序数据。
五、 窗口函数深度应用: 实现滚动窗口(Tumbling)、滑动窗口(Sliding)和会话窗口(Session),使用ReduceFunction和ProcessWindowFunction。
六、 状态管理与容错: 理解Keyed State和Operator State,使用ValueState、ListState维护状态数据。
七、 Checkpoint与Savepoint: 配置Checkpoint实现故障恢复,使用Savepoint进行作业升级和迁移。
八、 Exactly-Once语义保证: 理解端到端的Exactly-Once实现,配置Kafka Source和Sink的Exactly-Once语义。
九、 Table API与SQL: 使用Table API和Flink SQL进行流式查询,处理动态表的变化。
十、 Flink与Kafka集成: 配置Kafka连接器,消费和写入Kafka消息,处理JSON格式数据。
十一、 Flink性能优化: 调整并行度、缓冲区大小、状态后端(RocksDB),优化大状态作业性能。
十二、 实战项目:实时风控系统: 开发Flink实时风控应用,处理用户行为流,结合状态计算规则,实时识别风险交易。