天天看點

連載6:阿裡巴巴大資料實踐:大資料建設方法論OneData1.定位及價值2.體系架構

前言:

-更多關于數智化轉型、資料中台内容請加入

阿裡雲資料中台交流群—數智俱樂部 和關注官方微信公總号(文末掃描二維碼或 點此加入

-阿裡雲資料中台官網 https://dp.alibaba.com/index

來源:數智化轉型俱樂部

面對爆炸式增長的資料,如何建設高效的資料模型和體系,對這些資料進行有序和有結構地分類組織和存儲,避免重複建設和資料不一緻性,保證資料的規範性,一直是大資料系統建設不斷追求的方向。

OneData即是阿裡巴巴内部進行資料整合及管理的方法體系和工具。阿裡巴巴的大資料工程師在這一體系下,建構統一、規範、可共享的全域資料體系,避免資料的備援和重複建設,規避資料煙囪和不一緻性,充分發揮阿裡巴巴在大資料海量、多樣性方面的獨特優勢。借助這一統一化資料整合及管理的方法體系,我們建構了阿裡巴巴的資料公共層,并可以幫助相似的大資料項目快速落地實作。下面重點介紹OneData體系和實施方法論。

1.定位及價值

阿裡巴巴集團大資料建設方法論的核心是:從業務架構設計到模型設計,從資料研發到資料服務,做到資料可管理、可追溯、可規避重複建設。目前,阿裡巴巴集團資料公共層團隊已把這套方法論沉澱為産品,以幫助資料PD、資料模型師和ETL工程師建設阿裡的大資料。這一體系包含方法論以及相關産品。

建設統一的、規範化的資料接入層(ODS)和資料中間層(DWD和DWS),通過資料服務和資料産品,完成服務于阿裡巴巴的大資料系統建設,即資料公共層建設。提供标準化的(Standard)、共享的(Shared)、資料服務(Service)能力,降低資料互通成本,釋放計算、存儲、人力等資源,以消除業務和技術之痛。

2.體系架構

連載6:阿裡巴巴大資料實踐:大資料建設方法論OneData1.定位及價值2.體系架構

體系架構如圖。

業務闆塊:由于阿裡巴巴集團業務生态龐大,是以根據業務的屬性劃分出幾個相對獨立的業務闆塊,業務闆塊之間的名額或業務重疊性較小。如電商業務闆塊涵蓋淘系、B2B系和AliExpress系等。

規範定義:阿裡資料業務龐大,結合行業的資料倉庫建設經驗和阿裡資料自身特點,設計出的一套資料規範命名體系,規範定義将會被用在模型設計中。後面章節将會詳細說明。

模型設計:以次元模組化理論為基礎,基于次元模組化總線架構,建構一緻性的次元和事實(進行規範定義)。同時,在落地表模型時,基于阿裡自身業務特點,設計出一套表規範命名體系。

3.模型設計

模型設計指導理論:阿裡巴巴集團資料公共層設計理念遵循次元模組化思想,可參考Star Schema-The Complete Reference和The Data Warehouse Toolkit-The Definitive Guide to Dimensional Modeling。資料模型的次元設計主要以次元模組化理論為基礎,基于次元資料模型總線架構,建構一緻性的次元和事實。

模型層次:阿裡巴巴的資料團隊把表資料模型分為三層:操作資料層(ODS)、公共次元模型層(CDM)和應用資料層(ADS),其中公共次元模型層包括明細資料層(DWD)和彙總資料層(DWS)。

操作資料層(ODS):把作業系統資料幾乎無處理地存放在資料倉庫系統中。

同步:結構化資料增量或全量同步到MaxCompute。

結構化:非結構化(日志)結構化處理并存儲到MaxCompute。

累積曆史、清洗:根據資料業務需求及稽核和審計要求儲存曆史資料、清洗資料。

公共次元模型層(CDM):存放明細事實資料、維表資料及公共名額彙總資料,其中明細事實資料、維表資料一般根據ODS層資料加工生成;公共名額彙總資料一般根據維表資料和明細事實資料加工生成。

CDM層又細分為DWD層和DWS層,分别是明細資料層和彙總資料層,采用次元模型方法作為理論基礎,更多地采用一些次元退化手法,将次元退化至事實表中,減少事實表和維表的關聯,提高明細資料表的易用性;同時在彙總資料層,加強名額的次元退化,采取更多的寬表化手段建構公共名額資料層,提升公共名額的複用性,減少重複加工。其主要功能如下。

組合相關和相似資料:采用明細寬表,複用關聯計算,減少資料掃描。

公共名額統一加工:基于OneData體系建構命名規範、口徑一緻和算法統一的統計名額,為上層資料産品、應用和服務提供公共名額;建立邏輯彙總寬表。

建立一緻性次元:建立一緻的資料分析維表,降低資料計算口徑、算法不統一的風險。

應用資料層(ADS):存放資料産品個性化的統計名額資料,根據CDM層與ODS層加工生成。

個性化名額加工:不公用性、複雜性(指數型、比值型、排名型名額)。

基于應用的資料組裝:大寬表集市、橫表轉縱表、趨勢名額串。

阿裡巴巴通過建構全域的公共層資料,極大地控制了資料規模的增長趨勢,同時在整體的資料研發效率、成本節約、性能改進方面都有不錯的效果。

資料調用服務優先使用公共次元模型層(CDM)資料,當公共層沒有資料時,需評估是否需要建立公共層資料,當不需要建設公用的公共層時,方可直接使用操作資料層(ODS)資料。應用資料層(ADS)作為産品特有的個性化資料一般不對外提供資料服務,但是ADS作為被服務方也需要遵守這個約定。

基本原則:高内聚和低耦合——一個邏輯或者實體模型由哪些記錄和字段組成,應該遵循最基本的軟體設計方法論的高内聚和低耦合原則。主要從資料業務特性和通路特性兩個角度來考慮:将業務相近或者相關、粒度相同的資料設計為一個邏輯或者實體模型;将高機率同時通路的資料放一起,将低機率同時通路的資料分開存儲;

核心模型與擴充模型分離——建立核心模型與擴充模型體系,核心模型包括的字段支援常用的核心業務,擴充模型包括的字段支援個性化或少量應用的需要,不能讓擴充模型的字段過度侵入核心模型,以免破壞核心模型的架構簡潔性與可維護性。

公共處理邏輯下沉及單一——越是底層公用的處理邏輯越應該在資料排程依賴的底層進行封裝與實作,不要讓公用的處理邏輯暴露給應用層實作,不要讓公共邏輯多處同時存在。

成本與性能平衡——适當的資料備援可換取查詢和重新整理性能,不宜過度備援與資料複制。

資料可復原——處理邏輯不變,在不同時間多次運作資料結果确定不變。

一緻性——具有相同含義的字段在不同表中的命名必須相同,必須使用規範定義中的名稱。

命名清晰、可了解——表命名需清晰、一緻,表名需易于消費者了解和使用。

如何從具體的需求或項目轉換為可實施的解決方案,如何進行需求分析、架構設計、詳細模型設計等,則是模型實施過程中讨論的内容。下節會簡單介紹業界常用的模型實施過程,重點講解阿裡巴巴OneData模型設計理論及實施過程。注:本書中出現的部分專有名詞、專業術語、産品名稱、軟體項目名稱、工具名稱等,是淘寶(中國)軟體有限公司内部項目的慣用詞語,如與第三方名稱雷同,實屬巧合。

節選自《大資料之路:阿裡巴巴大資料實踐》已受版權保護,未經授權不得轉載

**

連載1:阿裡巴巴大資料實踐—資料開發平台>> 連載2:阿裡巴巴大資料實踐—實時技術>> 連載3:阿裡巴巴大資料實踐—資料服務>> 連載4:阿裡巴巴大資料實踐—資料模組化綜述 連載5:阿裡巴巴大資料實踐—阿裡巴巴的資料模型實踐綜述>>

資料中台是企業數智化的新基建,阿裡巴巴認為資料中台是集方法論、工具、組織于一體的,“快”、“準”、“全”、“統”、“通”的智能大資料體系。目前正通過阿裡雲資料中台解決方案對外輸出,包括

零售

金融 網際網路 政務

等領域,其中核心産品有:

官方站點:

資料中台官網

https://dp.alibaba.com
連載6:阿裡巴巴大資料實踐:大資料建設方法論OneData1.定位及價值2.體系架構

繼續閱讀