Flink系列文章

1 概念

  • Flink学习1-基础概念
  • Flink-水位
  • Flink-作业提交流程
  • 浅析背压(Back Pressure)机制及其在 Spark & Flink中的实现
  • Java-SPI在Flink中的应用
  • 漫画 | flink watermark 一定只能用时间戳衡量???
  • 深入解析 Flink 的算子链机制
  • Flink State 误用之痛,竟然 90% 以上的 Flink 开发都不懂
  • Flink1.10系列:状态管理解读
  • Flink 1.11 Unaligned Checkpoint 解析
  • Flink 1.11 新特性详解:【非对齐】Unaligned Checkpoint 优化高反压
  • 深入解读 Flink 资源管理机制
  • Flink 端到端 Exactly-once 机制剖析
  • 一文搞懂 Flink 的 Exactly Once 和 At Least Once
  • flink tablen 打印_flink

2 安装和配置

  • Flink学习2-安装和启动

3 使用

3.1 概览

  • Flink学习3-API介绍

3.2 DataStream

3.2.1 概览

  • Flink-DataStream-HDFSConnector(StreamingFileSink)
  • HDFS租约与Flink StreamingFileSink
  • Flink学习-DataStream-KafkaConnector

3.2.2 原理

  • Flink Kafka 端到端 Exactly-Once 分析

3.2.3 例子

  • Flink-StreamingFileSink-自定义序列化-Parquet批量压缩
  • Flink-使用rowtime且分窗,Connector读取Kafka写入MySQL例子

3.3 Table&Sql API

3.3.1 概念

  • Flink学习4-流式SQL
  • Flink-FilesystemConnector和HiveConnector
  • Flink-流式SQL源码分析
  • Flink-时间窗口源码分析
  • 阿里伍翀-flinkSql1.11demo 补链: https://ververica.cn/developers/demo-flink-sql/

3.3.2 原理

  • Flink 原理与实现:Table & SQL API
  • Flink SQL 如何实现数据流的 Join

3.3.3 使用

  • flink sql 去重算法优化
  • Flink SQL 实战:HBase 的结合应用
  • Flink 双流 Join 的3种操作示例
  • Flink 使用 broadcast 实现维表或配置的实时更新

4 流平台

  • Flink-流平台调研
  • Flink-Zeppelin On FlinkSql
  • BIGO 实时计算平台建设实践
  • bilibili 实时平台的架构与实践
  • 爱奇艺实时计算平台这样做
  • 汽车之家基于 Flink 的实时 SQL 平台设计思路与实践

5 Flink和其他技术

  • HDFS租约与Flink StreamingFileSink
  • Flink-Zeppelin On FlinkSql
  • Flink 如何读取和写入 Clickhouse?
  • Structured Streaming VS Flink

6 常见问题

  • Flink学习6-常见问题
  • 在 Flink 算子中使用多线程如何保证不丢数据?

7 新特性

  • Flink 1.10
  • Flink 1.11
  • Flink 1.12

8 源码

8.1 源码编译

  • 官网-Building Flink from Source
  • Flink 源码解析 —— 源码编译运行 来自阿里大佬zhisheng_blog
  • Flink源码编译部署Flink 简单明了
  • Flink 1.10源代码编译,基于Flink release-1.10分支 mvn clean install -T 2C -Dfast -Dmaven.compile.fork=true -DskipTests -Dscala-2.11快速编译

8.2 源码解析

  • Flink-基于Netty的网络通信
  • 阅读源码|Spark 与 Flink 的 RPC 实现
  • 两个递归彻底搞懂operator chain

8.3 源码二次开发和Bug修复

  • Flink-源码Bug修复和二次开发实践

9 博客

  • Flink官方博客

10 教程

  • Apache Flink 钉钉群直播教程-基础篇
  • Apache Flink 钉钉群直播教程-进阶篇
  • Apache Flink 钉钉群直播教程-实时数仓篇
  • Flink 社区最全学习渠道汇总

11 应用和实践

11.1 综合

  • Apache Flink在滴滴的应用与实践
  • bilibili 实时平台的架构与实践
  • 日均处理万亿数据!Flink在快手的应用实践与技术演进之路
  • Flink 在有赞实时计算的实践

11.2 实时数仓

  • 实时数据架构,终于有人把他说清楚了!
  • ULTRON — 基于Flink的实时数仓平台
  • Flink1.11+Hive批流一体数仓
  • 生产实践 | Flink 如何建设实时公共画像维表?
  • 网易云音乐基于 Flink + Kafka 的实时数仓建设实践
  • 进击的 Flink:网易云音乐实时数仓建设实践
  • 当 TiDB 与 Flink 相结合:高效、易用的实时数仓
  • 基于 Flink + Hive 构建流批一体准实时数仓
  • 王者荣耀背后的实时大数据平台
  • 腾讯看点基于 Flink 的实时数仓及多维实时数据分析实践
  • 滴滴基于 Flink 的实时数仓建设实践
  • 基于 Flink 的典型 ETL 场景实现方案
  • 字节跳动基于Flink的MQ-Hive实时数据集成
  • 美团点评 Flink 实时数仓应用经验分享
  • 美团点评基于 Flink 的实时数仓平台实践
  • 菜鸟实时数仓技术架构演进
  • 知乎实时数仓架构演进
  • 小米流式平台|实时数仓架构演进与实践
  • OPPO 数据中台之基石:基于 Flink SQL 构建实数据仓库

11.3 实时分析

  • 生产实践 | Flink + 直播(三)| 如何建设当前正在直播 xx 数?
  • 基于Flink的用户行为日志分析系统
  • Apache Flink OLAP引擎性能优化及应用
  • Flink在快手实时多维分析场景的应用
  • 趣头条基于Flink+ClickHouse的实时数据分析平台
  • 基于 Flink 的超大规模在线实时反欺诈系统的建设与实践

11.4 实时监控

  • 利用InfluxDB+Grafana搭建Flink on YARN作业监控大屏
  • 从 0 到 1 搭建一套 Flink 的监控系统
  • Flink全链路延迟的测量方式

11.5 机器学习

  • Flink 在机器学习领域的生产落地
  • 如何用一套引擎搞定机器学习全流程?

11.6 实时数据湖

  • 基于 Flink+Iceberg 构建企业级实时数据湖
  • 网易:Flink + Iceberg 数据湖探索与实践

11.7 实时数据同步

  • 基于Binlog与Flink实时同步数据仓库实践
  • 基于Binlog实时同步数据仓库问题总结

11.8 优化实践

  • 快手基于 Apache Flink 的优化实践
  • Flink RocksDB 状态后端参数调优实践
  • 如何提高 CPU 利用率?Flink 该如何设定并行度?调大并行度一定会提高 Flink 吞吐吗?
  • 并行度改变引发的血案
  • Flink SQL CDC 上线!我们总结了 13 条生产实践经验
  • Flink 使用大状态时的一点优化
  • Flink State 最佳实践
  • 如何在 Flink 中规划 RocksDB 内存容量?
  • 阿里巴巴大规模应用Flink的踩坑经验:如何大幅降低 HDFS 压力?

11.9 实时推荐

  • Flink + 强化学习搭建实时推荐系统
  • 基于Flink商品实时推荐系统项目

11.10 实时数据采集

  • 基于Flink的日志采集
  • 基于 Apache Flink 的实时 Error 日志告警

11.11 其他

  • Flink去重系列,共四篇

12 面试

  • Flink面试通关手册
  • Flink面试指南 | 终于等到你,Flink PMC葵花宝典正式发布
  • Flink学习面试灵魂40问答案!
  • Flink 灵魂两百问,这谁顶得住? zhisheng

13 社区

  • 如何从 0 到 1 参与 Flink 社区?
  • Flink Contributor 速成指南