Apache?Flink?2.0-preview?released

Apache Flink 社區(qū)正在積極準(zhǔn)備 Flink 2.0,這是自 Flink 1.0 發(fā)布 8 年以來(lái)的首次大版本發(fā)布痘儡。作為一個(gè)重要的里程碑辕万,F(xiàn)link 2.0 將引入許多激動(dòng)人心的功能和改進(jìn),以及一些不兼容的破壞性變更。為了促進(jìn)用戶和上下游項(xiàng)目(例如渐尿,連接器)盡早適配這些變更醉途,提前嘗試這些令人興奮的新功能同時(shí)收集反饋,我們現(xiàn)在提供了 Flink 2.0 的預(yù)覽版本砖茸。

注意: Flink 2.0 預(yù)覽版不是穩(wěn)定版本隘擎,請(qǐng)不要應(yīng)用于生產(chǎn)環(huán)境。雖然這個(gè)預(yù)覽版包含了 Flink 2.0 中絕大部分影響兼容性的變更凉夯,但 2.0 正式版仍可能引入額外的非兼容改動(dòng)货葬。

非兼容變更

API

以下 API 已被完全移除:

同時(shí),DataStream API 以及 REST API 中部分廢棄的方法和字段也已經(jīng)被移除人柿。

注意: 您可能會(huì)發(fā)現(xiàn)一些已移除的 API 仍然存在于代碼庫(kù)中淤堵,但被移動(dòng)到了和原來(lái)不同的包路徑下。它們現(xiàn)在僅供內(nèi)部使用顷扩,并且可能隨時(shí)發(fā)生更改或移除。請(qǐng) 不要再使用 它們.

連接器適配計(jì)劃

由于 SourceFunction, SinkFunction 和 SinkV1 API 被移除慰毅,依賴這些 API 的現(xiàn)有連接器將無(wú)法在 Flink 2.x 版本工作隘截,需要進(jìn)行針對(duì)性適配。以下是具體的適配計(jì)劃:

  1. Flink 2.0 預(yù)覽版發(fā)布后會(huì)盡快發(fā)布與之適配的 Kafka 連接器新版本汹胃。

  2. JDBC 和 ElasticSearch 連接器將在 Flink 2.0 的正式版本中適配婶芭。

  3. 我們計(jì)劃在接下來(lái)的 3 個(gè)版本(即截止到 Flink 2.3)中逐步適配剩余的連接器。

配置

符合以下標(biāo)準(zhǔn)的配置項(xiàng)已被移除:

  • 被標(biāo)注為 @Public 并且已棄用至少2個(gè)版本着饥。

  • 被標(biāo)注為 @PublicEvolving 并且已棄用至少1個(gè)版本犀农。

在 Flink 2.x 中,不再支持舊的配置文件 flink-conf.yaml, 請(qǐng)改用符合標(biāo)準(zhǔn) YAML 格式的 config.yaml宰掉。我們提供了一個(gè)遷移工具呵哨,用于將舊的 flink-conf.yaml 轉(zhuǎn)換為新的 config.yaml。詳見(jiàn) 從 flink-conf.yaml 遷移到 config.yaml轨奄。

在程序中使用硬編碼的方式進(jìn)行配置會(huì)帶來(lái)諸多弊端孟害,因此 StreamExecutionEnvironmentExecutionConfig 中與配置相關(guān)的 API 不再允許直接傳入 Java 對(duì)象作為參數(shù)。你現(xiàn)在應(yīng)該通過(guò) ConfigurationConfigOption 來(lái)進(jìn)行相應(yīng)的配置挪拟。

為了避免暴露過(guò)多的內(nèi)部接口挨务,用戶自定義函數(shù)(UDF) 不再對(duì) ExecutionConfig 具有完整的訪問(wèn)權(quán)限。相應(yīng)地,你現(xiàn)在可以直接從 RuntimeContext 中訪問(wèn)這些必要的函數(shù)谎柄,例如 createSerializer(), getGlobalJobParameters()isObjectReuseEnabled()丁侄。

其它

  • 1.x 到 2.x 的升級(jí)不保證 狀態(tài)兼容性

  • 不再支持 Java 8: Java 11 是目前支持的最低 Java 版本朝巫。

  • 舊的 Hybrid Shuffle 模式 已經(jīng)被完全移除鸿摇。

重要新特性

存算分離狀態(tài)管理

過(guò)去十年間 Flink 的部署模式、工作負(fù)載和硬件的架構(gòu)都發(fā)生了很大的改變捍歪。我們已經(jīng)從計(jì)算-存儲(chǔ)緊密耦合的 map-reduce 時(shí)代户辱,進(jìn)入到了以 Kubernetes 容器化部署為標(biāo)準(zhǔn)的云原生世界。為了 Flink 在云原生時(shí)代的未來(lái)糙臼,我們?cè)?Flink 2.0 中引入了基于遠(yuǎn)程存儲(chǔ)的存算分離狀態(tài)管理庐镐。

存算分離架構(gòu)的引入使得 Flink 向云原生領(lǐng)域更進(jìn)一步。新架構(gòu)主要解決了以下問(wèn)題:

  1. 容器化環(huán)境下計(jì)算節(jié)點(diǎn)受本地磁盤大小限制的問(wèn)題

  2. 由于RocksDB中LSM結(jié)構(gòu)的周期性 Compaction 導(dǎo)致計(jì)算資源尖峰的問(wèn)題

  3. 大規(guī)模狀態(tài)快速擴(kuò)縮容的挑戰(zhàn)

  4. 原生的輕量級(jí)和快速檢查點(diǎn)

受限于 Flink 中現(xiàn)有的阻塞式同步執(zhí)行模型变逃,僅僅將狀態(tài)存儲(chǔ)擴(kuò)展到從遠(yuǎn)程 DFS 讀寫(xiě)是不夠的必逆。在 Flink 2.0 中,我們提出了異步執(zhí)行模型揽乱,并為此引入了 ForStDB名眉,這是一種分離的狀態(tài)后端解決方案。

在當(dāng)前預(yù)覽版本下凰棉,我們使用: NexmarkQ20 完成了一個(gè)端到端的示例损拢。 其中包括:

  • 異步化執(zhí)行:完整的狀態(tài)異步訪問(wèn)的API,以及檢查點(diǎn)支持

  • 異步化SQL Join算子:基于異步化狀態(tài) API實(shí)現(xiàn)

  • 同步/異步混合式執(zhí)行:基于混合式SQL Plan撒犀,支持同步算子與異步算子在一個(gè)作業(yè)內(nèi)共存

  • 性能:在直接寫(xiě)入存算分離后的遠(yuǎn)端存儲(chǔ)的場(chǎng)景下福压,提供了不錯(cuò)的性能

物化表

在 Flink 1.20 中,我們以最簡(jiǎn)可行產(chǎn)品(Minimum Viable Product) 的形式引入了物化表功能或舞。物化表是 Flink SQL 中的一種創(chuàng)新型表類型荆姆,旨在進(jìn)一步簡(jiǎn)化流和批作業(yè)的數(shù)據(jù)處理流程,同時(shí)提供統(tǒng)一的開(kāi)發(fā)體驗(yàn)映凳。在即將發(fā)布的 Flink 2.0 中胆筒,我們正在增強(qiáng)物化表所支持的功能,包括與主流的湖格式進(jìn)行集成以及生產(chǎn)就緒的調(diào)度器實(shí)現(xiàn)诈豌。

批作業(yè)的自適應(yīng)執(zhí)行

此外仆救,F(xiàn)link 正在不斷提升其自適應(yīng)批處理能力。即將發(fā)布的 Flink 2.0 將具備基于作業(yè)已完成的階段所提供的信息矫渔,對(duì)邏輯計(jì)劃和物理計(jì)劃進(jìn)行動(dòng)態(tài)優(yōu)化的能力派桩。初步支持的策略包括動(dòng)態(tài)應(yīng)用 Broadcast Join 以及對(duì)數(shù)據(jù)傾斜的 Join 進(jìn)行優(yōu)化。

流式湖倉(cāng)

以 Apache Flink 和 Apache Paimon 的集成為代表的流式湖倉(cāng)架構(gòu)將湖倉(cāng)范式中統(tǒng)一的數(shù)據(jù)存儲(chǔ)蚌斩、開(kāi)放格式和成本效益擴(kuò)展到了實(shí)時(shí)領(lǐng)域铆惑。即將發(fā)布的 Flink 2.0 在 Flink 和 Paimon 的集成方面邁出了重要一步:Flink 和 Paimon 社區(qū)正在密切合作范嘱,充分結(jié)合彼此的優(yōu)勢(shì)以及核心功能,帶來(lái)了諸多重要改進(jìn)员魏,包括但不限于:使用 Paimon 豐富的合并引擎進(jìn)行 SQL 執(zhí)行計(jì)劃優(yōu)化丑蛤、大幅提升 Lookup-Join 的性能、支持 Flink 物化表撕阎、以及對(duì)自適應(yīng)批處理和推測(cè)執(zhí)行的支持受裹。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市虏束,隨后出現(xiàn)的幾起案子棉饶,更是在濱河造成了極大的恐慌,老刑警劉巖镇匀,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件照藻,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡汗侵,警方通過(guò)查閱死者的電腦和手機(jī)幸缕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)晰韵,“玉大人发乔,你說(shuō)我怎么就攤上這事⊙┲恚” “怎么了栏尚?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)只恨。 經(jīng)常有香客問(wèn)我译仗,道長(zhǎng),這世上最難降的妖魔是什么坤次? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮斥赋,結(jié)果婚禮上缰猴,老公的妹妹穿的比我還像新娘。我一直安慰自己疤剑,他們只是感情好滑绒,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著隘膘,像睡著了一般疑故。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上弯菊,一...
    開(kāi)封第一講書(shū)人閱讀 48,970評(píng)論 1 284
  • 那天纵势,我揣著相機(jī)與錄音,去河邊找鬼。 笑死钦铁,一個(gè)胖子當(dāng)著我的面吹牛软舌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播牛曹,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼佛点,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了黎比?” 一聲冷哼從身側(cè)響起超营,我...
    開(kāi)封第一講書(shū)人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎阅虫,沒(méi)想到半個(gè)月后演闭,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡书妻,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年船响,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片躲履。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡见间,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出工猜,到底是詐尸還是另有隱情米诉,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布篷帅,位于F島的核電站史侣,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏魏身。R本人自食惡果不足惜惊橱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望箭昵。 院中可真熱鬧税朴,春花似錦、人聲如沸家制。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)颤殴。三九已至觅廓,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間涵但,已是汗流浹背杈绸。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工帖蔓, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蝇棉。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓讨阻,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親篡殷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子钝吮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容