The?Past,?Present?and?Future?of?Apache?Flink

摘要:本文整理自阿里云開源大數(shù)據(jù)負(fù)責(zé)人王峰(莫問)在 Flink Forward Asia 2024 上海站主論壇開場的分享,今年正值 Flink 開源項(xiàng)目誕生的第 10 周年,借此時(shí)機(jī),王峰回顧了 Flink 在過去 10 年的發(fā)展歷程以及 Flink社區(qū)當(dāng)前最新的技術(shù)成果,最后展望下一個(gè)十年 Flink 路向何方。內(nèi)容主要分為這三個(gè)部分:

一、Apache Flink 10周年發(fā)展回顧

二、Apache Flink 當(dāng)前的發(fā)展現(xiàn)狀

三、展望新一代 Apache Flink

一、 The Past

Apache Flink 是大數(shù)據(jù)實(shí)時(shí)化升級的核心推動力

Apache Flink 起源于2009年德國柏林工業(yè)大學(xué)的一個(gè)研究項(xiàng)目 Stratosphere。2014 年,該項(xiàng)目的核心團(tuán)隊(duì)將其捐贈給 Apache 基金會,并更名為 Flink(德語中意為“快”),同年成為 Apache 頂級項(xiàng)目。幾乎同時(shí),F(xiàn)link的創(chuàng)始團(tuán)隊(duì)成立了公司 DataArtisans公司 以支持其發(fā)展。

2015 年至 2016 年間,隨著阿里巴巴集團(tuán)業(yè)務(wù)特別是電商領(lǐng)域(如“雙十一”購物節(jié))的迅速擴(kuò)張,對實(shí)時(shí)數(shù)據(jù)處理的需求激增。盡管阿里已有成熟的離線數(shù)據(jù)處理系統(tǒng) ODPS,但對于秒級響應(yīng)的實(shí)時(shí)數(shù)據(jù)處理仍面臨挑戰(zhàn)。經(jīng)過評估,阿里選擇了Apache Flink作為其新的實(shí)時(shí)計(jì)算平臺解決方案。至 2016 年的“雙十一”,F(xiàn)link 已在阿里巴巴內(nèi)部大規(guī)模部署并成功支持了相關(guān)活動。

阿里巴巴對 Flink 社區(qū)進(jìn)行了持續(xù)的投資和支持,主要目的是推動 Flink 技術(shù)在中國乃至全球范圍內(nèi)的廣泛應(yīng)用,并促進(jìn)其成長。2018 年底成立了 Flink 中文社區(qū),并舉辦了首屆 Flink Forward Asia 大會。至今已連續(xù)舉辦七屆,即便在疫情期間也未中斷。2019 年,阿里收購了 Flink 的創(chuàng)始公司 Data Artisans,之后不久,為了更好地反映公司愿景及其在全球范圍內(nèi)的擴(kuò)張計(jì)劃,Data Artisans 更名為 Ververica。同年,阿里巴巴向 Apache Flink 貢獻(xiàn)了內(nèi)部開發(fā)多年的 Blink 項(xiàng)目,涉及超過 150 萬行核心代碼。此舉極大地促進(jìn)了 Flink 社區(qū)自 2019 年起在全球范圍內(nèi)的快速發(fā)展。

Apache Flink 在過去十年中逐漸成為全球范圍內(nèi)廣泛認(rèn)可的實(shí)時(shí)流處理框架,得到了工業(yè)界和學(xué)術(shù)界的共同認(rèn)可。2023 年,F(xiàn)link 不僅被頂級機(jī)構(gòu) SIGMOD 授予系統(tǒng)大獎,還見證了多項(xiàng)技術(shù)創(chuàng)新,如阿里巴巴捐贈了 Flink CDC(一個(gè)實(shí)時(shí)數(shù)據(jù)集成框架)給 Flink 社區(qū),并孵化出了新一代實(shí)時(shí)數(shù)據(jù)湖 Paimon。至今,F(xiàn)link 擁有近 2000 位來自世界各地的貢獻(xiàn)者,其中約 40%來自中國,顯示出中國開發(fā)者在該開源項(xiàng)目中的活躍度。阿里巴巴對 Flink 的支持尤為突出,連續(xù)七年舉辦 Flink Forward 大會,促進(jìn)了技術(shù)交流與分享。此外,中國的 Flink PMC 成員及 Flink 開發(fā)者們通過微信公眾號等平臺積極推廣 Flink 相關(guān)知識和技術(shù)文章,極大地推動了 Flink 在中國乃至全球范圍內(nèi)的應(yīng)用和發(fā)展。

Flink 之所以能夠取得如此成就,關(guān)鍵在于它順應(yīng)了時(shí)代發(fā)展的需求,適應(yīng)了近年來大數(shù)據(jù)領(lǐng)域從離線處理向?qū)崟r(shí)處理轉(zhuǎn)變的趨勢,滿足了包括互聯(lián)網(wǎng)、金融、電信、能源、制造、物聯(lián)網(wǎng)等多個(gè)行業(yè)對于更高效數(shù)據(jù)分析的需求。

二、The Present

Apache Flink 已成為大數(shù)據(jù)流計(jì)算全球事實(shí)標(biāo)準(zhǔn)

Flink 十年磨一劍,除了阿里巴巴付出非常多的努力來推動它的成長,也離不開中國廣大企業(yè)、廣大開發(fā)者的支持,使得 Flink 成為全球范圍內(nèi)大數(shù)據(jù)流計(jì)算的實(shí)時(shí)標(biāo)準(zhǔn)。其成功不僅源于時(shí)代需求,更在于優(yōu)秀的技術(shù)架構(gòu)設(shè)計(jì)、扎實(shí)理論基礎(chǔ)和開放繁榮生態(tài)。作為業(yè)界首款實(shí)現(xiàn)流批融合的計(jì)算引擎,F(xiàn)link 支持Java/SQL/Python 等多語言 API,滿足了從大數(shù)據(jù)開發(fā)者到 AI 領(lǐng)域用戶的廣泛需求。通過豐富的 Connector 和 CDC 子系統(tǒng),F(xiàn)link 無縫連接數(shù)據(jù)庫、數(shù)據(jù)倉庫、數(shù)據(jù)湖等多種存儲系統(tǒng),成為促進(jìn)不同數(shù)據(jù)系統(tǒng)間實(shí)時(shí)流動與分析的關(guān)鍵橋梁,堪稱大數(shù)據(jù)生態(tài)中的“數(shù)據(jù)高速公路”。

Flink 社區(qū)一直在探索實(shí)時(shí)計(jì)算和大數(shù)據(jù)處理的邊界,并對其架構(gòu)進(jìn)行了重大升級,其中最重要的升級是場景化擴(kuò)展,使得 Flink 從最初的流式數(shù)據(jù)處理發(fā)展到了更廣泛的流式湖倉(Lakehouse)架構(gòu)。自 2022 年起,F(xiàn)link 開始孵化子項(xiàng)目 Flink Table Store,旨在開發(fā)一種支持實(shí)時(shí)更新的數(shù)據(jù)湖存儲格式;到 2023 年,該項(xiàng)目獨(dú)立孵化并更名為 Paimon,現(xiàn)已成長為 Apache 基金會的一個(gè)頂級項(xiàng)目。結(jié)合使用 Flink 與 Paimon,可以實(shí)現(xiàn)從計(jì)算到存儲的一體化解決方案,適用于構(gòu)建流批一體化的新一代湖倉系統(tǒng)。

在這種架構(gòu)下,通過 Flink CDC 工具可將外部數(shù)據(jù)實(shí)時(shí)導(dǎo)入 ODS 層,隨后利用 Flink 提供的流批一體 SQL 功能在 Paimon 上執(zhí)行 ETL 操作,從而形成一個(gè)完整的實(shí)時(shí)離線一體化處理平臺。這種基于Flink+Paimon的流式湖倉架構(gòu)被認(rèn)為是傳統(tǒng) Lakehouse 架構(gòu)的一種進(jìn)化版本,它不僅保留了原有 Lakehouse 的優(yōu)點(diǎn),還額外提供了全鏈路實(shí)時(shí)處理能力和統(tǒng)一的流批處理體驗(yàn)。

流式湖倉作為一種創(chuàng)新技術(shù)架構(gòu),引起了業(yè)界不少公司的關(guān)注,并在 2024 年的多個(gè)場景中得到了實(shí)際應(yīng)用。特別是在上個(gè)月剛剛結(jié)束的阿里巴巴“雙十一”活動中,通過采用 Flink+Paimon 這一最新的流式湖倉架構(gòu),實(shí)現(xiàn)了重要業(yè)務(wù)場景的成功落地,如天貓營銷分析大屏。該案例展示了如何利用統(tǒng)一的技術(shù)棧來處理實(shí)時(shí)與離線數(shù)據(jù)處理需求,從而保證了數(shù)據(jù)口徑的一致性,并顯著降低了存儲和計(jì)算成本。具體來說,由于采用了同一套架構(gòu),避免了重復(fù)開發(fā) SQL 邏輯以及雙份數(shù)據(jù)存儲的需求,使得整體解決方案更加高效、經(jīng)濟(jì)。此外,這種架構(gòu)還支持運(yùn)營人員實(shí)時(shí)查看商品成交來源及流量調(diào)配情況,同時(shí)允許數(shù)據(jù)分析師在夜間進(jìn)行更精確的數(shù)據(jù)回刷以獲取最終結(jié)果,比如反作弊信息的更新等。未來,隨著更多企業(yè)對效率提升及成本控制需求的增長,預(yù)計(jì)這種新型架構(gòu)將在更廣泛的行業(yè)范圍內(nèi)得到推廣和應(yīng)用。

三、The Future

新一代 Apache Flink 即將發(fā)布

Flink 經(jīng)過十年的發(fā)展已成為流處理領(lǐng)域的事實(shí)標(biāo)準(zhǔn),接下來面對 AI 新時(shí)代、面向全面云原生時(shí)代,F(xiàn)link 的技術(shù)架構(gòu)也需要與時(shí)俱進(jìn)的升級。在 Flink 十周年之際即將推出新一代的 Flink 架構(gòu)——Flink2.0,這是自 2016 年發(fā)布 Flink 1.0 以來最大規(guī)模的技術(shù)架構(gòu)升級。

Flink 2.0 的主要升級方向包括:

  1. 全面云原生架構(gòu):采用存算分離設(shè)計(jì),將狀態(tài)存儲遷移至云存儲中,從而顯著提高系統(tǒng)的容錯(cuò)性、災(zāi)難恢復(fù)能力和彈性。

  2. 改進(jìn)的流批一體計(jì)算范式:簡化用戶操作流程,實(shí)現(xiàn)更自動化、更易用的流批一體處理能力,降低用戶使用門檻,提供更加端到端的服務(wù)體驗(yàn)。

  3. 增強(qiáng)AI支持:加強(qiáng)與AI技術(shù)特別是大模型系統(tǒng)的集成,使Flink能夠更好地服務(wù)于 AI 應(yīng)用場景,并優(yōu)化與向量數(shù)據(jù)庫等數(shù)據(jù)基礎(chǔ)設(shè)施之間的交互,促進(jìn)數(shù)據(jù)與AI的深度融合。

總結(jié)來說,F(xiàn)link 2.0 還有非常多的新特性,在此僅做簡單的預(yù)告,可以期待后續(xù)更深入地探討,以全面揭示 Flink 2.0 的強(qiáng)大功能和潛力。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容