# 学习资源
# 学习网站
- Flink视频系列 GitHub - flink-china/flink-training-course: Flink 中文视频课程(持续更新...) (opens new window)
- 官方网站 Apache Flink: Stateful Computations over Data Streams (opens new window)
# Meetup
# Apache Kafka × Apache Flink Meetup - 北京站
- 范新普《Flink State在奇虎360的实践》
- 王杰朝《Apache Flink+Apache Kafka在Vipkid的实践》
- 乔超《Apache Kafka在京东的演进和实践》
- 杨永辉《美团数据平台Apache Kafka系统实践》
- 龚云飞《Apache Kafka在字节跳动的实践和灾备方案》
- 周凯波《Apache Flink结合Apache Kafka实现端到端的一致性语义》
# 推荐博客
Flink漫谈系列
Apache Flink进阶
Flink 从 0 到 1 学习 —— Apache Flink 介绍 | zhisheng的博客 (opens new window)
精通Apache Flink必读系列文章_大数据_ffjl1985的专栏-CSDN博客 (opens new window)
基于Canal与Flink实现数据实时增量同步(二) | Jmx's Blog (opens new window)
- Binlog to StreamingFileSink
- Hive 表还原,使用full outer join
- COALESCE
项目实例
- [Scala] Flink项目实例系列(零) (opens new window) [Scala] Flink项目实时热门商品统计(一) (opens new window) [Scala] Flink项目实时流量统计(二) (opens new window) [Scala] Flink项目恶意登录监控(三) (opens new window) [Scala] Flink项目订单支付失效监控(四) (opens new window) [Scala] Flink项目订单支付实时对账(五) (opens new window) [Scala] Flink项目小彩蛋(六) (opens new window)
Flink State 最佳实践 - (opens new window)
- 笔记 [Flink State最佳实践](/bigdata/flink/学习笔记Flink State最佳实践)
# 源码解析
- miaowenting
- Flink 系列文章目录 - 简书 (opens new window)
- Flink原理与实现:详解Flink中的状态管理-阿里云开发者社区 (opens new window)
- Keyed State。,就是基于KeyedStream上的状态。这个状态是跟特定的key绑定的,对KeyedStream流上的每一个key,可能都对应一个state。
- Operator State 并发实例绑定,每个operater一个state
- 原始状态和托管状态
- 托管状态 是flink框架管理的,如 valuestate。liststate mapstate
- raw state。原始状态,有用户自行管理状态数据结构,框架在做checkpoint的时候,使用byte[] 来读取状态内容,对其内部数据结构一无所知 通常使用flink的托管状态
- 托管状态 是flink框架管理的,如 valuestate。liststate mapstate
- Apache Flink 进阶(三):Checkpoint 原理解析与应用实践-阿里云开发者社区 (opens new window)
- 浅谈 Flink - Transformations - Ying's Blog (opens new window)
- 解读 DataSteram Transformation Operator 之间的关系
# 大厂实践
# OPPO
# 有赞
# 趣头条
- 趣头条基于Flink+ClickHouse的实时数据分析平台 (opens new window)
- Flink to hive
- 原理
- StreamingFileSink
- 功能
- forBulkFormat支持avro、parquet格式
- 按照数据时间粪桶 withBucketAssigner
- Exactly-Once
- 原理
- Flink to Click House
- Flink to hive