數據中臺交付專家告訴你,數據架構的分層怎樣更加合理? 數據採集層 數據計算層 數據服務層

從整體上看,數據中臺體系架構可分爲:數據採集層、數據計算層、數據服務層三大層次。通過這三大層次對上層數據應用提供數據支撐。

數據採集層

對於企業來說,每時每刻都在產生海量的數據,數據採集作爲數據體系第一環尤爲重要。

因此在數據採集層需要建立了一套標準的數據採集體系方案,並致力全面、高性能、規範地完成海量數據的採集,將其傳輸到大數據平臺。

互聯網日誌採集體系包括兩大體系:Web端日誌採集技術方案;APP端日誌採集技術方案。

在採集技術之上,企業可以用面向各個場景的埋點規範,來滿足日誌數據打通等多種業務場景。同時,還可以建立了一套高性能、高可靠性的數據傳輸體系完成數據從生產業務端到大數據系統的傳輸;在傳輸方面,採集技術可既包括數據庫的增量數據傳輸,也包括日誌數據的傳輸;既需要能支持實時流式計算、也能實時各種時間窗口的批量計算。另一方面,也通過數據同步工具直連異構數據庫(備庫)來抽取各種時間窗口的數據。

下圖展示數據採集層在數據分層中的位置:

數據計算層

從採集系統中收集了大量的原始數據後,數據只有被整合、計算才能被用於洞察商業規律、挖掘潛在信息,實現大數據價值,達到賦能商業、創造商業的目的。從採集系統中收集到的大量原始數據,將進入數據計算層中被進一步整合與計算。

面對海量的數據和複雜的計算,數據計算層包括兩大體系:數據存儲及計算雲平臺和數據整合及管理體系。

  • 數據存儲及計算雲平臺
    例如,MaxCompute是阿里巴巴自主研發的離線大數據平臺,其豐富的功能和強大的存儲及計算能力使得企業的大數據有了強大的存儲和計算引擎;StreamCompute是阿里巴巴自主研發的流式大數據平臺,在內部較好地支持了企業流式計算需求。

  • 數據整合及管理體系
    “OneModel”是數據整合及管理的方法體系和工具,大數據工程師在這一體系下,構建統一、規範、可共享的全域數據體系,避免數據的冗餘和重複建設,規避數據煙囪和不一致,充分發揮在大數據海量、多樣性方面的獨特優勢。藉助這一統一化數據整合及管理的方法體系,構建企業數據公共層,並可以幫助相似大數據項目快速落地實現。

數據中臺數據加工鏈路也是遵循業界的分層理念:包括操作數據層(ODS,Operational Data Store)、明細數據層(DWD,Data Warehouse Detail)、彙總數據層(DWS, Data Warehouse Summary)和應用數據層(ADS,Application Data Store)。通過數據中臺不同層次之間的加工過程實現從數據資產向信息資產的轉化,並且對整個過程進行有效的元數據管理及數據質量處理。

下圖展示數據公共層(ODS+DWD+DWS)與數據應用層(ADS)在數據分層中的位置:

(1)統一數據基礎層

我們通過各種方式採集到的豐富數據,在清洗、結構化後進入統一的ODS數據基礎層。

其主要功能包括:

  • 同步:結構化數據增量或全量同步到數據中臺
  • 結構化:非結構化(日誌)結構化處理並存儲到數據中臺
  • 累積歷史、清洗:根據數據業務需求及稽覈和審計要求保存歷史數據、數據清洗

在權責方面,所有數據應該在源頭統一,統一所有的數據基礎層,並由一個團隊負責和管控,其他團隊無權複製數據基礎層的數據。

(2)數據中間層

我們進行數據建模研發,並處理不因業務特別是組織架構變動而輕易轉移的數據中間層。包括DWD明細數據中間層和DWS彙總數據中間層。

其主要功能包括:

  • 組合相關和相似數據: 採用明細寬表,複用關聯計算,減少數據掃描。
  • 公共指標統一加工:基於OneData體系構建命名規範、口徑一致和算法統一的統計指標,爲上層數據產-品、應用和服務提供公共指標;建立邏輯彙總寬表;
  • 建立一致性維度:建立一致數據分析維度表,降低數據計算口徑、算法不統一的風險。

在權責方面,面向業務提供服務之前,由統一的團隊負責從業務中抽象出源於業務而又不同於業務的數據域,再主導統一建設數據中間層,包括側重明細數據預JOIN等處理的明細中間層、側重面向應用可複用維度和指標的彙總數據中間層。特別是要由唯一團隊負責將核心業務數據統一加入數據中間層。允許部分業務數據有獨立的數據團隊按照統一的OneModel體系方法論建設數據體系,ODS數據基礎層和DWD+DWS數據中間層因其統一性和可複用性,被稱爲數據公共層。

(3)數據應用層

在面向應用提供服務時,業務團隊或深入業務線的數據團隊有極大的自由度,只要依賴數據公共層,即可自由的建設ADS數據應用層。

其主要功能包括:

  • 個性化指標加工:不公用性;複雜性(指數型、比值型、排名型指標)
  • 基於應用的數據組裝:大寬表集市、橫錶轉縱表、趨勢指標串

數據服務層

當數據已被整合和計算好之後,需要提供給產品和應用進行數據消費,爲了更好的性能和體驗,需要構建數據服務層,通過接口服務化方式對外提供數據服務。針對不同的需求,數據服務層的數據源架構在多種數據庫之上,如Mysql和Hbase等。

數據服務可以使應用對底層數據存儲透明,將海量數據方便高效地開放給集團內部各應用使用。如何在性能、穩定性、擴展性等多方面更好地服務用戶;如何滿足應用各種複雜的數據服務需求;如何保證數據服務接口的高可用。隨着業務的發展,需求越來越複雜,因此數據服務也在不斷地前進。

不管是數據公共層還是應用層,最終都需要面向業務提供服務。爲了讓業務部門找數據、看數據、用數據更加方便,我們將OpenAPI升級爲能緩解業務變化對數據模型衝擊的包括方法論+產品在內的OneService體系,使其在提供統一的公用服務的同時,兼容面向個性化應用的服務。

下圖爲數據服務層在數據分層中的位置:

綜上,企業數據中臺依託數據採集層、數據計算層、數據服務層,爲上層數據產品、業務系統等提供數據支撐。雲上數據中臺產品Dataphin從“採、建、管、用”爲企業提供一站式數據中臺各層次的實現,配合阿里雲系列產品,可實現企業數據中臺全鏈路穩定、高效構建。

作者:柯根

原文鏈接

本文爲阿里雲原創內容,未經允許不得轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章