數(shù)據(jù)倉庫的幾個原則悄雅,讓你避免“陷阱”!

想要數(shù)據(jù)粒度的合理性铁蹈、模型的靈活性得到保證宽闲,并且能夠適應(yīng)未來的信息資源,需要遵守維度建模的一些原則握牧。否則容诬,很容易會遇到數(shù)據(jù)倉庫障礙,并且把用戶弄糊涂沿腰。在此览徒,大圣眾包威客平臺(www.dashengzb.cn)將為你提供幾個數(shù)據(jù)倉庫維度建模的原則,讓你妥妥地避開“陷阱”颂龙。

1.原子數(shù)據(jù)需詳細

維度建模應(yīng)該使用最基礎(chǔ)的原子數(shù)據(jù)進行填充习蓬,以支持不可預(yù)知的來自用戶查詢的過濾和分組請求纽什。

用戶通常不希望每次只看到一個單一的記錄,但是你無法預(yù)測用戶想要掩蓋或顯示哪些數(shù)據(jù)躲叼。如果只有匯總數(shù)據(jù)芦缰,那么你已經(jīng)設(shè)定了數(shù)據(jù)的使用模式,當用戶想要深入挖掘數(shù)據(jù)時枫慷,他們就會遇到障礙让蕾。盡管原子數(shù)據(jù)通過概要維度建模補充也是一種辦法,但是這樣做的話或听,企業(yè)用戶便無法只在匯總數(shù)據(jù)上工作探孝,畢竟,他們需要原始數(shù)據(jù)回答不斷變化的問題誉裆。

2.使用代理鍵

按順序分配代理鍵(除了日期維度)可以獲得一系列的操作優(yōu)勢再姑,包括更小的事實表、索引以及性能改善找御。如果你正在跟蹤維度屬性的變化元镀,并需要為每個變化使用一個新的維度記錄,那么代理鍵就顯得十分重要了霎桅。因為栖疑,即使你的商業(yè)用戶沒有初始化跟蹤屬性改變的設(shè)想值,使用代理也會使下游策略變化更寬松滔驶。另外遇革,代理也允許使用多個業(yè)務(wù)鍵映射到一個普通的配置文件中,這有利于緩沖意想不到的業(yè)務(wù)活動揭糕。

3.標記和過濾范圍值

值得注意的是萝快,編碼、關(guān)聯(lián)的解碼著角、用于標記和查詢過濾的描述符揪漩,應(yīng)該被捕獲到維度表中,避免在事實表中存儲神秘的編碼字段或龐大的描述符字段吏口。同樣的奄容,不要只在維度表中存儲編碼,而要假定用戶不需要描述性的解碼产徊,或它們將在BI應(yīng)用程序中得到解決昂勒。如果它是一個行/列標記或下拉菜單過濾器,那么它應(yīng)該當作一個維度屬性處理舟铜。

另外戈盈,事實表的外鍵不應(yīng)該為空,同時在維度表的屬性字段中應(yīng)使用“NA”或另一個默認值來替換空值谆刨,這也是明智的塘娶,可以減少用戶的困惑归斤。

4.一致的維度,集成整個企業(yè)的數(shù)據(jù)

企業(yè)數(shù)據(jù)倉庫一致的維度(也叫做通用維度血柳、標準或參考維度)是最基本的原則官册,它在ETL系統(tǒng)中管理一次后生兆,在所有事實表中都可以重用难捌。

一致的維度,在整個維度模型中可以獲得一致的描述屬性鸦难,可以支持從多個業(yè)務(wù)流程中整合數(shù)據(jù)根吁。企業(yè)數(shù)據(jù)倉庫總線矩陣是最關(guān)鍵的架構(gòu)藍圖,它展現(xiàn)了組織的核心業(yè)務(wù)流程和關(guān)聯(lián)的維度合蔽,重用一致的維度可以縮短產(chǎn)品的上市時間击敌,也消除了冗余設(shè)計和開發(fā)過程,但一致的維度需要在數(shù)據(jù)管理和治理方面有較大的投入拴事。

5.圍繞業(yè)務(wù)流程建模

業(yè)務(wù)流程是組織執(zhí)行的活動沃斤,它們代表可測量的事件,如下一個訂單或做一次結(jié)算刃宵。業(yè)務(wù)流程通常會捕獲或生成唯一的與某個事件相關(guān)的性能指標衡瓶,當這些數(shù)據(jù)轉(zhuǎn)換成事實后,每個業(yè)務(wù)流程都會用一個原子事實表表示牲证。除了單個流程事實表外哮针,有時會以多個流程事實表合并成一個事實表,而且合并事實表是對單一流程事實表的一個很好的補充坦袍。

6.相同的粒度或同級的詳細程度

在組織事實表時十厢,粒度上有三個基本原則:事務(wù)、周期快照捂齐、累加快照蛮放。無論粒度類型如何,事實表中的度量單位都必須達到相同水平的詳細程度奠宜;如果事實表中的事實表現(xiàn)的粒度不一樣筛武,企業(yè)用戶容易混淆,BI應(yīng)用程序也會隨之變得不堪一擊挎塌,從而導(dǎo)致返回的結(jié)果不對等低級錯誤的發(fā)生徘六。

7.一對一的關(guān)聯(lián)日期維度表

如上文所說,每個可測量事件總有一個日期戳信息榴都,每個事實表至少需要有一個外鍵待锈,能夠關(guān)聯(lián)到一個日期維度表,它的粒度就是一天嘴高。這個方法竿音,利用的是日歷屬性和非標準的關(guān)于測量事件日期的特性和屎,如財務(wù)月和公司假日的指示符;當然春瞬,有時一個事實表中會有多個日期外鍵柴信。

8.解決多對一關(guān)系

屬性之間分層的、多對一(M:1)的關(guān)系宽气,通常是未規(guī)范化的随常,或者被收縮到扁平型的維度表中。如果你曾經(jīng)有過為事務(wù)型系統(tǒng)設(shè)計實體關(guān)系模型的經(jīng)歷萄涯,那你一定要摒棄掉舊有的思維模式绪氛,將其規(guī)范化或?qū):1關(guān)系拆分成更小的子維度。維度反向規(guī)范化涝影,便是維度建模中常用的詞匯枣察。

一對一的關(guān)系,如一個產(chǎn)品描述對應(yīng)一個產(chǎn)品代碼燃逻,可以在維度表中處理序目。然而,在單個維度表中伯襟,多對一(M:1)的關(guān)系也非常常見猿涨,在事實表中偶爾也有多對一關(guān)系,如當維度表中有上百萬條記錄逗旁,而它推出的屬性又經(jīng)常發(fā)生變化時嘿辟。不管怎樣,在事實表中要慎用M:1關(guān)系片效。

9.解決多對多關(guān)系

由于事實表存儲的是業(yè)務(wù)流程事件的結(jié)果红伦,因此在它們的外鍵之間存在多對多(M:M)的關(guān)系,如多個倉庫中的多個產(chǎn)品在多天銷售淀衣,這些外鍵字段便不能為空昙读。有時一個維度可以為單個測量事件賦予多個值,如一個保健對應(yīng)多個診斷膨桥,或多個客戶有一個銀行賬號蛮浑,在這些情況下,它的不合理直接解決了事實表中多值維度只嚣,這可能違反了測量事件的天然粒度沮稚,因此我們使用多對多、雙鍵橋接表連接事實表册舞。

10.平衡需求和現(xiàn)實蕴掏,提供DW/BI解決方案

維度建模需要不斷在用戶需求和數(shù)據(jù)源事實之間進行平衡,才能夠提交可執(zhí)行性好的設(shè)計。更重要的是盛杰,要符合業(yè)務(wù)的需要挽荡,需求和事實之間的平衡是DW/BI從業(yè)人員必須面對的事實,無論是集中在維度建模即供,還是項目策略定拟、技術(shù)/ETL/BI架構(gòu),或開發(fā)/維護規(guī)劃逗嫡,都要面對這一事實青自。

總的來說,數(shù)據(jù)倉庫維度建模需要注意的部分挺多祸穷,在建模的過程中務(wù)必要多留心眼性穿,細致謹慎勺三,這才是成功之道雷滚。尤其進入大數(shù)據(jù)時代,與數(shù)據(jù)打交道的機會愈趨增多吗坚,要想成為工作中的“常勝將軍”祈远,切忌馬虎。

(更多大數(shù)據(jù)與商業(yè)智能領(lǐng)域干貨商源、兼職機會請關(guān)注大圣眾包平臺车份,或添加大圣花花個人微信號(dashenghuaer),拉你入bigdata&BI交流群330648564牡彻。)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末扫沼,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子庄吼,更是在濱河造成了極大的恐慌缎除,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件总寻,死亡現(xiàn)場離奇詭異器罐,居然都是意外死亡,警方通過查閱死者的電腦和手機渐行,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門轰坊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人祟印,你說我怎么就攤上這事肴沫。” “怎么了蕴忆?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵颤芬,是天一觀的道長。 經(jīng)常有香客問我,道長驻襟,這世上最難降的妖魔是什么夺艰? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮沉衣,結(jié)果婚禮上郁副,老公的妹妹穿的比我還像新娘。我一直安慰自己豌习,他們只是感情好存谎,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著肥隆,像睡著了一般既荚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上栋艳,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天恰聘,我揣著相機與錄音,去河邊找鬼吸占。 笑死晴叨,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的矾屯。 我是一名探鬼主播兼蕊,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼件蚕!你這毒婦竟也來了孙技?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤排作,失蹤者是張志新(化名)和其女友劉穎牵啦,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纽绍,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡蕾久,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了拌夏。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片僧著。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖障簿,靈堂內(nèi)的尸體忽然破棺而出盹愚,到底是詐尸還是另有隱情,我是刑警寧澤站故,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布皆怕,位于F島的核電站毅舆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏愈腾。R本人自食惡果不足惜憋活,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望虱黄。 院中可真熱鬧悦即,春花似錦、人聲如沸橱乱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽泳叠。三九已至作瞄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間危纫,已是汗流浹背宗挥。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留叶摄,地道東北人属韧。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓安拟,卻偏偏與公主長得像蛤吓,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子糠赦,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容