數據倉庫為什么要分層


  1. 如何分層
    • 結合Inmon和Kimball的集線器式和總線式的數據倉庫的優點,分層為ODS【-MID】-DW-DM-OLAP/OLAM/app
    • ODS層是將OLTP數據通過ETL同步到數據倉庫來作為數據倉庫最基礎的數據來源。在這個過程中,數據經過了一定的清洗,比如字段的統一,臟數據的去除等,但是數據的粒度是不會變化的。ODS層的數據可以只保留一定的時間。
    • MID中間層是采用Inmon集線器架構的方式,使用范式建模(貼源)的方法。這一層主要是做規范化的事情,比如應用庫表非規范化,字段格式復雜(json格式)需做一些處理。這一層不是必須有的。也不會對外開放使用。范式建模保證了數據一致性、唯一性、正確性。
    • DW-DM層是采用Kimball的總線式的數據倉庫架構,針對部門(比如財務部門)或者某一主題(比如商戶、用戶),通過維度建模(推薦星型模型),構建一致性維度,原子粒度的數據是DW層,按照實體或者主題經過一定的匯總,建設數據集市模型。數據集市可以為OLAP提供服務。
  2. 為什么要分層
    • 空間換時間。通過建設多層次的數據模型供用戶使用,避免用戶直接使用操作型數據,可以更高效的訪問數據。
    • 把復雜問題簡單化。講一個復雜的任務分解成多個步驟來完成,每一層只處理單一的步驟,比較簡單和容易理解。而且便於維護數據的准確性,當數據出現問題之后,可以不用修復所有的數據,只需要從有問題的步驟開始修復。
    • 便於處理業務的變化。隨着業務的變化,只需要調整底層的數據,對應用層對業務的調整零感知.
  3. 分層的價值
    • 高效的數據組織形式【易維護
      面向主題的特性決定了數據倉庫擁有業務數據庫所無法擁有的高效的數據組織形式,更加完整的數據體系,清晰的數據分類和分層機制。因為所有數據在進入數據倉庫之前都經過清洗和過濾,使原始數據不再雜亂無章,基於優化查詢的組織形式,有效提高數據獲取、統計和分析的效率。
    • 時間價值【高性能】
      數據倉庫的構建將大大縮短獲取信息的時間,數據倉庫作為數據的集合,所有的信息都可以從數據倉庫直接獲取,數據倉庫的最大優勢在於一旦底層從各類數據源到數據倉庫的ETL流程構建成型,那么每天就會有來自各方面的信息通過自動任務調度的形式流入數據倉庫,從而使一切基於這些底層信息的數據獲取的效率達到迅速提升。
      從應用來看,使用數據倉庫可以大大提高數據的查詢效率,尤其對於海量數據的關聯查詢和復雜查詢,所以數據倉庫有利於實現復雜的統計需求,提高數據統計的效率。
    • 集成價值【簡單化】
      數據倉庫是所有數據的集合,包括日志信息、數據庫數據、文本數據、外部數據等都集成在數據倉庫中,對於應用來說,實現各種不同數據的關聯並使多維分析更加方便,為從多角度多層次地數據分析和決策制定提供的可能。
    • 歷史數據【歷史性】
      記錄歷史是數據倉庫的特性之一,數據倉庫能夠還原歷史時間點上的產品狀態、用戶狀態、用戶行為等,以便於能更好的回溯歷史,分析歷史,跟蹤用戶的歷史行為,更好地比較歷史和總結歷史,同時根據歷史預測未來。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM