自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

「產(chǎn)品動(dòng)態(tài)」解讀 Dataphin 流批一體的實(shí)時(shí)研發(fā)

網(wǎng)絡(luò)
Dataphin作為一款企業(yè)級(jí)智能數(shù)據(jù)構(gòu)建與管理產(chǎn)品,具備全鏈路實(shí)時(shí)研發(fā)能力,從2019年開始支撐集團(tuán)天貓雙11的實(shí)時(shí)計(jì)算需求。就以下文介紹Dataphin實(shí)時(shí)計(jì)算的能力。

背景

每當(dāng)雙11全球購物狂歡節(jié)鐘聲響起,上千萬用戶涌入天貓、淘寶,流暢的購物體驗(yàn)背后是阿里工程師用技術(shù)打造出的營(yíng)地,支撐了每年雙11所帶來的數(shù)據(jù)洪峰。2020年11月1日至11月12日0:00,天貓“雙11”累計(jì)總交易額達(dá)4982億元,物流訂單總量達(dá)到23.21億單。這一切的背后都離不開實(shí)時(shí)計(jì)算技術(shù)。

Dataphin作為一款企業(yè)級(jí)智能數(shù)據(jù)構(gòu)建與管理產(chǎn)品,具備全鏈路實(shí)時(shí)研發(fā)能力,從2019年開始支撐集團(tuán)天貓雙11的實(shí)時(shí)計(jì)算需求。就以下文介紹Dataphin實(shí)時(shí)計(jì)算的能力。

傳統(tǒng)的數(shù)倉架構(gòu)

在數(shù)倉建設(shè)過程中,一般來說都是先建設(shè)離線數(shù)倉,同時(shí)圍繞著離線數(shù)據(jù)構(gòu)建應(yīng)用。然后隨著業(yè)務(wù)的發(fā)展或者體驗(yàn)的優(yōu)化,再建設(shè)實(shí)時(shí)計(jì)算的鏈路去提升數(shù)據(jù)的時(shí)效性。

在這個(gè)過程中相似的代碼寫兩遍就難以避免,還會(huì)出現(xiàn)實(shí)時(shí)和離線口徑不一致,分別維護(hù)成本增加等各種各樣的問題。

傳統(tǒng)的數(shù)倉架構(gòu)流與批從存儲(chǔ)計(jì)算中分離帶來以下的問題:

效率問題:流批底層數(shù)據(jù)模型不一致,導(dǎo)致應(yīng)用層做大量的拼接邏輯(同比、環(huán)比、二次加工等),搭建效率低且容易出錯(cuò)
質(zhì)量問題:一個(gè)業(yè)務(wù)邏輯,兩個(gè)引擎兩套代碼,SQL邏輯不能復(fù)用,數(shù)據(jù)一致性和質(zhì)量問題難以保證
成本問題:
流批存儲(chǔ)系統(tǒng)隔離(面向不同寫入場(chǎng)景),提供的數(shù)據(jù)服務(wù)不一,維護(hù)成本高
手工建數(shù)據(jù)同步任務(wù),開發(fā)成本/存儲(chǔ)成本高(兩份)
批處理&流處理集群無法做到錯(cuò)峰,資源利用率低

Dataphin流批一體優(yōu)勢(shì)

為解決傳統(tǒng)數(shù)倉架構(gòu)的存儲(chǔ)計(jì)算分離的問題,有了“流批一體”的思路:

流批存儲(chǔ)透明化,查詢邏輯完全一致,應(yīng)用端接入成本大幅降低,點(diǎn)查/OLAP分析統(tǒng)一支持
服務(wù)層統(tǒng)一存儲(chǔ),無需手工同步,無重復(fù)存儲(chǔ)
一套代碼,兩種計(jì)算模式,邏輯統(tǒng)一,靈活切換,研發(fā)效率大幅提升
流批計(jì)算資源混部,資源利用率提升

Dataphin在Flink流批一體的能力之上額外提供了更多的平臺(tái)能力,如數(shù)據(jù)源管理、元數(shù)據(jù)管理、資產(chǎn)血緣、資產(chǎn)質(zhì)量控制、預(yù)編譯、調(diào)試等能力:

開發(fā)生產(chǎn)隔離:提供開發(fā)環(huán)境和生產(chǎn)環(huán)境隔離,保證開發(fā)環(huán)境開發(fā)的業(yè)務(wù)代碼和生產(chǎn)相互之間不干擾
元數(shù)據(jù)管理:各系統(tǒng)組件包括數(shù)據(jù)源、元表、UDX等具備權(quán)限控制功能,敏感型配置信息加密保護(hù)。支持?jǐn)?shù)據(jù)源敏感字段訪問訂閱。元表、函數(shù)、資源等全部單元化可視化的管理,支持跨項(xiàng)目鑒權(quán)(字段級(jí))調(diào)用,讓使用者聚焦業(yè)務(wù)邏輯。
流批一體:流批存儲(chǔ)層的統(tǒng)一管理,實(shí)現(xiàn)模型層統(tǒng)一,流批代碼統(tǒng)一、通過流批各自專屬配置,生產(chǎn)獨(dú)立有協(xié)同的額調(diào)度實(shí)例
研發(fā)提效:
提供了預(yù)編譯的能力,提供語法校驗(yàn)、權(quán)限校驗(yàn)、字段血緣提取的功能;
容器化調(diào)試,支持上傳自定義數(shù)據(jù)或直接消費(fèi)真實(shí)生產(chǎn)數(shù)據(jù)用來觀察作業(yè)運(yùn)行、檢查各個(gè)節(jié)點(diǎn)的輸出結(jié)果
支持元數(shù)據(jù)檢索,作業(yè)依賴、字段血緣的可視化探查

穩(wěn)定性及質(zhì)量保障:

支持流量閾值設(shè)置,防止計(jì)算資源過度競(jìng)爭(zhēng),避免下游系統(tǒng)過載
支持實(shí)時(shí)元表質(zhì)量監(jiān)測(cè),可配置統(tǒng)計(jì)趨勢(shì)監(jiān)測(cè)、實(shí)時(shí)多鏈路對(duì)比、實(shí)時(shí)離線數(shù)據(jù)核對(duì)。

開發(fā)生產(chǎn)隔離

Dataphin支持開發(fā)生產(chǎn)隔離的項(xiàng)目,支持開發(fā)和生產(chǎn)雙環(huán)境的數(shù)據(jù)源配置。這樣在開發(fā)模式下,任務(wù)就會(huì)自動(dòng)使用開發(fā)數(shù)據(jù)源和開發(fā)環(huán)境下的物理表;而當(dāng)發(fā)布到生產(chǎn)環(huán)境時(shí),Datpahin則會(huì)自動(dòng)切換為生產(chǎn)數(shù)據(jù)源及生產(chǎn)環(huán)境的物理表。這個(gè)過程完全自動(dòng)化,不用手動(dòng)修改代碼或配置。

元數(shù)據(jù)管理

Dataphin創(chuàng)造性的引入了實(shí)時(shí)元表和鏡像表的概念,將實(shí)時(shí)研發(fā)過程中的表進(jìn)行了平臺(tái)化、資產(chǎn)化的統(tǒng)一管理,并簡(jiǎn)化了研發(fā),提升研發(fā)效率和體驗(yàn)。

傳統(tǒng)實(shí)時(shí)任務(wù)研發(fā)工具需要用戶重復(fù)寫Create table建表語句,需要進(jìn)行繁瑣的輸入輸出表映射等操作。實(shí)時(shí)元表將實(shí)時(shí)開發(fā)任務(wù)中所有用到的數(shù)據(jù)表進(jìn)行了統(tǒng)一表構(gòu)建與管理,統(tǒng)一維護(hù)了所有實(shí)時(shí)元表和相關(guān)schema信息。開發(fā)者在開發(fā)過程中不用重復(fù)寫DDL語句;同時(shí),也不需要進(jìn)行繁雜的輸入、輸出、維表映射,采用簡(jiǎn)單的純代碼研發(fā)模式,簡(jiǎn)單的SET語句及權(quán)限申請(qǐng),即可引用表數(shù)據(jù),進(jìn)行直接查詢或?qū)懭霐?shù)據(jù),輕松做到一次建表,多次引用,大幅度提升研發(fā)效率和體驗(yàn)。

鏡像表顧名思義則是用于維護(hù)離線表與實(shí)時(shí)表之間字段的映射關(guān)系。創(chuàng)建鏡像表并提交發(fā)布后,就可以在流批一體的Flink任務(wù)中使用鏡像表的字段,Datpahin會(huì)在編譯時(shí)自動(dòng)映射到流表和批表上,實(shí)現(xiàn)一份代碼,兩種計(jì)算,代碼邏輯、口徑變更強(qiáng)一致。

流批一體的代碼任務(wù)

除了引入實(shí)時(shí)元表與鏡像表,Dataphin也支持了流批一體的任務(wù),使用Flink引擎作為統(tǒng)一的流批計(jì)算引擎,在一份代碼上可同時(shí)配置流+批的任務(wù)配置,基于同一份代碼生成不同模式下的實(shí)例。而對(duì)于流批差異化的代碼,Dataphin也提供了不同的方式給與支持。

流批一體任務(wù)中會(huì)廣泛使用鏡像表,而鏡像表在最終使用時(shí)會(huì)翻譯為對(duì)應(yīng)的流表/批表,為了適應(yīng)流表/批表的多樣性(流表/批表的數(shù)據(jù)源可能不一樣,帶來with參數(shù)中key可能不一樣;流表/批表的某些設(shè)置可能不一樣,比如batchSize等),可以利用tableHints進(jìn)行流表/批表的對(duì)應(yīng)。方法如下:

set project.table.${mode}.${key} --mode: 流任務(wù):`stream` 批任務(wù):batch

舉個(gè)例子,設(shè)置批任務(wù)的起停時(shí)間:

set project.table.batch.startTime='2020-11-11 00:00:00'; set project.table.batch.endTime='2020-11-12 00:00:00';

第二種是在Dataphin的任務(wù)配置實(shí)時(shí)和離線模式分別任務(wù)參數(shù)的方式是利用任務(wù)參數(shù)進(jìn)行替換。

實(shí)時(shí)質(zhì)量監(jiān)控

Dataphin實(shí)時(shí)數(shù)據(jù)質(zhì)量主要面向開發(fā)者,針對(duì)產(chǎn)品中實(shí)時(shí)產(chǎn)出的數(shù)據(jù)表,通過對(duì)產(chǎn)出結(jié)果進(jìn)行數(shù)據(jù)質(zhì)量分析和校驗(yàn),來保障數(shù)據(jù)的最終有效與準(zhǔn)確。Dataphin支持統(tǒng)計(jì)趨勢(shì)監(jiān)測(cè)、實(shí)時(shí)多鏈路對(duì)比、實(shí)時(shí)離線數(shù)據(jù)核對(duì)。

統(tǒng)計(jì)趨勢(shì)監(jiān)測(cè):趨勢(shì)監(jiān)測(cè)指的是基于數(shù)據(jù)趨勢(shì)變化以及專家經(jīng)驗(yàn)以捕獲波動(dòng)異常的監(jiān)測(cè)方式;如 實(shí)時(shí)GMV的趨勢(shì)陡增有些異常

實(shí)時(shí)多鏈路趨勢(shì)對(duì)比:實(shí)時(shí)多鏈路指的是在實(shí)時(shí)計(jì)算的場(chǎng)景中,由于數(shù)據(jù)的恢復(fù)成本較高,無法快速從起點(diǎn)重新計(jì)算,因此需要使用多個(gè)計(jì)算鏈路,當(dāng)發(fā)生計(jì)算異常時(shí),自動(dòng)/手動(dòng)切換計(jì)算鏈路,是一種用資源換穩(wěn)定的策略,當(dāng)有重大的保障業(yè)務(wù)時(shí),往往會(huì)采用該種類型;如每年雙十一大屏都會(huì)采用多鏈路保障。

實(shí)時(shí)離線核對(duì):實(shí)時(shí)離線核對(duì),是保障實(shí)時(shí)數(shù)據(jù)常用的一種措施,由于實(shí)時(shí)計(jì)算處于一種持續(xù)運(yùn)算狀態(tài),計(jì)算時(shí)間持久且受資源與源數(shù)據(jù)的擾動(dòng)較大;離線數(shù)據(jù)在邏輯、數(shù)據(jù)復(fù)用性方面可以被更好地操作,因此,為了保障實(shí)時(shí)數(shù)據(jù)的準(zhǔn)確性,常用離線數(shù)據(jù)與實(shí)時(shí)數(shù)據(jù)進(jìn)行對(duì)比;如每年雙十一前都會(huì)使用離線數(shù)據(jù)對(duì)實(shí)時(shí)數(shù)據(jù)進(jìn)行校驗(yàn);

雙十一大屏后的Dataphin

回到文章開始的天貓雙十一,了解了Dataphin平臺(tái)特有的能力,我們來具體拆解Dataphin為什么能支撐天貓雙十一的實(shí)時(shí)數(shù)據(jù)大屏。

[[414768]]

Dataphin為實(shí)時(shí)提供研發(fā)、調(diào)試、測(cè)試、運(yùn)維全鏈路一站式服務(wù),極大降低用戶開發(fā)門檻;
同時(shí)提供統(tǒng)一元數(shù)據(jù)管理,元數(shù)據(jù)僅需初始化一次,輕松做到一次建表,多次引用,讓開發(fā)聚焦業(yè)務(wù)邏輯,大幅度提升研發(fā)效率和體驗(yàn);
另外有數(shù)據(jù)研發(fā)經(jīng)歷的同學(xué)都有這樣的體會(huì),很多數(shù)據(jù)口徑都驚人的類似,甚至有些只是輸入輸出表不同,典型的場(chǎng)景比如主備鏈路,針對(duì)這種場(chǎng)景我們提供了模版研發(fā)的能力,相同邏輯封裝在模版中,差異邏輯通過模版參數(shù)體現(xiàn),新任務(wù)僅需引用模版配置模版參數(shù)即可,極大提升研發(fā)效率的同時(shí)也降低了口徑維護(hù)成本。
基于以上能力,在雙十一大屏的支持上,盡管業(yè)務(wù)玩法很多,需求井噴,仍然僅以2人便支撐上百需求。

穩(wěn)

Dataphin提供任務(wù)監(jiān)控及數(shù)據(jù)質(zhì)量監(jiān)控全方位保障任務(wù)穩(wěn)定,快速發(fā)現(xiàn)問題;基于模版的主備多鏈路在異常發(fā)生時(shí)可以秒級(jí)切換,快速止血;基于實(shí)時(shí)任務(wù)血緣,快速定位問題根因;基于調(diào)試、測(cè)試、細(xì)粒度資源配置,快速驗(yàn)證并修復(fù),真正做到1min發(fā)現(xiàn)、5min定位、10min解決。

準(zhǔn)

基于流批一體的能力,真正做到代碼統(tǒng)一,口徑統(tǒng)一,存儲(chǔ)統(tǒng)一,數(shù)據(jù)服務(wù)接口統(tǒng)一,研發(fā)提效的同時(shí),保證數(shù)據(jù)一致。

未來規(guī)劃

在即將發(fā)布的Flink VVP(Ververica Platform)適配版本將支持新的VVR引擎,也將在未來支持開源Flink引擎已支持更多的部署環(huán)境。Dataphin也將持續(xù)提升實(shí)時(shí)研發(fā)的能力和體驗(yàn),幫助企業(yè)降低實(shí)時(shí)研發(fā)的門檻,挖掘更多的場(chǎng)景,獲得實(shí)時(shí)數(shù)據(jù)帶來的業(yè)務(wù)價(jià)值!

責(zé)任編輯:梁菲 來源: 阿里云云棲號(hào)
相關(guān)推薦

2023-03-30 07:40:03

FeatHub 項(xiàng)目特征工程開發(fā)

2022-09-29 09:22:33

數(shù)據(jù)倉

2020-01-13 14:39:06

FlinkSQL無限流

2023-09-05 07:22:17

Hudi數(shù)據(jù)存儲(chǔ)

2022-06-30 09:30:36

FlinkSQL流批一體京東

2023-05-16 07:24:25

數(shù)據(jù)湖快手

2024-06-25 13:08:31

2019-07-01 15:40:53

大數(shù)據(jù)架構(gòu)流處理

2021-11-18 21:09:50

流批場(chǎng)景引擎

2023-09-24 20:31:23

數(shù)字化

2020-11-24 10:26:08

2021-06-30 09:20:08

數(shù)倉FlinkHive

2024-03-25 08:15:02

數(shù)據(jù)分析AI 一體化大數(shù)據(jù)

2024-08-27 09:41:02

2020-03-20 16:54:14

戴爾

2019-11-28 20:51:10

阿里云Alink開源

2023-06-28 07:28:36

湖倉騰訊架構(gòu)

2017-09-06 16:07:26

一體機(jī)電腦PC

2021-06-07 11:22:38

大數(shù)據(jù)數(shù)據(jù)倉庫湖倉一體

2020-02-26 15:28:42

數(shù)據(jù)分析分析系統(tǒng)數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)