适逢 Apache Flink 诞生 10 周年,今年的 FFA 将与广大开发者分享 Flink 过去十年在技术和生态方面的演进历程及关键成果。同时,基于当前 AI 时代的新场景,展望未来十年 Flink 的发展方向和规划。大会还将为您提供全面了解 Flink 2.0 版本的机会,并与业界领袖共同探讨 Apache Flink 的过去、现在及未来,以及其在实际应用中的潜力。
▪️ 抛弃并行度设置:Flink 智能扩展,资源消耗最小化
在如今注重降本增效的大趋势下,大数据集群的资源优化变得至关重要。并行度全托管可以在保证 Flink 作业性能足够以及稳定的前提下,使用的资源最小化。本次分享会介绍并行度全托管的核心原理,在生产环境中遇到的一系列痛点,以及并行度全托管在 Flink 社区的进展和一系列优化。以下是本次分享的大纲:
一、为什么需要并行度全托管?
二、估算合适的并行度
三、高效扩缩容
四、生产实践 & 深度优化
五、收益分析 & 未来规划
▪️ Flink Shuffle 技术演进之路
郭伟杰|阿里云高级开发工程师,Apache Flink PMC Member
蒋晓峰|哔哩哔哩资深开发工程师,Apache Celeborn PMC Member
Shuffle 技术使得数据在分布式系统的各个节点之间流动,在计算引擎中扮演着重要角色。从 Flink 诞生起,历经了多种 Shuffle 模式,并且不断优化和演进。在 Flink 2.0 临近的这个重要时间点,本次 Talk 将带着大家回顾一下 Flink Shuffle 的技术演进之路:
▪️ 流批一体向量化引擎 Flex
刘勇|蚂蚁分布式计算引擎技术专家,Calcite Comitter,Flink Contributor
一、向量化技术背景
1.1 什么是向量化计算;1.2 向量化计算在分布式计算领域的现状;1.3 流批一体向量化引擎在蚂蚁的探索 Flex(Flink + Velox)
二、总体设计方案
三、向量化功能优化
3.1 支持更多 simd 函数;3.2 NativeCalc 算子优化;3.3 Plan 层优化;3.4 多维度、细粒度 fallback 机制
四、易用性建设
五、未来规划
▪️ Flink 2.0 存算分离状态存储 —— ForSt DB
兰兆千|阿里云技术专家,Apache Flink Committer
在 Apache Flink 十周年之际,Flink 社区提出了2.0大版本发布。其中最令人期待的改进之一是存算分离的状态管理架构演进。本次分享主要集中于 Apache Flink 存算分离的最新进展,同时也包括专为流计算存算分离设计的KV存储ForSt。主要内容分为以下几个部分:
一、Apache Flink 存算分离架构介绍
二、ForSt DB:Embedded的存算分离式KV存储
三、存算分离目前进展
四、存算分离未来展望
▪️ 打破 Watermark 壁垒:如何实现(跨)Flink 作业的实时进度感知与自动对齐
陈宇|小红书流式数据引擎开发工程师,Flink Contributor
一、 实时计算场景中,多流 Flink 作业进度不一致所带来的问题
1.1 单 Flink 作业,多流所引起的状态Size增加\Checkpoint 成本上涨\湖表就绪不及时等问题;1.2 跨 Flink 作业,维表流延迟所造成的数据 Miss 率上升引起的数据质量问题
二、如何优雅的在 Flink作业 内/间 实现进度自动对齐?
2.1 Flink 的 Watermark Alignment 解决 Flink 作业内的对齐问题;2.2 维表关联场景中的初步尝试:延迟消费数据,实现容忍维表延迟x分钟。但无法实现自动感知,产出固定延迟x分钟,时效性差;2.3 跨 Flink 作业的维表自动对齐方案:Watermark跨作业传递方案、字段粒度元数据设计、订阅观察者的设计模式、Async Lookup Timer 自动延展避免 Failover 等
三、Flink多流进度对齐在小红书实时样本场景下的大规模应用与收益
3.1 小红书实时样本数据打宽链路架构 与 样本维表数据垂直分布在多地的现状;3.2 现有架构的问题:Redis维表整库同步方案面临的昂贵的跨云带宽成本的挑;3.3 Flink(跨)作业进度对齐在新架构中扮演的重要角色与成本收益
四、 总结与展望
▪️ 突破状态恢复困境:进一步解决 Flink SQL 算子内的状态兼容性
袁奎|小红书流式数据引擎开发工程师
为了应对状态元数据变更,Flink社区提出了状态兼容迁移方案,这套方案主要聚焦于 DataStream API 编写的 Flink Jar 作业,并不能很好的覆盖 Flink SQL 的使用场景,但小红书80%的 Flink 作业都是SQL作业,对于那些有状态计算的Flink SQL作业,用户陷入修改 SQL 之后无法从状态恢复的困境。为了让用户修改SQL之后能顺利从 Checkpoint 恢复,我们改进了 Flink 社区的状态兼容迁移方案,在 Checkpoint 中存入更多算子状态元信息用于更精细化的评估算子变更情况,并增加迁移接口来升级旧状态数据;根据业务实际使用场景,我们对无限流上聚合、窗口聚合、去重等最常用的有状态算子进行了状态兼容支持,同时适用于 RocksDB 和 HashMap 两种状态后端。另一类常见的 SQL 变更之后无法从状态恢复的场景是使用 Async Wait Operator 的场景,Async Wait Operator 利用状态保证数据不会丢失,但本身并不依赖状态进行计算,我们改进了这个算子,摒弃状态并且确保不会丢失数据,从而避免 SQL 变更后无法从状态恢复的情况。这套方案上线后在商业化实时数仓等领域得到广泛应用,得益于这套方案,业务迭代速度从天级缩短到分钟级,同时降低了计算和存储成本以及作业复杂度。
▪️ 极致性能优化:使用 Apache Fury 高性能序列化框架加速 Flink 数据传输和状态读写性能
杨朝坤|蚂蚁技术专家,Apache Fury创始人,Ray核心开发者,Mars Maintainer
一、Apache Fury 序列化框架介绍
二、Flink 数据传输和状态读写瓶颈
三、使用 Apache Fury 加速 Flink 计算性能
四、深入理解 Apache Fury 原理
五、Apache Fury 社区与未来展望
▪️ Flink 批处理作业的自适应执行计划优化
孙夏|爱橙科技高级开发工程师, Flink Contributor
为了进一步优化Flink批任务的易用性和执行效率,我们在Flink 2.0支持了批作业的自适应逻辑执行计划的生成和调度能力,使得 Flink 可以基于运行时信息对算子的逻辑和数据分区方式进行调整。本次分享的内容将围绕以下三个方面展开:
一、Flink 批处理自适应逻辑执行计划生成和调度。
二、自适应 Broadcast Join。
三、自适应 Skewed Join 优化。
▪️ Flink 基于 Paimon 的实时湖仓解决方案的演进
苏轩楠|阿里云高级研发工程师,Apache Flink Committer,Apache Paimon Contributor
实时计算引擎 Apache Flink 与实时湖仓格式 Apache Paimon 深度结合,已经作为成熟的解决方案广泛应用于实时湖仓场景中。随着 Flink 2.0 和 Paimon 1.0 两个重要版本的规划推进,两个社区持续深入合作,不断优化用户在这些场景中遇到的性能和易用性等问题。在本次演讲中,我们将分享近期在 Flink + Paimon 的数据读写、查询、湖表管理方面的改进,并探讨 Flink 和 Paimon 社区未来的工作规划以及探索方向。
一、简要介绍 Paimon 实时湖仓场景,以及 Flink + Paimon 在流批一体与实时湖仓领域的背景和优势
二、介绍 Flink + Paimon 在数据读写与查询,以及湖表管理方面上近期一些技术进展
三、探讨 Flink + Paimon 社区未来的工作规划以及探索方向。
▼ 「大会报名」扫码立即参会报名 ▼