数据中台交付专家告诉你,数据架构的分层怎样更加合理?
作者:柯根
從整體上看,數(shù)據(jù)中臺(tái)體系架構(gòu)可分為:數(shù)據(jù)采集層、數(shù)據(jù)計(jì)算層、數(shù)據(jù)服務(wù)層三大層次。通過(guò)這三大層次對(duì)上層數(shù)據(jù)應(yīng)用提供數(shù)據(jù)支撐。
數(shù)據(jù)采集層
對(duì)于企業(yè)來(lái)說(shuō),每時(shí)每刻都在產(chǎn)生海量的數(shù)據(jù),數(shù)據(jù)采集作為數(shù)據(jù)體系第一環(huán)尤為重要。
因此在數(shù)據(jù)采集層需要建立了一套標(biāo)準(zhǔn)的數(shù)據(jù)采集體系方案,并致力全面、高性能、規(guī)范地完成海量數(shù)據(jù)的采集,將其傳輸?shù)酱髷?shù)據(jù)平臺(tái)。
互聯(lián)網(wǎng)日志采集體系包括兩大體系:Web端日志采集技術(shù)方案;APP端日志采集技術(shù)方案。
在采集技術(shù)之上,企業(yè)可以用面向各個(gè)場(chǎng)景的埋點(diǎn)規(guī)范,來(lái)滿(mǎn)足日志數(shù)據(jù)打通等多種業(yè)務(wù)場(chǎng)景。同時(shí),還可以建立了一套高性能、高可靠性的數(shù)據(jù)傳輸體系完成數(shù)據(jù)從生產(chǎn)業(yè)務(wù)端到大數(shù)據(jù)系統(tǒng)的傳輸;在傳輸方面,采集技術(shù)可既包括數(shù)據(jù)庫(kù)的增量數(shù)據(jù)傳輸,也包括日志數(shù)據(jù)的傳輸;既需要能支持實(shí)時(shí)流式計(jì)算、也能實(shí)時(shí)各種時(shí)間窗口的批量計(jì)算。另一方面,也通過(guò)數(shù)據(jù)同步工具直連異構(gòu)數(shù)據(jù)庫(kù)(備庫(kù))來(lái)抽取各種時(shí)間窗口的數(shù)據(jù)。
下圖展示數(shù)據(jù)采集層在數(shù)據(jù)分層中的位置:
數(shù)據(jù)計(jì)算層
從采集系統(tǒng)中收集了大量的原始數(shù)據(jù)后,數(shù)據(jù)只有被整合、計(jì)算才能被用于洞察商業(yè)規(guī)律、挖掘潛在信息,實(shí)現(xiàn)大數(shù)據(jù)價(jià)值,達(dá)到賦能商業(yè)、創(chuàng)造商業(yè)的目的。從采集系統(tǒng)中收集到的大量原始數(shù)據(jù),將進(jìn)入數(shù)據(jù)計(jì)算層中被進(jìn)一步整合與計(jì)算。
面對(duì)海量的數(shù)據(jù)和復(fù)雜的計(jì)算,數(shù)據(jù)計(jì)算層包括兩大體系:數(shù)據(jù)存儲(chǔ)及計(jì)算云平臺(tái)和數(shù)據(jù)整合及管理體系。
- 數(shù)據(jù)存儲(chǔ)及計(jì)算云平臺(tái)
例如,MaxCompute是阿里巴巴自主研發(fā)的離線(xiàn)大數(shù)據(jù)平臺(tái),其豐富的功能和強(qiáng)大的存儲(chǔ)及計(jì)算能力使得企業(yè)的大數(shù)據(jù)有了強(qiáng)大的存儲(chǔ)和計(jì)算引擎;StreamCompute是阿里巴巴自主研發(fā)的流式大數(shù)據(jù)平臺(tái),在內(nèi)部較好地支持了企業(yè)流式計(jì)算需求。
- 數(shù)據(jù)整合及管理體系
“OneModel”是數(shù)據(jù)整合及管理的方法體系和工具,大數(shù)據(jù)工程師在這一體系下,構(gòu)建統(tǒng)一、規(guī)范、可共享的全域數(shù)據(jù)體系,避免數(shù)據(jù)的冗余和重復(fù)建設(shè),規(guī)避數(shù)據(jù)煙囪和不一致,充分發(fā)揮在大數(shù)據(jù)海量、多樣性方面的獨(dú)特優(yōu)勢(shì)。借助這一統(tǒng)一化數(shù)據(jù)整合及管理的方法體系,構(gòu)建企業(yè)數(shù)據(jù)公共層,并可以幫助相似大數(shù)據(jù)項(xiàng)目快速落地實(shí)現(xiàn)。
數(shù)據(jù)中臺(tái)數(shù)據(jù)加工鏈路也是遵循業(yè)界的分層理念:包括操作數(shù)據(jù)層(ODS,Operational Data Store)、明細(xì)數(shù)據(jù)層(DWD,Data Warehouse Detail)、匯總數(shù)據(jù)層(DWS, Data Warehouse Summary)和應(yīng)用數(shù)據(jù)層(ADS,Application Data Store)。通過(guò)數(shù)據(jù)中臺(tái)不同層次之間的加工過(guò)程實(shí)現(xiàn)從數(shù)據(jù)資產(chǎn)向信息資產(chǎn)的轉(zhuǎn)化,并且對(duì)整個(gè)過(guò)程進(jìn)行有效的元數(shù)據(jù)管理及數(shù)據(jù)質(zhì)量處理。
下圖展示數(shù)據(jù)公共層(ODS+DWD+DWS)與數(shù)據(jù)應(yīng)用層(ADS)在數(shù)據(jù)分層中的位置:
圖:數(shù)據(jù)公共層與數(shù)據(jù)應(yīng)用層關(guān)系
(1)統(tǒng)一數(shù)據(jù)基礎(chǔ)層
我們通過(guò)各種方式采集到的豐富數(shù)據(jù),在清洗、結(jié)構(gòu)化后進(jìn)入統(tǒng)一的ODS數(shù)據(jù)基礎(chǔ)層。
其主要功能包括:
-同步:結(jié)構(gòu)化數(shù)據(jù)增量或全量同步到數(shù)據(jù)中臺(tái)
-結(jié)構(gòu)化:非結(jié)構(gòu)化(日志)結(jié)構(gòu)化處理并存儲(chǔ)到數(shù)據(jù)中臺(tái)
累積歷史、清洗:根據(jù)數(shù)據(jù)業(yè)務(wù)需求及稽核和審計(jì)要求保存歷史數(shù)據(jù)、數(shù)據(jù)清洗
在權(quán)責(zé)方面,所有數(shù)據(jù)應(yīng)該在源頭統(tǒng)一,統(tǒng)一所有的數(shù)據(jù)基礎(chǔ)層,并由一個(gè)團(tuán)隊(duì)負(fù)責(zé)和管控,其他團(tuán)隊(duì)無(wú)權(quán)復(fù)制數(shù)據(jù)基礎(chǔ)層的數(shù)據(jù)。
(2)數(shù)據(jù)中間層
我們進(jìn)行數(shù)據(jù)建模研發(fā),并處理不因業(yè)務(wù)特別是組織架構(gòu)變動(dòng)而輕易轉(zhuǎn)移的數(shù)據(jù)中間層。包括DWD明細(xì)數(shù)據(jù)中間層和DWS匯總數(shù)據(jù)中間層。
其主要功能包括:
-組合相關(guān)和相似數(shù)據(jù): 采用明細(xì)寬表,復(fù)用關(guān)聯(lián)計(jì)算,減少數(shù)據(jù)掃描。
-公共指標(biāo)統(tǒng)一加工:基于OneData體系構(gòu)建命名規(guī)范、口徑一致和算法統(tǒng)一的統(tǒng)計(jì)指標(biāo),為上層數(shù)據(jù)產(chǎn)-品、應(yīng)用和服務(wù)提供公共指標(biāo);建立邏輯匯總寬表;
-建立一致性維度:建立一致數(shù)據(jù)分析維度表,降低數(shù)據(jù)計(jì)算口徑、算法不統(tǒng)一的風(fēng)險(xiǎn)。
在權(quán)責(zé)方面,面向業(yè)務(wù)提供服務(wù)之前,由統(tǒng)一的團(tuán)隊(duì)負(fù)責(zé)從業(yè)務(wù)中抽象出源于業(yè)務(wù)而又不同于業(yè)務(wù)的數(shù)據(jù)域,再主導(dǎo)統(tǒng)一建設(shè)數(shù)據(jù)中間層,包括側(cè)重明細(xì)數(shù)據(jù)預(yù)JOIN等處理的明細(xì)中間層、側(cè)重面向應(yīng)用可復(fù)用維度和指標(biāo)的匯總數(shù)據(jù)中間層。特別是要由唯一團(tuán)隊(duì)負(fù)責(zé)將核心業(yè)務(wù)數(shù)據(jù)統(tǒng)一加入數(shù)據(jù)中間層。允許部分業(yè)務(wù)數(shù)據(jù)有獨(dú)立的數(shù)據(jù)團(tuán)隊(duì)按照統(tǒng)一的OneModel體系方法論建設(shè)數(shù)據(jù)體系,ODS數(shù)據(jù)基礎(chǔ)層和DWD+DWS數(shù)據(jù)中間層因其統(tǒng)一性和可復(fù)用性,被稱(chēng)為數(shù)據(jù)公共層。
(3)數(shù)據(jù)應(yīng)用層
在面向應(yīng)用提供服務(wù)時(shí),業(yè)務(wù)團(tuán)隊(duì)或深入業(yè)務(wù)線(xiàn)的數(shù)據(jù)團(tuán)隊(duì)有極大的自由度,只要依賴(lài)數(shù)據(jù)公共層,即可自由的建設(shè)ADS數(shù)據(jù)應(yīng)用層。
其主要功能包括:
-個(gè)性化指標(biāo)加工:不公用性;復(fù)雜性(指數(shù)型、比值型、排名型指標(biāo))
-基于應(yīng)用的數(shù)據(jù)組裝:大寬表集市、橫表轉(zhuǎn)縱表、趨勢(shì)指標(biāo)串
數(shù)據(jù)服務(wù)層
當(dāng)數(shù)據(jù)已被整合和計(jì)算好之后,需要提供給產(chǎn)品和應(yīng)用進(jìn)行數(shù)據(jù)消費(fèi),為了更好的性能和體驗(yàn),需要構(gòu)建數(shù)據(jù)服務(wù)層,通過(guò)接口服務(wù)化方式對(duì)外提供數(shù)據(jù)服務(wù)。針對(duì)不同的需求,數(shù)據(jù)服務(wù)層的數(shù)據(jù)源架構(gòu)在多種數(shù)據(jù)庫(kù)之上,如Mysql和Hbase等。
數(shù)據(jù)服務(wù)可以使應(yīng)用對(duì)底層數(shù)據(jù)存儲(chǔ)透明,將海量數(shù)據(jù)方便高效地開(kāi)放給集團(tuán)內(nèi)部各應(yīng)用使用。如何在性能、穩(wěn)定性、擴(kuò)展性等多方面更好地服務(wù)用戶(hù);如何滿(mǎn)足應(yīng)用各種復(fù)雜的數(shù)據(jù)服務(wù)需求;如何保證數(shù)據(jù)服務(wù)接口的高可用。隨著業(yè)務(wù)的發(fā)展,需求越來(lái)越復(fù)雜,因此數(shù)據(jù)服務(wù)也在不斷地前進(jìn)。
不管是數(shù)據(jù)公共層還是應(yīng)用層,最終都需要面向業(yè)務(wù)提供服務(wù)。為了讓業(yè)務(wù)部門(mén)找數(shù)據(jù)、看數(shù)據(jù)、用數(shù)據(jù)更加方便,我們將OpenAPI升級(jí)為能緩解業(yè)務(wù)變化對(duì)數(shù)據(jù)模型沖擊的包括方法論+產(chǎn)品在內(nèi)的OneService體系,使其在提供統(tǒng)一的公用服務(wù)的同時(shí),兼容面向個(gè)性化應(yīng)用的服務(wù)。
下圖為數(shù)據(jù)服務(wù)層在數(shù)據(jù)分層中的位置:
圖:數(shù)據(jù)應(yīng)用層與數(shù)據(jù)服務(wù)層關(guān)系
綜上,企業(yè)數(shù)據(jù)中臺(tái)依托數(shù)據(jù)采集層、數(shù)據(jù)計(jì)算層、數(shù)據(jù)服務(wù)層,為上層數(shù)據(jù)產(chǎn)品、業(yè)務(wù)系統(tǒng)等提供數(shù)據(jù)支撐。云上數(shù)據(jù)中臺(tái)產(chǎn)品Dataphin從“采、建、管、用”為企業(yè)提供一站式數(shù)據(jù)中臺(tái)各層次的實(shí)現(xiàn),配合阿里云系列產(chǎn)品,可實(shí)現(xiàn)企業(yè)數(shù)據(jù)中臺(tái)全鏈路穩(wěn)定、高效構(gòu)建。
?
?
原文鏈接
本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的数据中台交付专家告诉你,数据架构的分层怎样更加合理?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 深入理解C++中的RVO
- 下一篇: 因云而生 全新视角看阿里云服务器硬件方升