共計 2920 個字符,預(yù)計需要花費 8 分鐘才能閱讀完成。
這篇文章的內(nèi)容主要圍繞 OneData 模型實施過程是怎樣的進(jìn)行講述,文章內(nèi)容清晰易懂,條理清晰,非常適合新手學(xué)習(xí),值得大家去閱讀。感興趣的朋友可以跟隨丸趣 TV 小編一起閱讀吧。希望大家通過這篇文章有所收獲!
1.業(yè)界常用的模型實施過程
Kimball 模型實施過程
Kimball 維度建模主要探討需求分析、高層模型、詳細(xì)模型和模型審查整個過程。
構(gòu)建維度模型一般要經(jīng)歷三個階段:第一個階段是高層設(shè)計時期,定義業(yè)務(wù)過程維度模型的范圍,提供每種星形模式的技術(shù)和功能描述;第二個階段是詳細(xì)模型設(shè)計時期,對每個星形模型添加屬性和度量信息;第三個階段是進(jìn)行模型的審查、再設(shè)計和驗證等工作,第四個階段是產(chǎn)生詳細(xì)設(shè)計文檔,提交 ETL 設(shè)計和開發(fā)。
高層模型:高層模型設(shè)計階段的直接產(chǎn)出目標(biāo)是創(chuàng)建高層維度模型圖,它是對業(yè)務(wù)過程中的維表和事實表的圖形描述。確定維表創(chuàng)建初始屬性列表,為每個事實表創(chuàng)建提議度量。
詳細(xì)模型:詳細(xì)的維度建模過程是為高層模型填補缺失的信息,解決設(shè)計問題,并不斷測試模型能否滿足業(yè)務(wù)需求,確保模型的完備性。確定每個維表的屬性和每個事實表的度量,并確定信息來源的位置、定義,確定屬性和度量如何填入模型的初步業(yè)務(wù)規(guī)則。
模型審查、再設(shè)計和驗證:本階段主要召集相關(guān)人員進(jìn)行模型的審查和驗證,根據(jù)審查結(jié)果對詳細(xì)維度進(jìn)行再設(shè)計。
提交 ETL 設(shè)計和開發(fā):最后,完成模型詳細(xì)設(shè)計文檔,提交 ETL 開發(fā)人員,進(jìn)入 ETL 設(shè)計和開發(fā)階段,由 ETL 人員完成物理模型的設(shè)計和開發(fā)。
上述內(nèi)容主要引用自 Ralph Kimball 等的 The Data Warehouse Lifecycle Toolkit,具體細(xì)節(jié)請參考原著作。
Inmon 模型實施過程
Inmon 對數(shù)據(jù)模型的定位是:扮演著通往數(shù)據(jù)倉庫其他部分的智能路線圖的角色。由于數(shù)據(jù)倉庫的建設(shè)不是一蹴而就的,為了協(xié)調(diào)不同人員的工作以及適應(yīng)不同類型的用戶,非常有必要建立一個路線圖——數(shù)據(jù)模型,描述數(shù)據(jù)倉庫各部分是如何結(jié)合在一起的。
Inmon 將模型劃分為三個層次,分別是 ERD(Entity Relationship Diagram,實體關(guān)系圖)層、DIS(Data Item Set,數(shù)據(jù)項集)層和物理層(Physical Model,物理模型)。
ERD 層是數(shù)據(jù)模型的最高層,該層描述了公司業(yè)務(wù)中的實體或主題域以及它們之間的關(guān)系;DIS 層是中間層,該層描述了數(shù)據(jù)模型中的關(guān)鍵字、屬性以及細(xì)節(jié)數(shù)據(jù)之間的關(guān)系;物理層是數(shù)據(jù)建模的最底層,該層描述了數(shù)據(jù)模型的物理特性。
Inmon 對于構(gòu)建數(shù)據(jù)倉庫模型建議采用螺旋式開發(fā)方法,采用迭代方式完成多次需求。但需要采用統(tǒng)一的 ERD 模型,才能夠?qū)⒚看蔚慕Y(jié)果整合在一起。ERD 模型是高度抽象的數(shù)據(jù)模型,描述了企業(yè)完整的數(shù)據(jù)。而每次迭代則是完成 ERD 模型的子集,通過 DIS 和物理數(shù)據(jù)模型實現(xiàn)。
上述內(nèi)容主要引用自 Inmon 的 Building the Data Warehouse,具體細(xì)節(jié)請參考原著作。
其他模型實施過程
在實踐中經(jīng)常會用到如下數(shù)據(jù)倉庫模型層次的劃分,和 Kimball、Inmon 的模型實施理論有一定的相通性,但不涉及具體的模型表達(dá)。
業(yè)務(wù)建模,生成業(yè)務(wù)模型,主要解決業(yè)務(wù)層面的分解和程序化。
領(lǐng)域建模,生成領(lǐng)域模型,主要是對業(yè)務(wù)模型進(jìn)行抽象處理,生成領(lǐng)域概念模型。
邏輯建模,生成邏輯模型,主要是將領(lǐng)域模型的概念實體以及實體之間的關(guān)系進(jìn)行數(shù)據(jù)庫層次的邏輯化。
物理建模,生成物理模型,主要解決邏輯模型針對不同關(guān)系數(shù)據(jù)庫的物理化以及性能等一些具體的技術(shù)問題。
2.OneData 實施過程
重點講解怎么使用 OneData 這套體系和相配套的工具實施大數(shù)據(jù)系統(tǒng)的模型建設(shè),在講解中會以阿里巴巴的具體業(yè)務(wù)進(jìn)行說明。
指導(dǎo)方針
首先,在建設(shè)大數(shù)據(jù)數(shù)據(jù)倉庫時,要進(jìn)行充分的業(yè)務(wù)調(diào)研和需求分析。這是數(shù)據(jù)倉庫建設(shè)的基石,業(yè)務(wù)調(diào)研和需求分析做得是否充分直接決定了數(shù)據(jù)倉庫建設(shè)是否成功。其次,進(jìn)行數(shù)據(jù)總體架構(gòu)設(shè)計,主要是根據(jù)數(shù)據(jù)域?qū)?shù)據(jù)進(jìn)行劃分;按照維度建模理論,構(gòu)建總線矩陣、抽象出業(yè)務(wù)過程和維度。再次,對報表需求進(jìn)行抽象整理出相關(guān)指標(biāo)體系,使用 OneData 工具完成指標(biāo)規(guī)范定義和模型設(shè)計。最后,就是代碼研發(fā)和運維。本文將會重點講解物理模型設(shè)計之前(含)步驟的內(nèi)容。
實施工作流
數(shù)據(jù)調(diào)研——業(yè)務(wù)調(diào)研:整個阿里集團(tuán)涉及的業(yè)務(wù)涵蓋電商、數(shù)字娛樂、導(dǎo)航(高德)、移動互聯(lián)網(wǎng)服務(wù)等領(lǐng)域。各個領(lǐng)域又涵蓋多個業(yè)務(wù)線,如電商領(lǐng)域就涵蓋了 C 類(淘寶、天貓、天貓國際)與 B 類(阿里巴巴中文站、國際站、速賣通)業(yè)務(wù)。數(shù)據(jù)倉庫是要涵蓋所有業(yè)務(wù)領(lǐng)域,還是各個業(yè)務(wù)領(lǐng)域獨自建設(shè),業(yè)務(wù)領(lǐng)域內(nèi)的業(yè)務(wù)線也同樣面臨著這個問題。所以要構(gòu)建大數(shù)據(jù)數(shù)據(jù)倉庫,就需要了解各個業(yè)務(wù)領(lǐng)域、業(yè)務(wù)線的業(yè)務(wù)有什么共同點和不同點,以及各個業(yè)務(wù)線可以細(xì)分為哪幾個業(yè)務(wù)模塊,每個業(yè)務(wù)模塊具體的業(yè)務(wù)流程又是怎樣的。業(yè)務(wù)調(diào)研是否充分,將會直接決定數(shù)據(jù)倉庫建設(shè)是否成功。
在阿里巴巴,一般各個業(yè)務(wù)領(lǐng)域獨自建設(shè)數(shù)據(jù)倉庫,業(yè)務(wù)領(lǐng)域內(nèi)的業(yè)務(wù)線由于業(yè)務(wù)相似、業(yè)務(wù)相關(guān)性較大,進(jìn)行統(tǒng)一集中建設(shè)。
數(shù)據(jù)調(diào)研——需求調(diào)研:可以想象一下,在沒有考慮分析師、業(yè)務(wù)運營人員的數(shù)據(jù)需求的情況下,根據(jù)業(yè)務(wù)調(diào)研建設(shè)的數(shù)據(jù)倉庫無疑等于閉門造車。了解了業(yè)務(wù)系統(tǒng)的業(yè)務(wù)后并不代表就可以進(jìn)行實施了,此刻要做的就是收集數(shù)據(jù)使用者的需求,可以去找分析師、業(yè)務(wù)運營人員了解他們有什么數(shù)據(jù)訴求,此時更多的就是報表需求。
需求調(diào)研的途徑有兩種:一是根據(jù)與分析師、業(yè)務(wù)運營人員的溝通(郵件、IM)獲知需求;二是對報表系統(tǒng)中現(xiàn)有的報表進(jìn)行研究分析。通過需求調(diào)研分析后,就清楚數(shù)據(jù)要做成什么樣的。很多時候,都是由具體的數(shù)據(jù)需求驅(qū)動數(shù)據(jù)倉庫團(tuán)隊去了解業(yè)務(wù)系統(tǒng)的業(yè)務(wù)數(shù)據(jù),這兩者并沒有嚴(yán)格的先后順序。
舉例:分析師需要了解大淘寶(淘寶、天貓、天貓國際)一級類目的成交金額。當(dāng)獲知這個需求后,我們要分析根據(jù)什么(維度)匯總,以及匯總什么(度量),這里類目是維度,金額是度量;明細(xì)數(shù)據(jù)和匯總數(shù)據(jù)應(yīng)該怎樣設(shè)計?這是一個公用的報表嗎?是需要沉淀到匯總表里面,還是在報表工具中進(jìn)行匯總?
架構(gòu)設(shè)計——數(shù)據(jù)域劃分:數(shù)據(jù)域是指面向業(yè)務(wù)分析,將業(yè)務(wù)過程或者維度進(jìn)行抽象的集合。業(yè)務(wù)過程可以概括為一個個不可拆分的行為事件,如下單、支付、退款。為保障整個體系的生命力,數(shù)據(jù)域需要抽象提煉,并且長期維護(hù)和更新,但不輕易變動。在劃分?jǐn)?shù)據(jù)域時,既能涵蓋當(dāng)前所有的業(yè)務(wù)需求,又能在新業(yè)務(wù)進(jìn)入時無影響地被包含進(jìn)已有的數(shù)據(jù)域中或者擴(kuò)展新的數(shù)據(jù)域。
架構(gòu)設(shè)計——構(gòu)建總線矩陣:在進(jìn)行充分的業(yè)務(wù)調(diào)研和需求調(diào)研后,就要構(gòu)建總線矩陣了。需要做兩件事情:明確每個數(shù)據(jù)域下有哪些業(yè)務(wù)過程;業(yè)務(wù)過程與哪些維度相關(guān),并定義每個數(shù)據(jù)域下的業(yè)務(wù)過程和維度。
規(guī)范定義:規(guī)范定義主要定義指標(biāo)體系,包括原子指標(biāo)、修飾詞、時間周期和派生指標(biāo)。
模型設(shè)計:模型設(shè)計主要包括維度及屬性的規(guī)范定義,維表、明細(xì)事實表和匯總事實表的模型設(shè)計。相關(guān)實踐詳解請參考后續(xù)章節(jié)。
感謝你的閱讀,相信你對“OneData 模型實施過程是怎樣的”這一問題有一定的了解,快去動手實踐吧,如果想了解更多相關(guān)知識點,可以關(guān)注丸趣 TV 網(wǎng)站!丸趣 TV 小編會繼續(xù)為大家?guī)砀玫奈恼拢?/p>