回覆列表
  • 1 # 種豆大叔

    適合!

    在資料倉庫建模領域中,有兩大主流建模思想,ER建模和維度建模(當然還有data vault、anchor等等)。

    ER建模的核心思想是從全企業的高度去設計三正規化模型,用實體關係模型描述企業業務。出發點是整合各系統資料,為資料分析決策服務,但不直接用於分析決策。

    維度建模是從分析決策的需求出發構建模型,重點關注如何快速完成需求分析。典型代表是星形模型,以及一些特殊場景下使用雪花模型。

    光從三正規化模型和星形模型的區別其實就可以看出,更適合hive的就是星形模型。

    hive一般使用的引擎就是mapreduce,mapreduce的設計初衷是海里資料的批次處理,在複雜的聯表查詢方面,反而可能比不上傳統資料庫,尤其是mpp架構的傳統資料庫。三正規化模型勢必會存在很多分散的表,在做資料分析或者報表加工的時候就必須要多表連線,大大降低了使用效率。

    當然使用hive做為資料倉庫時,也不能完全遵從維度建模的思想。我們得在維度建模思想上適當做一些改進。

    比如我們可以使用星形模型完全替代雪花模型,雪花模型除了節約一部分儲存外,在hive中沒有其他優勢。

    同時我們在星形模型的事實表中可以冗餘更多常用的維度資訊,摒棄代理鍵使用快照方式處理緩慢變化維等。

    因為目前階段,hdfs的儲存成本是明顯低於計算資源成本,我們可以採取用空間換時間的策略,從而提升下游使用的易用性和使用效能的提升。

    所以說,維度建模是適合hive的。

  • 中秋節和大豐收的關聯?
  • 耳朵享受的成語?