這兩天, Flink Forward Asia 2024大會(huì)在上海召開(kāi),吸引了業(yè)內(nèi)上千人參與。


阿里云智能開(kāi)源大數(shù)據(jù)平臺(tái)負(fù)責(zé)人、Apache Flink中文社區(qū)發(fā)起人、Apache Paimon PMC成員王峰,在Flink Forward Asia 2024大會(huì)歷數(shù)Apache Flink十年發(fā)展里程碑

作為實(shí)時(shí)計(jì)算領(lǐng)域最負(fù)盛名的技術(shù)盛宴,大會(huì)現(xiàn)場(chǎng)座無(wú)虛席

沒(méi)有人會(huì)想到,這個(gè)項(xiàng)目的吸引力、影響力如此之大。畢竟,從源頭談起,這是2009的一個(gè)實(shí)驗(yàn)室項(xiàng)目,來(lái)源于德國(guó)柏林工業(yè)大學(xué)的沃克爾·馬克爾(Volker Markl)教授領(lǐng)導(dǎo)開(kāi)發(fā)的Stratosphere的大數(shù)據(jù)分析系統(tǒng)項(xiàng)目。
讓人想不到的是,發(fā)軔于西部由Stratosphere演化而來(lái)的Flink,會(huì)在東部的中國(guó)得以發(fā)揚(yáng)光大,被廣泛應(yīng)用于各類(lèi)實(shí)時(shí)計(jì)算場(chǎng)景,比如購(gòu)物網(wǎng)站的實(shí)時(shí)推薦系統(tǒng)、物流行業(yè)的實(shí)時(shí)物流信息,乃至金融業(yè)的實(shí)時(shí)風(fēng)控系統(tǒng)等。包括阿里巴巴、字節(jié)、騰訊、小米以及AWS、ebay等國(guó)內(nèi)外互聯(lián)網(wǎng)大廠都成為Flink的擁躉。
說(shuō)Flink項(xiàng)目“10年磨一劍”也好、10年“開(kāi)花結(jié)果”也好,這與阿里有著非常緊密的聯(lián)系:阿里不僅是國(guó)內(nèi)最早將Flink(Blink)用于實(shí)時(shí)在線業(yè)務(wù)的企業(yè),同時(shí)也是Flink開(kāi)源社區(qū)最重要的貢獻(xiàn)者之一,主導(dǎo)推動(dòng)了Flink社區(qū)的發(fā)展。
本文將深度解讀Flink扎根于國(guó)內(nèi)互聯(lián)網(wǎng)“開(kāi)花結(jié)果”的幕后故事。同時(shí)結(jié)合趨勢(shì),給出下一個(gè)十年的預(yù)測(cè)。
從默默無(wú)聞到功成名就,阿里云成Flink背后最大貢獻(xiàn)者?
故事回到10年前。
沃克爾教授領(lǐng)導(dǎo)的Stratosphere項(xiàng)目,早期準(zhǔn)備做Batch計(jì)算。但當(dāng)時(shí)很多計(jì)算項(xiàng)目都使用批處理方式,包括后來(lái)大名鼎鼎的Apache Spark。于是Stratosphere轉(zhuǎn)向流處理開(kāi)發(fā),并于2014年4月被捐贈(zèng)給Apache基金會(huì),改名為 Apache Flink,同年12月,成為Apache頂級(jí)項(xiàng)目。
2014年前后是國(guó)內(nèi)互聯(lián)網(wǎng)狂飆突進(jìn)的時(shí)代。作為互聯(lián)網(wǎng)購(gòu)物頂流,淘寶網(wǎng)主導(dǎo)的雙11購(gòu)物節(jié)參與者以億為單位。面對(duì)如此巨大且不斷增長(zhǎng)的流量,阿里在業(yè)務(wù)上面臨著一個(gè)巨大的挑戰(zhàn)——業(yè)務(wù)實(shí)時(shí)化需求。而當(dāng)時(shí)較為成熟的Spark和阿里自研的ODPS都偏離線批處理,阿里技術(shù)團(tuán)隊(duì)迫切需要一個(gè)新的技術(shù)處理淘寶流量。Flink就這樣進(jìn)入了阿里技術(shù)團(tuán)隊(duì)的視野,無(wú)論是技術(shù)架構(gòu)還是理論模型,F(xiàn)link都得到了阿里技術(shù)團(tuán)隊(duì)的高度認(rèn)同。
2015年的Flink仍是一個(gè)非常早期的版本,不可能直接在淘寶這么大規(guī)模的應(yīng)用場(chǎng)景下落地。于是阿里技術(shù)團(tuán)隊(duì)根據(jù)實(shí)際業(yè)務(wù)需求,對(duì)Flink進(jìn)行了大刀闊斧的改進(jìn),最終在2016年上線并成功經(jīng)受住了雙11流量的考驗(yàn),首次在實(shí)際應(yīng)用場(chǎng)景下驗(yàn)證了新一代流計(jì)算模型的可行性。
2017、2018和2019年連續(xù)三年,在不斷加大的流量沖擊下,F(xiàn)link展示了其在實(shí)時(shí)計(jì)算領(lǐng)域的優(yōu)越性。Flink也逐漸開(kāi)始支持包括淘寶、天貓、支付寶、高德、飛豬、優(yōu)酷等重要業(yè)務(wù)部門(mén),甚至還通過(guò)阿里云向中小企業(yè)提供一站式實(shí)時(shí)計(jì)算服務(wù)。這就是阿里的Blink。


2016年淘寶雙11戰(zhàn)報(bào)(源自互聯(lián)網(wǎng))

由于連續(xù)幾年經(jīng)過(guò)雙11“大考”,F(xiàn)link(Blink)吸引了包括京東、美團(tuán)、滴滴等國(guó)內(nèi)一線互聯(lián)網(wǎng)大廠的關(guān)注,紛紛探索Flink實(shí)時(shí)計(jì)算新場(chǎng)景。經(jīng)過(guò)一線大廠的分享擴(kuò)散,F(xiàn)link逐漸輻射至物流、交通、新能源汽車(chē)以及金融等諸多行業(yè)。
Flink(Blink)在淘寶乃至各條業(yè)務(wù)線的成功,引起了行癲等一眾阿里高層的重視。為了更好地推動(dòng)Flink的發(fā)展,阿里在2019年以9000萬(wàn)歐元的價(jià)格收購(gòu)了Flink創(chuàng)始公司Data Artisans。并且,阿里還將經(jīng)過(guò)實(shí)戰(zhàn)驗(yàn)證的Flink(Blink)分支(約150萬(wàn)行增量代碼)合并到Flink社區(qū),后又陸續(xù)貢獻(xiàn)了Fink CDC、Paimon等相關(guān)生態(tài)項(xiàng)目。還先后投入了超過(guò)50名工程師以支持Flink的開(kāi)發(fā),這之中的很多工程師都成為Flink社區(qū)的核心成員,為Flink項(xiàng)目的各個(gè)核心模塊的順利開(kāi)發(fā)發(fā)揮了極其重要的作用。


Flink開(kāi)源社區(qū)官網(wǎng)列舉的Flink用戶(部分)

時(shí)至今日,F(xiàn)link已經(jīng)成為全球企業(yè)關(guān)注的開(kāi)源項(xiàng)目,包括AWS、ebay與Bouygues等國(guó)際知名企業(yè)都已成為Flink的用戶。但這些成就都是Flink在上一個(gè)十年取得的,隨著數(shù)智技術(shù)的不斷發(fā)展,F(xiàn)link也需要隨著業(yè)務(wù)需求的變化而不斷改進(jìn)。
在具有總結(jié)性的時(shí)間節(jié)點(diǎn)上,F(xiàn)link社區(qū)在Flink Forward Berlin 2024大會(huì)中發(fā)布了具有存算分離、流批一體、融合AI等新特性的Flink 2.0的預(yù)覽版本,為不斷發(fā)展的企業(yè)實(shí)時(shí)計(jì)算場(chǎng)景提供更好支撐。
Flink 2.0:讓企業(yè)實(shí)時(shí)計(jì)算更靈活
過(guò)去10年中,F(xiàn)link一直隨著業(yè)務(wù)的需求不斷迭代、增加新的功能,但從本質(zhì)架構(gòu)上并沒(méi)有太大改變。
面向未來(lái)10年,F(xiàn)link需要一個(gè)全新架構(gòu)以推動(dòng)下一步云原生演進(jìn),2.0版本孕育而生。


本次大會(huì)首次公布Flink 2.0版本的技術(shù)特點(diǎn)與細(xì)節(jié)

全新Flink 2.0三大功能特點(diǎn):
1
存算分離:讓企業(yè)部署更方便
Flink 2.0之前版本并沒(méi)有真正實(shí)現(xiàn)存算分離,因?yàn)榱魈幚硎怯袪顟B(tài)的,計(jì)算節(jié)點(diǎn)通常會(huì)將這些狀態(tài)存儲(chǔ)在本地。那么在存算不分離的狀態(tài)下,這就會(huì)顯著增加運(yùn)維復(fù)雜度,因?yàn)橛袛?shù)據(jù)就涉及到數(shù)據(jù)保護(hù)、容災(zāi)、故障恢復(fù)等一系列較為復(fù)雜的問(wèn)題,但Flink 1.0版本架構(gòu)很難實(shí)現(xiàn)真正的存算分離。
在Flink 2.0正式版中,社區(qū)完全摒棄了1.0中使用本地輕量級(jí)數(shù)據(jù)庫(kù)RocksDB,而采用C++設(shè)計(jì)實(shí)現(xiàn)了全新的專(zhuān)門(mén)面向流處理場(chǎng)景的狀態(tài)存儲(chǔ)引擎內(nèi)核——ForStDB,這是一個(gè)完全基于對(duì)象存儲(chǔ)和HFS的存算分離架構(gòu),將計(jì)算引擎與存儲(chǔ)內(nèi)核徹底解耦分離,而可以使用按需統(tǒng)一分配的計(jì)算資源池與存儲(chǔ)資源池。這意味著不僅大幅簡(jiǎn)化了企業(yè)資源配置、運(yùn)維、管理等方面的復(fù)雜度,更重要是讓整個(gè)系統(tǒng)的可運(yùn)維性、可觀測(cè)性、彈性、容災(zāi)性得到一個(gè)質(zhì)的提升。
2
流批一體:讓企業(yè)使用更簡(jiǎn)單
流處理和批處理是兩種截然不同的計(jì)算方式,分別對(duì)應(yīng)不同的業(yè)務(wù)需求。大多數(shù)企業(yè)通常都部署兩個(gè)獨(dú)立的系統(tǒng)去進(jìn)行流、批處理,典型如用Flink進(jìn)行流處理、用Spark進(jìn)行批處理。這會(huì)導(dǎo)致兩個(gè)問(wèn)題,其一是兩套系統(tǒng)獨(dú)立部署帶來(lái)的資源浪費(fèi)、架構(gòu)復(fù)雜以及管理困難等問(wèn)題;并且,這還意味著在流、批處理鏈路中大量相同的數(shù)據(jù)加工邏輯需要重復(fù)開(kāi)發(fā)和維護(hù),而引擎差異產(chǎn)生的數(shù)據(jù)口徑不同,又會(huì)導(dǎo)致那些需要將歷史數(shù)據(jù)與實(shí)時(shí)數(shù)據(jù)相關(guān)聯(lián)場(chǎng)景中的數(shù)據(jù)對(duì)應(yīng)不上等問(wèn)題。
社區(qū)在過(guò)去幾年一直探索如何在Flink中實(shí)現(xiàn)真正的流批一體,創(chuàng)新性地引入了流批一體SQL語(yǔ)法——Materialized Table。Flink 2.0中的Materialized Table將幫助企業(yè)構(gòu)建真正流批一體的實(shí)時(shí)計(jì)算場(chǎng)景。當(dāng)業(yè)務(wù)數(shù)據(jù)處理需求過(guò)來(lái),只要管理員描述好數(shù)據(jù)處理邏輯,剩下的交給Flink即可,管理員無(wú)需關(guān)注底層運(yùn)行的到底是流處理還是批處理,F(xiàn)link可以根據(jù)數(shù)據(jù)邏輯與最佳實(shí)踐相結(jié)合,自動(dòng)選擇最優(yōu)的處理方式。從業(yè)務(wù)角度來(lái)看,流批一體能夠有效降低業(yè)務(wù)開(kāi)發(fā)成本,同時(shí)降低系統(tǒng)運(yùn)營(yíng)成本。
3
融入AI:讓企業(yè)業(yè)務(wù)更靈活
無(wú)處不在的AI給企業(yè)業(yè)務(wù)帶來(lái)了更多可能性,但企業(yè)應(yīng)用AI過(guò)程中也產(chǎn)生了很多需要解決的問(wèn)題。Flink當(dāng)然不會(huì)去做大模型本身,但在大模型實(shí)際應(yīng)用過(guò)程中,F(xiàn)link的加入能夠最終用戶有更好的AI體驗(yàn)。
舉例來(lái)說(shuō),為了實(shí)現(xiàn)更好的用戶體驗(yàn),一定是需要一個(gè)向量庫(kù)、知識(shí)庫(kù)或知識(shí)引擎的,這個(gè)庫(kù)的更新對(duì)改善AI體驗(yàn)有著重要的作用。在這方面,F(xiàn)link希望通過(guò)對(duì)AI大模型的調(diào)用、向量庫(kù)的構(gòu)建,包括與模型預(yù)處理的數(shù)據(jù)處理部分實(shí)現(xiàn)與AI的打通。這或許將是Flink 2.0的發(fā)展新方向。


大會(huì)上宣布開(kāi)源專(zhuān)為Flink設(shè)計(jì)的
下一代流存儲(chǔ)Fluss項(xiàng)目

大會(huì)現(xiàn)場(chǎng),阿里云還宣布開(kāi)源下一代流存儲(chǔ) Fluss (Flink Unified Streaming Storage)項(xiàng)目,這是圍繞湖倉(cāng)架構(gòu)打造的Flink專(zhuān)屬實(shí)時(shí)流存儲(chǔ)底座,可大幅提升 Flink 實(shí)時(shí)流計(jì)算的能力。即日起,全球開(kāi)發(fā)者可在Github上下載使用。
Flink要有一個(gè)良好的發(fā)展,必然離不開(kāi)生態(tài)系統(tǒng)。盡管Flink在全球都備受青睞,很多互聯(lián)網(wǎng)大廠都加入其中,但如何讓更多行業(yè)的企業(yè)參與其中,尤其是讓更廣大的中小企業(yè)都從中受益,這是Flink社區(qū)必須要考慮的問(wèn)題。

阿里開(kāi)足馬力推動(dòng)Flink生態(tài):從方案到產(chǎn)品、從本土到國(guó)際
實(shí)際上,當(dāng)前已經(jīng)有很多不同行業(yè)的企業(yè)都看到了Flink的價(jià)值,比如阿里云推出的Flink商業(yè)版就被上海證券交易所(上交所)采用以支撐新交易監(jiān)管系統(tǒng),據(jù)公開(kāi)數(shù)據(jù),這一系統(tǒng)的交易數(shù)據(jù)實(shí)時(shí)處理擴(kuò)展達(dá)50萬(wàn)筆/秒以上,總體消息處理能力可達(dá)每秒千萬(wàn)級(jí)別。除此之外,在阿里云官網(wǎng),包括錢(qián)大媽、江鈴汽車(chē)、易倉(cāng)科技、用友暢捷通、微淼、飛鶴等不同行業(yè)的企業(yè)都成為Flink商業(yè)版的用戶。


類(lèi)似于開(kāi)源社區(qū)的通用做法,目前在阿里云也維護(hù)著兩個(gè)Flink分支,其一是開(kāi)源版本,以整個(gè)社區(qū)的用戶需求為根據(jù)進(jìn)行技術(shù)演進(jìn);另一個(gè)則是商業(yè)化的閉源版本,利用阿里自研組件替代部分純開(kāi)源實(shí)現(xiàn),并針對(duì)性能、算子等核心能力進(jìn)行優(yōu)化,為企業(yè)提供覆蓋運(yùn)維、管理、監(jiān)控以及調(diào)優(yōu)等多方面需求的一站式整體解決方案。
開(kāi)源解決方案的商品化是社區(qū)良性發(fā)展的重要支撐。對(duì)于很多企業(yè),尤其是中小企業(yè)而言,開(kāi)源并非不好,但受限于技術(shù)、人才等多種因素,很難將開(kāi)源解決方案真正用好。但社區(qū)通過(guò)提供一套完整的端到端的產(chǎn)品與服務(wù),能讓更多企業(yè)參與到開(kāi)源生態(tài)之中,最終讓開(kāi)源社區(qū)的發(fā)展成為一個(gè)良性的商業(yè)閉環(huán)。
從互聯(lián)網(wǎng)走向全行業(yè)是Flink社區(qū)持續(xù)發(fā)展的一個(gè)維度,從本土走向國(guó)際則是另一個(gè)維度。
本質(zhì)來(lái)說(shuō), Flink屬于開(kāi)源項(xiàng)目,必然會(huì)走向全球。如果要走向全球,必然會(huì)適應(yīng)不同國(guó)家和地區(qū)的需求,而不是僅僅局限于中國(guó)本土的需求。
其實(shí)阿里所有開(kāi)源項(xiàng)目從一開(kāi)始就遵循 “立足本土 放眼全球”的戰(zhàn)略思維。以Flink為例,從產(chǎn)品內(nèi)核來(lái)說(shuō),阿里與社區(qū)參與者不斷迭代功能,共同努力向前走。在產(chǎn)品落地層面,阿里在Flink社區(qū)的投入以及運(yùn)作項(xiàng)目的經(jīng)驗(yàn),獲得了同行們的積極參與,贏得了全球同行的認(rèn)同。
Flink有著全球一致的內(nèi)核,但在不同國(guó)家和地區(qū)的版本、功能上略有差異,完全是一個(gè)國(guó)際化的產(chǎn)品(不會(huì)讓人感覺(jué)這是中國(guó)的產(chǎn)品)。在運(yùn)營(yíng)過(guò)程中,阿里也依托當(dāng)?shù)氐膱F(tuán)隊(duì)展開(kāi)。比如歐洲依托于德國(guó)本土的Ververica(原Data Artisans)展開(kāi)運(yùn)營(yíng),招募技術(shù)人員和用戶推廣;東南亞則和當(dāng)?shù)氐暮献骰锇橐黄鹜茝V。
實(shí)際上,作為Flink社區(qū)一年一度的盛宴,F(xiàn)link Forword已經(jīng)走進(jìn)了東南亞地區(qū),比如今年將在印尼雅加達(dá)舉行Flink大會(huì),很多企業(yè)都踴躍報(bào)名參會(huì),除了雅加達(dá)本土知名的公司外,甚至還有遠(yuǎn)在美國(guó)的公司也會(huì)派代表參加,比如AWS、Uber、Confluence等全球知名企業(yè)。
結(jié) 語(yǔ)
開(kāi)源已經(jīng)成為推動(dòng)全球技術(shù)創(chuàng)新發(fā)展的重要?jiǎng)恿Α?/p>
在過(guò)去二十年中,中國(guó)互聯(lián)網(wǎng)經(jīng)歷了“井噴式”的發(fā)展,越來(lái)越多國(guó)內(nèi)成長(zhǎng)起來(lái)的企業(yè)站在了全球領(lǐng)先行列。在開(kāi)源技術(shù)方面,很多國(guó)內(nèi)科技企業(yè)也從原來(lái)的跟隨者逐漸成長(zhǎng)為貢獻(xiàn)者、創(chuàng)新者和主導(dǎo)者,包括Flink、Spark、RISC-V、OCP等國(guó)際知名的開(kāi)源項(xiàng)目之中都有他們的身影。這其中態(tài)度最堅(jiān)定的當(dāng)屬阿里,數(shù)據(jù)顯示,過(guò)去十余年,阿里云共開(kāi)源2000余個(gè)項(xiàng)目,和生態(tài)伙伴一起向開(kāi)源社區(qū)貢獻(xiàn)超100億行代碼,阿里巴巴還曾連續(xù)十年蟬聯(lián)中國(guó)企業(yè)開(kāi)源影響力第一,穩(wěn)居參與開(kāi)源人數(shù)最多的中國(guó)科技公司。
現(xiàn)在,強(qiáng)勢(shì)崛起的Flink已成為開(kāi)源界的一顆璀璨明珠,而阿里的成功經(jīng)驗(yàn)也給國(guó)內(nèi)企業(yè)參與、推動(dòng)開(kāi)源社區(qū)發(fā)展樹(shù)立了一個(gè)新的典范。
下一個(gè)10年,F(xiàn)link會(huì)不會(huì)創(chuàng)造更多的奇跡?這個(gè)問(wèn)題交給社區(qū)、交給技術(shù)、還要交給阿里來(lái)回答。
熱門(mén)跟貼