专栏名称: 阿里开发者
阿里巴巴官方技术号,关于阿里的技术创新均将呈现于此
目录
相关文章推荐
阿里开发者  ·  Apache Flink 的过去、现在及未来 ·  昨天  
白鲸出海  ·  俄罗斯,已经离不开中国了 ·  昨天  
白鲸出海  ·  中国互联网出海一周头条 ... ·  2 天前  
白鲸出海  ·  被迫转型后,9人团队把AI写作做到500万美 ... ·  4 天前  
白鲸出海  ·  AI推动谷歌收入超预期增长,App ... ·  6 天前  
51好读  ›  专栏  ›  阿里开发者

Apache Flink 的过去、现在及未来

阿里开发者  · 公众号  · 科技公司  · 2024-11-05 08:30

正文

Apache Flink 是 Apache 软件基金会的顶级项目,是一款开源的分布式大数据实时处理框架,专为高吞吐量、低延迟的数据流处理而设计。它具备统一的流批一体处理能力,提供精确一次的状态一致性保证,越来越多的企业选择将 Apache Flink 应用于自身丰富的业务场景,如实时数仓、实时推荐、实时分析、实时大屏、实时风控等,解决实时计算的需求。Apache Flink 自诞生以来,迄今为止已覆盖海内外数千家企业的实时计算需求,涉及行业包括互联网、电商、在线教育、游戏、金融、制造业、新能源汽车等行业。

自加入 Apache 后不久,Flink就开始快速迭代其版本,引入了许多重要的特性如内存管理优化、新的API等,这些都极大地增强了系统的性能与可用性。目前 Apache Flink 社区正在积极准备 Flink 2.0,这是自 Flink 1.0 发布 8 年以来的首次大版本发布。作为一个重要的里程碑,Flink 2.0 将引入许多激动人心的功能和改进,以及一些不兼容的破坏性变更。为了促进用户和上下游项目(例如,连接器)尽早适配这些变更,提前尝试这些令人兴奋的新功能同时收集反馈,我们现在提供了 Flink 2.0 的预览版本。

重要新特性

如今,Apache Flink 已经成长为一个极为成熟的大数据处理平台,在全球范围内得到了许多大型企业的青睐,广泛应用于构建实时分析系统、ETL 流程及复杂事件处理等多种场景中。近年来,Flink 开发团队持续推动技术创新,包括但不限于基于远程存储实现的存算分离状态管理机制、物化视图的支持、批处理任务自适应执行策略等。此外,还特别值得一提的是 Paimon 与 Flink 更深层次集成所带来的全新可能性。所有上述进展均已在 Flink 2.0 预览版本中实现,欢迎各位提前尝试并给予反馈~

1. 存算分离状态管理

过去十年间 Flink 的部署模式、工作负载和硬件的架构都发生了很大的改变。我们已经从计算-存储紧密耦合的 map-reduce 时代,进入到了以 Kubernetes 容器化部署为标准的云原生世界。为了 Flink 在云原生时代的未来,我们在 Flink 2.0 中引入了基于远程存储的存算分离状态管理。

存算分离架构的引入使得 Flink 向云原生领域更进一步。新架构主要解决了以下问题:

  1. 容器化环境下计算节点受本地磁盘大小限制的问题;
  2. 由于RocksDB中LSM结构的周期性 Compaction 导致计算资源尖峰的问题;
  3. 大规模状态快速扩缩容的挑战;
  4. 原生的轻量级和快速检查点;

受限于 Flink 中现有的阻塞式同步执行模型,仅仅将状态存储扩展到从远程 DFS 读写是不够的。在 Flink 2.0 中,我们提出了异步执行模型,并为此引入了 ForStDB,这是一种分离的状态后端解决方案。

在当前预览版本下,我们使用: NexmarkQ20 完成了一个端到端的示例。 其中包括:

  • 异步化执行:完整的状态异步访问的API,以及检查点支持;
  • 异步化SQL Join算子:基于异步化状态 API实现;
  • 同步/异步混合式执行:基于混合式SQL Plan,支持同步算子与异步算子在一个作业内共存;
  • 性能:在直接写入存算分离后的远端存储的场景下,提供了不错的性能;

  • Nexmark:https://github.com/nexmark/nexmark


2. 物化表

在 Flink 1.20 中,我们以最简可行产品(Minimum Viable Product) 的形式引入了物化表功能。物化表是 Flink SQL 中的一种创新型表类型,旨在进一步简化流和批作业的数据处理流程,同时提供统一的开发体验。在即将发布的 Flink 2.0 中,我们正在增强物化表所支持的功能,包括与主流的湖格式进行集成以及生产就绪的调度器实现。

3. 批作业的自适应执行

此外,Flink 正在不断提升其自适应批处理能力。即将发布的 Flink 2.0 将具备基于作业已完成的阶段所提供的信息,对逻辑计划和物理计划进行动态优化的能力。初步支持的策略包括动态应用 Broadcast Join 以及对数据倾斜的 Join 进行优化。

4. 流式湖仓

以 Apache Flink 和 Apache Paimon 的集成为代表的流式湖仓架构将湖仓范式中统一的数据存储、开放格式和成本效益扩展到了实时领域。即将发布的 Flink 2.0 在 Flink 和 Paimon 的集成方面迈出了重要一步:Flink 和 Paimon 社区正在密切合作,充分结合彼此的优势以及核心功能,带来了诸多重要改进,包括但不限于:使用 Paimon 丰富的合并引擎进行 SQL 执行计划优化、大幅提升 Lookup-Join 的性能、支持 Flink 物化表、以及对自适应批处理和推测执行的支持。

更多有关 Flink 2.0 预览版本内容,欢迎跳转学习观看~

https://developer.aliyun.com/article/1629262

Flink Forward Asia 2024 上海站

随着 Apache Flink 2.0 的预览版发布,Flink 正式迈入了其发展历程中的下一个重要里程碑。这将是自 Flink 1.0 推出以来历经8年的首次重大版本更新。在 Apache Flink 诞生 10 周年之际,有一个绝佳的机会为广大开发者分享 Flink 最近 10 年在技术和生态上的演进历程和关键成果,并基于当前 AI 时代下的新场景,展望未来 10 年 Flink 新的发展方向和规划。同时大会将带您全面了解 Flink 2.0 版本,还可以同业界大佬共同探讨 Apache Flink 的过去、现在及未来,以及其在实际应用中的潜力。


The Past, Present, and Future of Apache Flink阿里云智能开源大数据平台负责人王峰老师会分享从Apache Flink 的诞生到成为流计算领域的事实标准,回顾过去十年间Apache Flink的发展历程,不仅包含了Flink 在技术革新与生态建设方面取得的关键成就,还会探讨AI新时代背景下,Flink 如何适应不断变化的需求,并预测未来十年内它可能采取的发展路径及目标设定。 

即将发布的 Flink 2.0 版本,是自 2016 年 Flink 1.0 发布以来,该框架经历的最大规模更新之一。《Apache Flink 2.0: Streaming into the Future宋辛童、梅源和李麟三位阿里云智能技术专家将共同聚焦并将深入解析这一里程碑式版本所带来的技术创新点,以及这些变化对当前大数据处理乃至人工智能领域可能产生的长远影响。

在阿里巴巴集团及其他多个行业已成功实施应用的高效的数据湖仓系统,是通过结合Apache flink构建的顶级项目。《Paimon 1.0: Unified Lake Format for Data + AI》李劲松老师将详细介绍今年刚毕业为 Apache 顶级项目的 Paimon。此外,来自淘天、vivo 及抖音等企业的嘉宾还将分享各自基于 Paimon+Flink 架构的实际案例,展示如何加速实现数据湖内的实时流动与分析能力。

在《Fluss: Next-Gen Streaming Storage for Streaming Analytics》这一主题中,伍翀老师将介绍一种专为流分析设计的新一代存储解决方案——Fluss。重点讨论 Fluss 如何有效解决当前流存储方案中存在的挑战,并详细介绍其核心功能特点、适用场景及其带来的优势。同时也会探讨 Fluss 与现有湖存储技术之间的整合可能性及其后续发展蓝图。

“AI时代下的大数据技术未来路在何方?”

对话嘉宾将基于各自的研究背景与实践经验,就如何更好地融合AI与大数据处理技术、应对行业新趋势等问题进行深度对话。而这样的探讨,会为您带来什么样的思考与应用呢?

如果您想要深入了解大数据技术,想要学习更多 Apache Flink 的相关知识,即将于 11 月 29 至 30 日上海举行的 Flink Forward Asia 2024大会将为大家提供一个绝佳的机会!

更多精彩请点击 阅读原文 进入官网即刻报名参会吧!