天天看點

Kimball多元模型的四大誤解

很久沒看模型方面的理論知識,最近3年在網際網路公司琢磨前行,遇到了很多坑和自我否定或迷惑的狀态。就多元模型來說,被傳統行業洗禮,還有誤人子弟的網上文章和CUBE工具,把kimball帶入了一個萬劫不複的誤區。我是幸運的,而且逃離了這個誤區。接下來講解一下我親身經曆的(Raph總結的)四大誤區:
           

一、次元模型隻包含彙總資料

原因:完全是被某些cube工具帶偏了對kimball的了解。如Kylin, 隻能選擇5~10個次元建構cuboid。
事實上,多元模型首先是把某個業務過程,基于最細粒度建構次元化模型。網際網路數倉常用的大寬表,一般采用這個方式建構次元公共層模型。
怎麼能說它隻包含彙總資料呢?
           

二、次元模型是部門級,不是企業級模型

原因:很多項目采用Inmon構架基礎資料層,然後建構多元資料集市。導緻很多碼農以為,次元模型僅僅适用于某個部門的産品需求。
事實上,多元模型是圍繞企業總線架構和價值鍊的業務過程來建構,建構星型或雪花型次元化模型。比如總線矩陣,主題寬表層,就是面向企業級。
           

三、次元模型不可擴充,或擴充性差

原因:次元模型隻能裝有限少量次元的彙總資料,一旦疊代次元,模型就需要重構和預計算資料。
事實上,給終端使用者報表的彙總資料,屬于聚集事實表,這很不容易擴充。聚集事實表,衍生于最細粒度建構的次元模型。如果說模型不可擴充,或資料量必須有限,那就是設計者的模組化理論缺乏導緻。
           

四、次元模型僅用于預測或無法适應業務變化

原因:很多算法工程師,總是基于彙總的資料做模型演練和機器學習。一旦疊代,他們就得重新去取數,建構資料集。
事實上,建構最細粒度的、高内聚低耦合的次元模型,非常容易擴充,并且主動擁抱疊代。
           

希望此文,對迷途中的你有所幫助。

繼續閱讀