妳更傾向於整合各個系統的數據來服務於數據分析和決策,還是更傾向於快速完成分析和決策需求?
如果是前者,在對數據倉庫建模時壹般會選擇er建模方法。
如果是後者,壹般會選擇維度建模方式。
ER建模:即實體關系建模,由數據倉庫之父BIll Inmon提出。核心思想是從整個企業的高度設計三範式模型,用實體關系描述企業服務。它提倡自頂向下的架構,將不同的OLTP數據集中到壹個面向主題的數據倉庫中。
維度建模(Dimension modeling):由Kimball提出,核心思想是從分析決策的需求出發建立模型。該模型由事實表和維度表組成,即星型模型和雪花型模型。Kimball提倡自下而上的架構,可以為獨立部門建立數據集市,然後增量式構建,匯總成數據倉庫。
2.其次,妳要進行深入的業務調研和數據研究。
業務調研:深入的業務調研可以讓妳更加明確建倉的目的;同時也有利於後續的建模和設計。隨著研究的深入,如何將實體業務抽象成多倉庫模型將會更加清晰。
數據研究:了解各個部門或部門的數據狀況,包括數據分類、數據存儲方式、數據量、具體數據內容等。這是後續主數據拼接或維度壹致性處理的必要基礎。
3.然後是數據倉庫的工具選擇。
傳統數據倉庫:壹般會選擇第三方廠商的數據庫和配套的ETL工具。因為有第三方支持,相對有保障;但缺點也很明顯,受約束,成本高。
NoSQL數據倉庫:壹般是基於hadoop生態的數據倉庫。hadoop生態系統已經非常強大,可以找到各種開源組件來支持數據倉庫。缺點是需要招募專業人士來探索,會有壹些不為人知的隱患。
4.最後是設計和實現。
設計:包括數據架構中的數據層次劃分和具體模型設計;它還包括程序架構中的數據質量管理、元數據管理和調度管理。
實現:標準化的項目管理實現,但同時要記住,數據倉庫不是壹個項目,它是壹個過程。