Apache Flink 在快手的应用与实践

Apache Flink 在快手的应用与实践_第1张图片

一.Flink 在快手应用场景与规模

1. Flink 在快手应用场景

Apache Flink 在快手的应用与实践_第2张图片

Apache Flink 在快手的应用与实践_第3张图片

Apache Flink 在快手的应用与实践_第4张图片

Apache Flink 在快手的应用与实践_第5张图片

Apache Flink 在快手的应用与实践_第6张图片

Apache Flink 在快手的应用与实践_第7张图片

2.Flink 集群规模

Apache Flink 在快手的应用与实践_第8张图片

Apache Flink 在快手的应用与实践_第9张图片

1.场景优化

1.1 Interval Join 应用场景

Apache Flink 在快手的应用与实践_第10张图片

Apache Flink 在快手的应用与实践_第11张图片

1.2 Interval Join 场景优化

Apache Flink 在快手的应用与实践_第12张图片
1.2.1 Interval Join 原理:

Apache Flink 在快手的应用与实践_第13张图片

Apache Flink 在快手的应用与实践_第14张图片
1.2.2 状态存储策略选择

Apache Flink 在快手的应用与实践_第15张图片

Apache Flink 在快手的应用与实践_第16张图片

1.2.3 RocksDB 访问性能问题

Apache Flink 在快手的应用与实践_第17张图片

Apache Flink 在快手的应用与实践_第18张图片

Apache Flink 在快手的应用与实践_第19张图片

1.2.5 RocksDB 磁盘压力问题
Apache Flink 在快手的应用与实践_第20张图片

Apache Flink 在快手的应用与实践_第21张图片

2.稳定性改进

Apache Flink 在快手的应用与实践_第22张图片

Apache Flink 在快手的应用与实践_第23张图片

2.1 数据源控速

Apache Flink 在快手的应用与实践_第24张图片

Apache Flink 在快手的应用与实践_第25张图片

Source 控速策略

Apache Flink 在快手的应用与实践_第26张图片

Apache Flink 在快手的应用与实践_第27张图片

Source 控速策略详细细节

Apache Flink 在快手的应用与实践_第28张图片

SourceTask 共享状态

Apache Flink 在快手的应用与实践_第29张图片

Apache Flink 在快手的应用与实践_第30张图片

Apache Flink 在快手的应用与实践_第31张图片

Source 控速结果

Apache Flink 在快手的应用与实践_第32张图片

拿线上作业,使用 Kafka 从最早位置(2 days ago)开始消费。如上图,不限速情况下State 持续增大,最终作业挂掉。使用限速策略后,最开始 State 有缓慢上升,但是 State 大小可控,最终能平稳追上最新数据,并 State 持续在 40 G 左右。

2.2 JobManager 稳定性

Apache Flink 在快手的应用与实践_第33张图片

Apache Flink 在快手的应用与实践_第34张图片

2.3 作业频繁失败

Apache Flink 在快手的应用与实践_第35张图片

Apache Flink 在快手的应用与实践_第36张图片

3.平台化建设

3.1 平台建设:

Apache Flink 在快手的应用与实践_第37张图片

Apache Flink 在快手的应用与实践_第38张图片

3.2 问题定位流程优化:

Apache Flink 在快手的应用与实践_第39张图片

Apache Flink 在快手的应用与实践_第40张图片

大家都在看

Flink系列:


- END -

640?wx_fmt=jpeg

你可能感兴趣的:(Apache Flink 在快手的应用与实践)