摘要:本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。内容主要分为这三个部分:
一、Apache Flink 10周年发展回顾
二、Apache Flink 当前的发展现状
三、展望新一代 Apache Flink
一、 The Past
Apache Flink 是大数据实时化升级的核心推动力
Apache Flink 起源于2009年德国柏林工业大学的一个研究项目 Stratosphere。2014 年,该项目的核心团队将其捐赠给 Apache 基金会,并更名为 Flink(德语中意为“快”),同年成为 Apache 顶级项目。几乎同时,Flink的创始团队成立了公司 DataArtisans公司 以支持其发展。
2015 年至 2016 年间,随着阿里巴巴集团业务特别是电商领域(如“双十一”购物节)的迅速扩张,对实时数据处理的需求激增。尽管阿里已有成熟的离线数据处理系统 ODPS,但对于秒级响应的实时数据处理仍面临挑战。经过评估,阿里选择了Apache Flink作为其新的实时计算平台解决方案。至 2016 年的“双十一”,Flink 已在阿里巴巴内部大规模部署并成功支持了相关活动。
阿里巴巴对 Flink 社区进行了持续的投资和支持,主要目的是推动 Flink 技术在中国乃至全球范围内的广泛应用,并促进其成长。2018 年底成立了 Flink 中文社区,并举办了首届 Flink Forward Asia 大会。至今已连续举办七届,即便在疫情期间也未中断。2019 年,阿里收购了 Flink 的创始公司 Data Artisans,之后不久,为了更好地反映公司愿景及其在全球范围内的扩张计划,Data Artisans 更名为 Ververica。同年,阿里巴巴向 Apache Flink 贡献了内部开发多年的 Blink 项目,涉及超过 150 万行核心代码。此举极大地促进了 Flink 社区自 2019 年起在全球范围内的快速发展。
Apache Flink 在过去十年中逐渐成为全球范围内广泛认可的实时流处理框架,得到了工业界和学术界的共同认可。2023 年,Flink 不仅被顶级机构 SIGMOD 授予系统大奖,还见证了多项技术创新,如阿里巴巴捐赠了 Flink CDC(一个实时数据集成框架)给 Flink 社区,并孵化出了新一代实时数据湖 Paimon。至今,Flink 拥有近 2000 位来自世界各地的贡献者,其中约 40%来自中国,显示出中国开发者在该开源项目中的活跃度。阿里巴巴对 Flink 的支持尤为突出,连续七年举办 Flink Forward 大会,促进了技术交流与分享。此外,中国的 Flink PMC 成员及 Flink 开发者们通过微信公众号等平台积极推广 Flink 相关知识和技术文章,极大地推动了 Flink 在中国乃至全球范围内的应用和发展。
Flink 之所以能够取得如此成就,关键在于它顺应了时代发展的需求,适应了近年来大数据领域从离线处理向实时处理转变的趋势,满足了包括互联网、金融、电信、能源、制造、物联网等多个行业对于更高效数据分析的需求。
二、The Present
Apache Flink 已成为大数据流计算全球事实标准
Flink 十年磨一剑,除了阿里巴巴付出非常多的努力来推动它的成长,也离不开中国广大企业、广大开发者的支持,使得 Flink 成为全球范围内大数据流计算的实时标准。其成功不仅源于时代需求,更在于优秀的技术架构设计、扎实理论基础和开放繁荣生态。作为业界首款实现流批融合的计算引擎,Flink 支持Java/SQL/Python 等多语言 API,满足了从大数据开发者到 AI 领域用户的广泛需求。通过丰富的 Connector 和 CDC 子系统,Flink 无缝连接数据库、数据仓库、数据湖等多种存储系统,成为促进不同数据系统间实时流动与分析的关键桥梁,堪称大数据生态中的“数据高速公路”。
Flink 社区一直在探索实时计算和大数据处理的边界,并对其架构进行了重大升级,其中最重要的升级是场景化扩展,使得 Flink 从最初的流式数据处理发展到了更广泛的流式湖仓(Lakehouse)架构。自 2022 年起,Flink 开始孵化子项目 Flink Table Store,旨在开发一种支持实时更新的数据湖存储格式;到 2023 年,该项目独立孵化并更名为 Paimon,现已成长为 Apache 基金会的一个顶级项目。结合使用 Flink 与 Paimon,可以实现从计算到存储的一体化解决方案,适用于构建流批一体化的新一代湖仓系统。
在这种架构下,通过 Flink CDC 工具可将外部数据实时导入 ODS 层,随后利用 Flink 提供的流批一体 SQL 功能在 Paimon 上执行 ETL 操作,从而形成一个完整的实时离线一体化处理平台。这种基于Flink+Paimon的流式湖仓架构被认为是传统 Lakehouse 架构的一种进化版本,它不仅保留了原有 Lakehouse 的优点,还额外提供了全链路实时处理能力和统一的流批处理体验。
流式湖仓作为一种创新技术架构,引起了业界不少公司的关注,并在 2024 年的多个场景中得到了实际应用。特别是在上个月刚刚结束的阿里巴巴“双十一”活动中,通过采用 Flink+Paimon 这一最新的流式湖仓架构,实现了重要业务场景的成功落地,如天猫营销分析大屏。该案例展示了如何利用统一的技术栈来处理实时与离线数据处理需求,从而保证了数据口径的一致性,并显著降低了存储和计算成本。具体来说,由于采用了同一套架构,避免了重复开发 SQL 逻辑以及双份数据存储的需求,使得整体解决方案更加高效、经济。此外,这种架构还支持运营人员实时查看商品成交来源及流量调配情况,同时允许数据分析师在夜间进行更精确的数据回刷以获取最终结果,比如反作弊信息的更新等。未来,随着更多企业对效率提升及成本控制需求的增长,预计这种新型架构将在更广泛的行业范围内得到推广和应用。
三、The Future
新一代 Apache Flink 即将发布
Flink 经过十年的发展已成为流处理领域的事实标准,接下来面对 AI 新时代、面向全面云原生时代,Flink 的技术架构也需要与时俱进的升级。在 Flink 十周年之际即将推出新一代的 Flink 架构——Flink2.0,这是自 2016 年发布 Flink 1.0 以来最大规模的技术架构升级。
Flink 2.0 的主要升级方向包括:
全面云原生架构:采用存算分离设计,将状态存储迁移至云存储中,从而显著提高系统的容错性、灾难恢复能力和弹性。
改进的流批一体计算范式:简化用户操作流程,实现更自动化、更易用的流批一体处理能力,降低用户使用门槛,提供更加端到端的服务体验。
增强AI支持:加强与AI技术特别是大模型系统的集成,使Flink能够更好地服务于 AI 应用场景,并优化与向量数据库等数据基础设施之间的交互,促进数据与AI的深度融合。
总结来说,Flink 2.0 还有非常多的新特性,在此仅做简单的预告,可以期待后续更深入地探讨,以全面揭示 Flink 2.0 的强大功能和潜力。
更多内容
活动推荐
阿里云基于 Apache Flink 构建的企业级产品-实时计算 Flink 版现开启活动:
新用户复制点击下方链接或者扫描二维码即可0元免费试用 Flink + Paimon
实时计算 Flink 版(3000CU*小时,3 个月内)
了解活动详情:https://free.aliyun.com/?utm_content=g_1000395379&productCode=sc