在數據倉庫建設中,概念數據模型設計與邏輯數據模型設計、物理數據模型設計是數據庫及數據倉庫模型設計的三個主要步驟。
conceptual data model
概念數據模型是最終用戶對數據存儲的看法,反映了最終用戶綜合性的信息需求,它以數據類的方式描述企業級的數據需求,數據類代表了在業務環境中自然聚集成的幾個主要類別數據。
概念數據模型的內容包括重要的實體及實體之間的關系。在概念數據模型中不包括實體的屬性,也不用定義實體的主鍵。這是概念數據模型和邏輯數據模型的主要區別。
概念數據模型的目標是統一業務概念,作為業務人員和技術人員之間溝通的橋梁,確定不同實體之間的最高層次的關系。
在有些數據模型的設計過程中,概念數據模型是和邏輯數據模型合在一起進行設計的。
logical data model
邏輯數據模型反映的是系統分析設計人員對數據存儲的觀點,是對概念數據模型進一步的分解和細化。邏輯數據模型是根據業務規則確定的,關於業務對象、業務對象的數據項及業務對象之間關系的基本藍圖。
邏輯數據模型的內容包括所有的實體和關系,確定每個實體的屬性,定義每個實體的主鍵,指定實體的外鍵,需要進行范式化處理。
邏輯數據模型的目標是盡可能詳細的描述數據,但並不考慮數據在物理上如何來實現。
邏輯數據建模不僅會影響數據庫設計的方向,還間接影響最終數據庫的性能和管理。如果在實現邏輯數據模型時投入得足夠多,那么在物理數據模型設計時就可以有許多可供選擇的方法。
physical data model
物理數據模型是在邏輯數據模型的基礎上,考慮各種具體的技術實現因素,進行數據庫體系結構設計,真正實現數據在數據庫中的存放。
物理數據模型的內容包括確定所有的表和列,定義外鍵用於確定表之間的關系,基於用戶的需求可能進行范式化等內容。在物理實現上的考慮,可能會導致物理數據模型和邏輯數據模型有較大的不同。
物理數據模型的目標是指定如何用數據庫模式來實現邏輯數據模型,以及真正的保存數據。