维度建模基本流程总结
一、維度建模基本流程圖
數(shù)據(jù)RD進(jìn)行業(yè)務(wù)調(diào)研和數(shù)據(jù)現(xiàn)狀調(diào)研,產(chǎn)出符合相關(guān)模版規(guī)范的業(yè)務(wù)知識(shí)文檔和數(shù)據(jù)現(xiàn)狀文檔。數(shù)據(jù)PM也會(huì)調(diào)研相關(guān)業(yè)務(wù)產(chǎn)出需求設(shè)計(jì)文檔,三方參與需求評(píng)審,評(píng)審?fù)ㄟ^后基建數(shù)據(jù)RD進(jìn)行需求拆解,產(chǎn)出技術(shù)方案,三方進(jìn)行技術(shù)方案評(píng)審,如果技術(shù)方案評(píng)審?fù)ㄟ^進(jìn)入基建需求池、排期、開發(fā)、上線并做相關(guān)數(shù)據(jù)運(yùn)營(yíng)動(dòng)作。
二、維度建模流程詳情
詳細(xì)流程主要介紹每個(gè)步驟的參與方、行動(dòng)詳情、產(chǎn)出結(jié)果并明確相關(guān)的check機(jī)制。
2.1 業(yè)務(wù)調(diào)研
關(guān)鍵動(dòng)作
業(yè)務(wù)調(diào)研主要是業(yè)務(wù)方、數(shù)據(jù)PM、數(shù)據(jù)RD參與,數(shù)據(jù)RD具體動(dòng)作如下:
1.理解業(yè)務(wù)環(huán)境,通過和業(yè)務(wù)方代表交流發(fā)現(xiàn)需求,用于理解他們基于關(guān)鍵性能指標(biāo)、競(jìng)爭(zhēng)性商業(yè)問題、決策制定過程、支持分析需求的目標(biāo)。
2.梳理業(yè)務(wù)過程,通過和源系統(tǒng)專家交流信息、業(yè)務(wù)方的描述信息梳理業(yè)務(wù)過程,業(yè)務(wù)過程是一個(gè)不可拆分的行為事件。
3.分析關(guān)鍵業(yè)務(wù)和核心問題,分析關(guān)鍵業(yè)務(wù)及其動(dòng)作是什么,明確業(yè)務(wù)現(xiàn)階段所關(guān)注的核心問題,對(duì)核心問題的理解有助于我們覆蓋業(yè)務(wù)場(chǎng)景。
核心成果
業(yè)務(wù)調(diào)研完成后,需要編寫業(yè)務(wù)知識(shí)文檔,此文檔可以按照如下思路整理
1.業(yè)務(wù)簡(jiǎn)介,源系統(tǒng)業(yè)務(wù)簡(jiǎn)單概述,明確決策過程和分析目標(biāo)等。
2.統(tǒng)一業(yè)務(wù)概念,將源數(shù)據(jù)(即業(yè)務(wù)系統(tǒng))中隱含的、有歧義的概念進(jìn)行清晰化。
3.業(yè)務(wù)流程介紹,重點(diǎn)關(guān)注源系統(tǒng)的ER模型,整理業(yè)務(wù)流程圖,梳理業(yè)務(wù)基本動(dòng)作等。
4.總結(jié)業(yè)務(wù)對(duì)數(shù)據(jù)的需求,重點(diǎn)梳理業(yè)務(wù)指標(biāo)。
業(yè)務(wù)調(diào)研步驟可重可輕,重:基建層面從質(zhì)量、效率、成本和擴(kuò)展性長(zhǎng)遠(yuǎn)考慮需要深入調(diào)研并理解。①質(zhì)量: 通過數(shù)據(jù)集成和一致性建設(shè),提升數(shù)據(jù)指標(biāo)的一致性及及時(shí)性;②效率:提升計(jì)算、存儲(chǔ)、查詢效率,提升用戶體驗(yàn);③成本:減少不必要的數(shù)據(jù)冗余、提升模型復(fù)用度,降低存儲(chǔ)、計(jì)算以及維護(hù)開發(fā)、降低成本。④擴(kuò)展:屏蔽業(yè)務(wù)及上游系統(tǒng)的變更影響,能靈活快速兼容業(yè)務(wù)變更以及支撐新業(yè)務(wù)。
輕:根據(jù)需求緊急程度,結(jié)合原有調(diào)研的相關(guān)知識(shí),快速支持業(yè)務(wù)需求。
2.2 數(shù)據(jù)現(xiàn)狀調(diào)研
關(guān)鍵動(dòng)作
數(shù)據(jù)現(xiàn)狀調(diào)研主要是數(shù)據(jù)PM、數(shù)據(jù)RD參與,關(guān)鍵動(dòng)作如下:
1.數(shù)據(jù)PM需要梳理歷史定義的數(shù)據(jù)指標(biāo)口徑,這部分口徑解決什么問題(隨著時(shí)間推移歷史指標(biāo)口徑不明確,解釋不清等)。
2.從數(shù)據(jù)RD角度需要梳理之前產(chǎn)出的模型、看板、數(shù)據(jù)產(chǎn)品,不同的交付方式所對(duì)應(yīng)的模型是否相同,有沒有口徑不統(tǒng)一的風(fēng)險(xiǎn)。同時(shí)將這部分涉及的底表列出來,還沒有接入的提前接入。
核心成果
1.數(shù)據(jù)RD明確指標(biāo)如何使用:主要是通過表格描述清楚之前的看板和產(chǎn)品使用的模型、模型對(duì)應(yīng)的指標(biāo)。
2.歷史指標(biāo)及其口徑,從數(shù)據(jù)PM角度需要了解之前定義的數(shù)據(jù)指標(biāo)口徑,這部分口徑解決什么問題。
3.初步給出一些優(yōu)化改進(jìn)建議,比如重復(fù)邏輯下沉、重復(fù)開發(fā)優(yōu)化等。
2.3 主題抽象&總線矩陣
關(guān)鍵動(dòng)作
主要由數(shù)據(jù)RD完成,關(guān)鍵動(dòng)作如下:
1.明確數(shù)倉(cāng)建設(shè)的相關(guān)分層和命名規(guī)范。
2.明確數(shù)據(jù)域的抽象劃分。
3.明確主題、業(yè)務(wù)過程及其對(duì)應(yīng)關(guān)系。
4.明確業(yè)務(wù)過程和一致性維度關(guān)系。
核心成果
產(chǎn)出相關(guān)文檔,主要包含①主題、詞根和主題對(duì)應(yīng)業(yè)務(wù)過程關(guān)系表;②主題和一致性維度矩陣,方便從宏觀認(rèn)識(shí)整個(gè)數(shù)倉(cāng);③每個(gè)主題下業(yè)務(wù)過程和一致性維度關(guān)系矩陣。
2.4 數(shù)據(jù)需求設(shè)計(jì)
關(guān)鍵動(dòng)作
主要由數(shù)據(jù)PM完成,關(guān)鍵動(dòng)作如下:
1.明確背景和業(yè)務(wù)價(jià)值。
2.如果是涉及到產(chǎn)品化的項(xiàng)目需要明確產(chǎn)品或報(bào)表工具,設(shè)計(jì)相關(guān)原型圖。如果只提供數(shù)據(jù)集,需要明確指標(biāo)如何使用,作用的結(jié)果。
3.定義清楚維度和指標(biāo)(偏應(yīng)用層指標(biāo))
4.明確期望交付時(shí)間、交付結(jié)果,數(shù)據(jù)回刷范圍等。
關(guān)鍵產(chǎn)出就是需求文檔(PRD)。
需求PRD產(chǎn)出后需要組織業(yè)務(wù)方、數(shù)據(jù)RD和PM進(jìn)行需求評(píng)審,主要check 需求評(píng)審文檔,是否符合既定規(guī)范,價(jià)值描述清晰、維度和指標(biāo)口徑,數(shù)據(jù)范圍、交付時(shí)間等。
2.5 數(shù)據(jù)需求拆解
關(guān)鍵動(dòng)作
主要由數(shù)據(jù)RD完成,關(guān)鍵動(dòng)作如下:
事實(shí)表設(shè)計(jì):
1.選擇業(yè)務(wù)過程:選擇主題域明確主題下的業(yè)務(wù)過程,選擇具體的業(yè)務(wù)過程(在主題域內(nèi)根據(jù)情況會(huì)抽象新增/合并業(yè)務(wù)過程)開始拆解。
2.確定事實(shí)表,根據(jù)需求設(shè)計(jì)合適的事實(shí)表類型,事務(wù)事實(shí)表、周期快照事實(shí)表、累積快照事實(shí)表。
3.聲明粒度,在從給定的業(yè)務(wù)過程中獲取數(shù)據(jù)時(shí),原子粒度是最低級(jí)別的粒度,建議優(yōu)先關(guān)注原子粒度數(shù)據(jù)開始設(shè)計(jì),原子粒度數(shù)據(jù)能承受無法預(yù)期的用戶查詢,然后根據(jù)針對(duì)業(yè)務(wù)公共問題和性能出發(fā)設(shè)計(jì)上卷匯總粒度數(shù)據(jù)表。
4.確認(rèn)維度:維度是度量的環(huán)境,用來反映業(yè)務(wù)的一類屬性,這類屬性的集合構(gòu)成一個(gè)維度,也可以成為實(shí)體對(duì)象。在實(shí)際工作中好的維度設(shè)計(jì)可以層次遞進(jìn)的反應(yīng)業(yè)務(wù)情況
5.確認(rèn)事實(shí)(指標(biāo)):事實(shí)就是度量,一般是對(duì)某個(gè)業(yè)務(wù)事件的衡量,通常為數(shù)字,如定單量,訂單金額等。盡可能包含業(yè)務(wù)過程下所有原子指標(biāo),只選擇和業(yè)務(wù)過程相關(guān)的原子指標(biāo),統(tǒng)一同類指標(biāo)的單位。根據(jù)規(guī)范對(duì)指標(biāo)拆解:①確定原子指標(biāo):基于某一業(yè)務(wù)時(shí)間行為下的度量,是業(yè)務(wù)定義中不可再拆分的指標(biāo)(比率等指標(biāo)除外),具有明確業(yè)務(wù)含義和業(yè)務(wù)完整定義的名詞。原子指標(biāo)=業(yè)務(wù)過程(動(dòng)作)+度量,比如推單量,下單金額,支付金額;②確定派生指標(biāo):派生指標(biāo)=一個(gè)原子指標(biāo)+多個(gè)修飾詞(可選)+時(shí)間周期。可以理解為對(duì)原子指標(biāo)業(yè)務(wù)統(tǒng)計(jì)范圍的圈定。比如昨日新用戶下單量
6.梳理具體業(yè)務(wù)過程下的指標(biāo)維度矩陣。
維表表設(shè)計(jì)
1.選擇實(shí)體
維度表設(shè)計(jì)首先要選擇實(shí)體,也就是維度表所要描述的抽象對(duì)象。如,互聯(lián)網(wǎng)電商在交易過程中涉及到的實(shí)體有:買家、賣家、訂單、廣告等等,當(dāng)然還有一些在不同業(yè)務(wù)場(chǎng)景下衍生出來的一些業(yè)務(wù)抽象實(shí)體,如優(yōu)惠券、活動(dòng)、商圈等都可以作為維度實(shí)體。 實(shí)體的選擇主要是結(jié)合業(yè)務(wù)流程,在需要建模的業(yè)務(wù)流程環(huán)節(jié)涉及到了哪些參與者,這些不同的參與者便是維度表描述的實(shí)體對(duì)象,維度表中的屬性,就是用來區(qū)分不同實(shí)體的特性。
2.確定主維表
確定主維表,主要是識(shí)別出維度表的主要數(shù)據(jù)來源。通常,業(yè)務(wù)系統(tǒng)中也會(huì)將相同類型業(yè)務(wù)實(shí)體進(jìn)行統(tǒng)一存儲(chǔ)(即一張表),亦或是在大型企業(yè)有建設(shè)業(yè)務(wù)中臺(tái)會(huì)提前做同類業(yè)務(wù)實(shí)體的數(shù)據(jù)融合(如,商品中心、用戶中心等)。但在沒有類似業(yè)務(wù)中臺(tái)可以直接獲取全量維度實(shí)體數(shù)據(jù)的情況下,就需要自行確定業(yè)務(wù)實(shí)體數(shù)據(jù)的來源,并做融合。一般情況會(huì)將常規(guī)主要業(yè)務(wù)流程中產(chǎn)生的業(yè)務(wù)系統(tǒng)數(shù)據(jù)做為主維度表,因?yàn)槠湟话闶蔷S度表的主要數(shù)據(jù)來源,并且數(shù)據(jù)準(zhǔn)確、豐富。
3.確定輔維表
輔維表存在的目的有兩方面。一方面是補(bǔ)全主維表在維度實(shí)體的數(shù)據(jù);另一方面是為了尋找維度表所表示的業(yè)務(wù)實(shí)體的一些其他屬性描述輔助表,這些輔維表用來豐富維度表的屬性描述,增強(qiáng)維度表的表現(xiàn)性,同樣也能擴(kuò)展維度表的分析能力。
4.識(shí)別維度屬性
維度表的維度屬性一般可以分為相對(duì)穩(wěn)定的“固化屬性”和變動(dòng)頻繁“動(dòng)態(tài)屬性“。由于“固化屬性”和“動(dòng)態(tài)屬性”的變更周期差異巨大,一般會(huì)在維度表的構(gòu)建過程中結(jié)合具體的場(chǎng)景進(jìn)行拆分,一方面是保證維度表能夠高效的產(chǎn)出,另一方面也是為追溯歷史數(shù)據(jù)提供合理的技術(shù)實(shí)現(xiàn)。
注意點(diǎn):增加文字描述(枚舉和中文對(duì)應(yīng)關(guān)系);統(tǒng)一單位;統(tǒng)一標(biāo)志值(0/1,Y/N)等。
關(guān)鍵結(jié)果
產(chǎn)出業(yè)務(wù)過程下的指標(biāo)維度矩陣。
2.6 技術(shù)方案設(shè)計(jì)和評(píng)審
主要由數(shù)據(jù)RD完成技術(shù)方案設(shè)計(jì),然后組織PM和RD進(jìn)行技術(shù)方案評(píng)審,關(guān)鍵動(dòng)作如下:
1.原則上遵循公司數(shù)倉(cāng)建模規(guī)范或數(shù)據(jù)倉(cāng)庫(kù)工具箱相關(guān)規(guī)范。
2.編寫技術(shù)方案,背景部分主要闡述業(yè)務(wù)痛點(diǎn)和目標(biāo);需求梳理主要是明確我們開發(fā)的指標(biāo)維度矩陣;核心模型設(shè)計(jì)即數(shù)倉(cāng)整體架構(gòu)設(shè)計(jì)(服務(wù)規(guī)范)和表詳情設(shè)計(jì),表詳情設(shè)計(jì)部分主要明確三個(gè)部分①表的中英文名稱②指標(biāo)名和口徑③指標(biāo)加工邏輯和相關(guān)數(shù)據(jù)調(diào)研;最后技術(shù)方案中明確上線事項(xiàng)和分工排期。
關(guān)鍵結(jié)果
產(chǎn)出技術(shù)方案,技術(shù)方案可以分如下幾個(gè)模塊①項(xiàng)目背景,附上相關(guān)PRD和說明文檔鏈接,介紹清楚背景收益等;②問題和風(fēng)險(xiǎn),對(duì)于存在的問題和風(fēng)險(xiǎn)(業(yè)務(wù)風(fēng)險(xiǎn)、技術(shù)風(fēng)險(xiǎn))應(yīng)當(dāng)有對(duì)應(yīng)的方案,如存在風(fēng)險(xiǎn)或問題情況下,仍按需求進(jìn)行,需要明確相關(guān)責(zé)任人。③項(xiàng)目計(jì)劃,明確相關(guān)責(zé)任人和具體開發(fā)排期。④需求調(diào)研,調(diào)研需求的指標(biāo)、維度和相關(guān)接口。⑤詳細(xì)設(shè)計(jì),第一部分給出整體的設(shè)計(jì)架構(gòu)圖;第二部分接口設(shè)計(jì)詳情;第三部分?jǐn)?shù)倉(cāng)模型設(shè)計(jì);⑥技術(shù)選型,重點(diǎn)關(guān)注查詢引擎,查詢量級(jí),QPS等;⑦上線事項(xiàng):測(cè)試case、上線順序、上線Check List、承諾產(chǎn)出時(shí)間,穩(wěn)定性保障、降級(jí)策略(數(shù)據(jù)延遲、集群異常等兜底方案是否可以使用T+2的數(shù)據(jù),前端進(jìn)行banner文案提示“數(shù)據(jù)暫不可用”,對(duì)外提供接口方式,應(yīng)當(dāng)與數(shù)據(jù)使用方商定出現(xiàn)無數(shù)據(jù)情況的后端兜底或者前端兜底。數(shù)據(jù)內(nèi)容本身的錯(cuò)誤和BUG無法進(jìn)行兜底,責(zé)任由數(shù)倉(cāng)RD來進(jìn)行負(fù)責(zé)并處理。)
2.7 數(shù)據(jù)交付&運(yùn)營(yíng)
對(duì)相關(guān)指標(biāo)進(jìn)行綁定錄入,編寫使用文檔等。
總結(jié)
以上是生活随笔為你收集整理的维度建模基本流程总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分形在山地生成中的应用[1]---中点位
- 下一篇: 维度建模入门