Flink Forward Asia 2022 将于 11 月 26-27 日在线上举办,议程内容正式上线!
FFA 2022 官网:https://flink-forward.org.cn/
由 Apache Flink 核心贡献者与来自阿里巴巴、字节跳动、华为、Shopee、bilibili、美团等公司的一线技术专家解析 Flink 技术动向与应用实践,回归技术本质,打造全方位技术盛宴。
Flink 容错 2.0 的最新进展
梅源|阿里云 Flink 存储引擎团队的负责人,Apache Flink 引擎架构师,Apache Flink PMC & Committer
Flink 是业界公认的大数据领域实时计算的标准,尽管如此我们也一直没有放松 Flink 在实时计算部分的进一步深耕与努力。这个 talk 将汇报 Flink 容错在过去一年中取得的一些进展和成果以及未来的展望。
首先第一部分就是过去一年中我们在 checkpoint 这个部分做的提升。随着 Generic log-based incremental checkpoints 的进一步完善,Checkpoint 这个部分的提升(快速稳定的 checkpoint)也逐步趋于成熟。
在这个 talk 中,我将分享一些 Changelog,unaligned checkpoint 以及 buffer debloating 相结合起来的实验结果。同时我也会讲一讲云原生背景下 rescaling 这个部分以及的一些提升,以及社区在统一 Snapshot 这个概念和操作方面所做的一些努力。
Flink Shuffle 3.0: Vision, Roadmap and Progress
宋辛童|阿里云高级技术专家,Apache Flink PMC Member & Committer
Flink 诞生至今,其 Shuffle 架构的演进可以分为两个阶段:
- 初期的 1.0 阶段仅支持最基础的数据传输功能;2.0 阶段围绕性能、稳定性与流批一体架构做出了一系列的改进。
- 如今,随着 Flink 的应用场景与形态越来越丰富,Shuffle 架构也面临着众多新的挑战与机遇,即将迈入 3.0 阶段。
本次分享,我将围绕云原生、流批融合、自适应等关键词,展现我们所描绘的 Flink Shuffle 3.0 蓝图,并介绍相关工作的规划与进展情况。具体内容包括:流批自适应 Hybrid Shuffle、云原生多级存储自适应 Shuffle、Shuffle 整体架构升级与功能整合等。
Adaptive and flexible execution management for batch jobs
朱翥|阿里云高级技术专家,Apache Flink PMC & Committer
为了更好的支持批处理作业的执行,提高其易用性、执行效率和稳定性,我们改进了 Flink 的执行管控机制:
- 支持动态执行计划,使得 Flink 可以基于运行时的信息来调整执行计划。基于此,我们为 Flink 引入了自动并行度设置、自动均衡下发数据量的能力。
- 支持更灵活(更细粒度)的执行管控,使得 Flink 可以同时运行多个相同任务的执行实例。
基于此,我们为 Flink 引入了预测执行的能力。除此之外,这些改进的机制也为将来进一步优化 Flink 作业执行提供了更多的可能。
Flink OLAP Improvement of Resource Management and Runtime
曹帝胄|字节跳动基础架构工程师
Flink OLAP 作业 QPS 和资源隔离是 Flink OLAP 计算面临的最大难题,也是字节跳动内部业务使用 Flink 执行 OLAP 计算需要解决的最大痛点。字节跳动 Flink 技术团队在去年作业调度和执行优化的基础上,对 Flink 引擎架构和功能实现进行大量深入优化,使 Flink 引擎在小规模数据量下,复杂作业执行的 QPS 从 10 提高到 100 以上,简单作业执行的 QPS 从 30 提高到 1000 以上。本次分享将从 Flink OLAP 难点和瓶颈分析、作业调度、Runtime 执行、收益以及未来规划等五个方面进行介绍。
- 介绍 Flink 在 OLAP 遇到的难点和瓶颈。
作业调度
- 从 Slot 粒度到 TaskManager 粒度的作业资源注册、申请和释放流程改造
- 作业初始化 JobManager 和 TaskManager 模块交互优化,支持跨作业 TaskManager 连接复用
- 作业计算任务部署结构和序列化优化
Runtime 执行
- 作业提交和结果获取从 Pull 模型到 Push 模型
- TaskManager 高并发初始化计算任务 CPU 瓶颈和优化
- JobManager 和 TaskManager 作业执行内存优化
收益
- 调度性能提升
- 核心业务接入
收益以及未来规划
- Serverless 能力建设
- 性能提升
PyFlink 最新进展解读及典型应用场景介绍
付典|阿里云高级技术专家,Apache Flink PMC & Committer
PyFlink 是从 Flink 1.9 开始引入的新功能,支持用户使用 Python 语言开发 Flink 作业,极大地方便了 Python 技术栈的开发人员,降低了 Flink 作业的开发门槛,同时也方便用户在 Flink 作业中使用丰富的 Python 三方库,极大地拓宽了 Flink 的应用场景。经过 Flink 1.9 到 Flink 1.16 多个版本的功能迭代,目前 PyFlink 功能已经日趋成熟,基本覆盖了 Flink Java & Scala API 中所提供的绝大多数功能。
在本次分享中,我们首先将简要介绍一下 PyFlink 项目当前所处的状态以及在刚刚发布的 Flink 1.16 版本中所支持的新功能;然后我们会通过一些具体的例子,对 PyFlink 的典型应用场景进行深入的解读,让用户对 PyFlink 的一些典型用法以及应用场景有一个直观的了解。
Apache Flink 1.16 功能解读
黄兴勃|阿里云高级开发工程师,Apache Flink Committer,Flink 1.16 Release Manager
Apache Flink 一直以来都是 Apache 社区最活跃且持续高速发展的项目之一,在过往的每次版本发布中,Apache Flink 都会带来很多新功能、新特性,刚刚发布的 Flink 1.16 也同样如此。
在本次分享中,我们将首先介绍一下 Flink 1.16 的整体情况;然后我们将从三个方面来深入讲解 Flink 1.16 在流批一体的大方向上所做的改进,它们分别是:
- 更稳定易用高性能的 Flink 批处理;
- 持续领先的 Flink 流处理;
- 蓬勃发展的 Flink 生态。
Apache Flink + Volcano: 大数据场景下高效调度能力实践
姜逸坤|Volcano Reviewer,openEuler Infra Maintainer
王雷博|华为云容器服务架构师、Volcano 社区负责人
Flink on Kubernetes 得到了越来越多的关注和使用,由于 Kubernetes 对批量调度支持缺乏,导致大数据场景调度经常出现资源死锁的问题,同时,缺乏队列、优先级、资源预留、多样性算力调度等高级能力。
本议题将介绍 Apache Flink 社区 FLIP-250: Support Customized Kubernetes Schedulers Proposal 的最新进展和最佳实践。
Flink OLAP 在字节跳动的查询优化和落地实践
何润康|字节跳动基础架构工程师
本次分享将主要分为 Flink OLAP 在字节跳动的业务实践以及遇到的问题,OLAP 集群运维和稳定性治理,SQL Query Optimizer 优化,Query Executor 优化,收益和未来规划等五个部分进行介绍。
Flink OLAP 在字节跳动的应用
- 总体架构,Flink OLAP 在字节跳动的落地情况
- 介绍业务使用过程中,运维、监控、稳定性、查询性能方面的要求和问题
Flink OLAP 集群运维和稳定性
- Flink OLAP 监控体系完善 VS 流计算
- Flink OLAP 发版和稳定性治理 VS 流计算
Query Optimizer 优化
- Plan 构建加速,包括 Plan Cache,Catalog Cache 等
- Optimizer 优化,丰富优化规则,包括下推能力增强,Join Filter 传递,统计信息增强等
Query Executor 优化
- 内存优化,包括 Codegen cache,ClassLoader 复用
- RuntimeFilter 优化
收益和未来规划
- 产品化完善,向量化引擎,物化视图,Optimizer 演进
Flink Connector 社区新动向与开发指南
罗根|阿里云技术专家
任庆盛|阿里云开发工程师,Apache Flink Committer
作为 Flink 生态的重要组成部分,connector 接口与通用组件在不断迭代以支持更多种类的外部系统。本议题将介绍 Flink connector 在社区的新功能与接口,包括 Sink V2 API,通用维表缓存框架,向 Apache Flink 贡献 connector 的流程,以及如何快速开发一个新的 connector 来对接外部系统。
基于 Log 的通用增量 Checkpoint
俞航翔|Apache Flink Contributor
FLIP-158 引入的 ChangelogStateBackend 可以为用户作业提供更稳定快速的 Checkpoint,进一步提供更快速的 Failover 过程,同时为 Transactional sinks 作业提供更小的端到端延迟。
本议题将从 Checkpoint 的性能优化历程出发,介绍 ChangelogStateBackend 的基本机制、应用场景和未来规划,同时分享相关的性能测试结果。
Flink Unaligned Checkpoint 在 Shopee 的优化和实践
范瑞|Tech Lead of Shopee Flink Runtime Team,Apache StreamPark Committer & Flink/Hadoop/HBase/RocksDB Contributor
Shopee 在 Flink 生产实践中,遇到了很多 Checkpoint 相关的问题,并尝试引入 Unaligned Checkpoint 解决部分问题。但调研后发现效果与预期有一定差距,所以在内部版本对其进行了深度改进,并将大部分改进已经反馈给了 Flink 社区。
这次演讲会包含以下内容:
- Checkpoint 存在的问题
- Unaligned Checkpoint 原理介绍
- 大幅提升 UC 收益
- 大幅降低 UC 风险
- UC 在 Shopee 的生产实践和未来规划
Flink state 优化以及远程 state 的探索
张杨|bilibili 资深开发工程师
- Flink rocksdb state 的优化,调优了压缩流程,在大 state 任务场景,提升吞吐。
- Flink remote state 探索,基于 bilibili 内部的 kv 存储,实现存算分离,加速任务恢复,同时更好的支持 Flink 的云原生部署。
StateBackend performance improvement with TerarkDB
李明|字节跳动基础架构工程师
王义|字节跳动基础架构工程师
TerarkDB 是字节跳动内部对 RocksDB 做了较多的优化后衍生出的 LSM 存储引擎,以提高存储引擎的性能,降低资源开销等。本次分享将从背景、业务痛点、Flink & TerarkDB 集成、收益以及未来规划等五个方面进行介绍。
介绍 RocksDBStateBackend 在生产实践中遇到的问题
- 写放大严重导致 CPU 消耗和磁盘 IO 高
- SST 文件清理策略不通用导致空间不断膨胀
- Checkpoint 和 Compaction 共振导致 CPU 周期尖刺
介绍 TerarkDB 的核心优化,并和 RocksDB 进行对比
- KV 分离机制:降低写放大,减少资源使用
- Schedule TTL GC:加速文件回收,避免文件无法回收
Flink & TerarkDB 集成方案
- Flink 与 TerarkDB JNI 接口进行适配,支持 Flink Compaction FIlter
- 支持 RocksDB 和 TerarkDB 两种 StateBackend 共存
- 提供新的 Checkpoint 机制消除 CPU 周期尖刺
- 业务收益
- 未来规划
基于 Log 的通用增量 Checkpoint 在美团的进展
王非凡|美团数据平台计算引擎工程师,Apache Flink Contributor
State Changelog based checkpoint 是 checkpoint 机制的一个重要演进,我们认为能够解决一些业务痛点问题,因此对其进行了跟进与共建。本次分享将按以下几方面展开介绍:
- 相关背景
- 美团应用场景与验证
- State Changelog Restore 性能优化
- State Changelog 存储选型探索
- 后续规划
以上为 Flink Forward Asia 2022 核心技术专场内容节选,了解更多大会详情可点击下方链接:
移动端建议观看 ApacheFlink 视频号预约观看:
活动推荐
阿里云基于 Apache Flink 构建的企业级产品-实时计算Flink版现开启活动:
99 元试用 实时计算Flink版(包年包月、10CU)即有机会获得 Flink 独家定制卫衣;另包 3 个月及以上还有 85 折优惠!
了解活动详情:https://www.aliyun.com/product/bigdata/sc