邏輯模型

邏輯模型

邏輯模型,是指數據的邏輯結構。邏輯建模是數據倉庫實施中的重要一環,因為它能直接反映出業務部門的需求,同時對系統的物理實施有著重要的指導作用,它的作用在於可以通過實體和關係勾勒出企業的數據藍圖。

發展簡史


邏輯模型中層次模型和網狀模型是早的數據模型,統稱為非關係模型。20世紀70年代至80年代初,非關係模型的資料庫系統非常流行,在資料庫系統產品佔據了主導地位,現在已逐漸被關係模型的資料庫系統取代,但在美國等地,由於早期開發的應用系統都是基於層次或網狀資料庫系統,因此目前層次資料庫或網狀資料庫的系統仍很多。
20世紀80年代以來,面向對象的方法和技術在計算機各個領域,包括程序設計語言,軟體工程、計算機硬體等各方面都產生了深遠的影響,出現了一種新的模型——面對對象的數據模型。

分類


邏輯模型
邏輯模型
目前最常用的邏輯模型有層次模型、網狀模型和關係模型。
這3種邏輯模型的根本區別在於數據結構不同,即數據之間聯繫的表達方式不同,層次模型用“樹結構”來表示數據之間的聯繫;網狀模型是用“圖結構”來表示數據之間的聯繫;關係模型是用“二維表”來表示數據之間的聯繫。

三要素


邏輯模型是嚴格定義的一組概念的集合,主要由數據結構、數據操作和完整性約束部分組成,通常稱為數據三要素。

數據結構

數據結構是計算機數據組織方式和數據之間聯繫的框架描述,而數據文件的數據就按照這種框架描述進行組織。
數據結構是所描述對象類型的集合,是對系統的靜態描述。

數據操作

數據操作是指對資料庫中各種對象的實例或取值所允許執行操作的集合,其中包括操作方法及有關規則,它是對資料庫動態特性的描述。

完整性約束

邏輯模型
邏輯模型
完全性約束是指對數據的一組完整性規則(約束條件)的集合。邏輯邏輯應該反映和和規定本數據模型必須遵守的基本的通用的完整性約束條件。例如,在關係模型中,任何關係都必須滿足實體完整性參照完整性兩個 條件。此外,邏輯模型還應該提供用戶定義完整性約束條件的機制,以反映具體應用所涉及的數據必須遵守的特定的語義約束條件。

設計步驟


分析主題域

邏輯模型
邏輯模型
概念模型設計中,我們確定了幾個基本的主題域,但是,數據倉庫的設計方法是一個逐步求精的過程,在進行設計時,一般是一次一個主題或一次若干個主題地逐步完成的。所以,我們必須對概念模型設計步驟中確定 的幾個基本主題域進行分析,一併選擇首先要實施的主題域。選擇第一個主題域所要考慮的是它要足夠大,以便使得該主題域能建設成為一個可應用的系統;它還要足夠小,以便於開發和較快地實施。

粒度層次劃分

數據倉庫邏輯設計中要解決的一個重要問題是決定數據倉庫的粒度劃分層次,粒度層次劃分適當與否直接影響到數據倉庫中的數據量和所適合的查詢類型。由於主題資料庫響應企業級業務OLTP需求,所以必須保存最細類度數據,同時根據業務部門的查詢需求考慮確定多重粒度來提高複雜查詢速度。

確定數據分割策略

在這一步里,要選擇適當的數據分割的標準,一般要考慮以下幾方面因素:數據量〔而非記錄行數)、數據分析處理的實際情況、簡單易行以及粒度劃分策略等。其中,數據量的大小是決定是否進行數據分割和如何分割的主要因素;數據分析處理的要求是選擇數據分割標準的一個主要依據,因為數據分割是跟數據分析處理的對象緊密聯繫的。

關係模式定義

邏輯模型
邏輯模型
數據倉庫的每個主題都是由多個表來實現的,這些表之間依靠主題的公共碼鍵聯繫在一起,形成一個完整的 主題。在概念模型設計時,我們就確定了數據倉庫的基本主題,並對每個主題的公共碼鍵、基本內容等做了描述。在這一步里,我們將要對選定的當前實施的主題進行模式劃分,形成多個表,並確定各個表的關係模式。