首頁>技術>

資料庫模式與正規化資料庫的結構與模式

資料庫系統劃分為三個抽象級

使用者級資料庫:使用者級資料庫對應於外模式,是最接近使用者的一級資料庫,是使用者可以看到和使用的資料庫,又稱使用者檢視。概念級資料庫:概念級資料庫對應於概念模式,介於使用者級和物理級之間,是所有使用者檢視的最小並集,是資料庫管理員可看到和使用的資料庫,又稱 DBA(DataBase Administrator,資料庫管理員)檢視。物理級資料庫。物理級資料庫對應於內模式,是資料庫的低層表示,它描述資料的實際儲存組織,是最接近於物理儲存的級,又稱內部檢視。

資料庫系統的三級模式

概念模式:概念模式(模式、邏輯模式)用以描述整個資料庫中資料庫的邏輯結構,描述現實世界中的實體及其性質與聯絡,定義記錄、資料項、資料的完整性約束條件及記錄之間的聯絡,是資料項值的框架。外模式:外模式(子模式、使用者模式)用以描述使用者看到或使用的那部分資料的邏輯結構,使用者根據外模式用資料操作語句或應用程式去操作資料庫中的資料。內模式。內模式是整個資料庫的最低層表示,不同於物理層,它假設外存是一個無限的線性地址空間。內模式定義的是儲存記錄的型別、儲存域的表示以及儲存記錄的物理順序,指引元、索引和儲存路徑等資料的儲存組織。

兩級獨立性

物理獨立性。物理獨立性是指使用者的應用程式與儲存在磁碟上的資料庫中的資料是相互獨立的。當資料的物理儲存改變時,應用程式不需要改變。邏輯獨立性。邏輯獨立性是指使用者的應用程式與資料庫中的邏輯結構是相互獨立的。當資料的邏輯結構改變時,應用程式不需要改變。資料模型

概念資料模型 按照使用者的觀點來對資料和資訊建模,主要用於資料庫設計。概念模型主要用實體—聯絡方法(Entity-Relationship Approach)表示,所以也稱 E-R 模型。

基本資料模型 按照計算機系統的觀點來對資料和資訊建模,主要用於 DBMS 的實現。基本資料模型是資料庫系統的核心和基礎。

關係代數

關係代數的基本運算主要有並、交、差、笛卡爾積、選擇、投影、連線和除法運算

並:計算兩個關係在集合理論上的並集,即給出關係 R 和 S(兩者有相同元/列數),R∪S 的元組包括 R 和 S 所有元組的集合。差:計算兩個關係的區別的集合,即給出關係 R 和 S(兩者有相同元/列數),R-S的元組包括 R 中有而 S 中沒有的元組的集合。交:計算兩個關係集合理論上的交集,即給出關係 R 和 S(兩者有相同元/列數),R∩S 的元組包括 R 和 S 相同元組的集合。顯然,R∩S = R-(R-S) 和 R∩S = S-(S-R)成立笛卡爾積:計算兩個關係的笛卡爾乘積,令 R 為有 m 元的關係,S 為有 n 元的關係,則 R×S 是 m+n 元的元組的集合,其前 m 個元素來自 R 的一個元組,而後 n 個元素來自 S 的一個元組。投影:從一個關係中抽取指明的屬性(列)。選擇:從關係R中抽取出滿足給定限制條件的記錄。θ連線:θ連線從兩個關係的笛卡兒積中選取屬性之間滿足一定條件的元組除:設有關係 R(X,Y)與關係 S(Z),Y 和 Z 具有相同的屬性個數,且對應屬性出自相同域。關係 R(X,Y)÷S(Z)所得的商關係是關係 R 在屬性 X 上投影的一個子集,該子集和 S(Z)的笛卡爾積必須包含在 R(X,Y)中,記為 R÷S,其具體計算公式為:資料的規範化

關係模型滿足的確定約束條件稱為正規化,根據滿足約束條件的級別不同,正規化由低到高分為 1NF(第一正規化)、2NF(第二正規化)、3NF(第三正規化)、BCNF(BC 正規化)、4NF(第四正規化)等。

第一正規化1NF 是最低的規範化要求。如果關係 R 中所有屬性的值域都是簡單域,其元素(即屬性)不可再分,是屬性項而不是屬性組,那麼關係模型 R 是第一正規化的第二正規化如果一個關係 R 屬於 1NF,且所有的非主屬性都完全依賴於主屬性,則稱之為第二正規化第三正規化如果一個關係 R 屬於 2NF,且每個非主屬性不傳遞依賴於主屬性,這種關係是 3NF反規範化

資料庫中的資料規範化的優點是減少了資料冗餘,節約了儲存空間,相應邏輯和物理的 I/O 次數減少,同時加快了增、刪、改的速度,但是對完全規範的資料庫查詢,通常需要更多的連線操作,從而影響查詢速度。因此,有時為了提高某些查詢或應用的效能而破壞規範規則,即反規範化(非規範化處理)。常見的反規範化技術包括:

增加冗餘列增加冗餘列是指在多個表中具有相同的列,它常用來在查詢時避免連線操作增加派生列增加派生列指增加的列可以透過表中其他資料計算生成。它的作用是在查詢時減少計算量,從而加快查詢速度。重新組表重新組表指如果許多使用者需要檢視兩個表連接出來的結果資料,則把這兩個表重新組成一個表來減少連線而提高效能。分割表有時對錶做分割可以提高效能。表分割有兩種方式,水平分割和垂直分割資料庫設計

資料庫設計的過程是將資料庫系統與現實世界密切地、有機地、協調一致地結合起來的過程。資料庫的設計質量與設計者的知識、經驗和水平密切相關。作為資料庫應用系統的重要組成部分,資料庫設計的成敗往往直接關係到整個應用系統的成敗。

資料庫設計的方法

基於 3NF 的資料庫設計方法是資料庫設計的結構化設計方法,其基本思想是在需求分析的基礎上,識別並確認資料庫模式中的全部屬性和屬性間的依賴,將它們組織成一個單一的關係模型,然後再分析模式中不符合 3NF 的約束條件,用投影和連線的辦法將其分解,使其達到 3NF 條件。

設計企業模式設計資料庫邏輯模式設計資料庫物理模式(儲存模式)評價物理模式資料庫實現資料庫設計的基本步驟

分步設計法遵循自頂向下、逐步求精的原則,將資料庫設計過程分解為若干相互獨立又相互依存的階段,每一階段採用不同的技術與工具,解決不同的問題,從而將問題區域性化,減少了區域性問題對整體設計的影響。在分步設計法中,通常將資料庫的設計分為需求分析、概念結構設計、邏輯結構設計和資料庫物理設計 4 個階段,如下圖所示。

需求分析 需求分析是資料庫設計過程的第一步,是整個資料庫設計的依據和基礎。需求分析的目標是透過對單位的資訊需求及處理要求的調查分析得到設計資料庫所必需的資料集及其相互聯絡,形成需求說明書,作為後面各設計階段的基礎。這一階段的任務是: a.確認需求、確定設計目標 b.分析和收集資料 c.整理文件(需求說明文件/需求說明書)概念結構設計 概念結構設計階段所涉及的資訊不依賴於任何實際實現時的環境,即計算機的硬體和軟體系統。概念結構設計的目標是產生一個使用者易於理解的,反映系統資訊需求的整體資料庫概念結構。概念結構設計的任務是,在需求分析中產生的需求說明書的基礎上按照一定的方法抽象成滿足應用需求的使用者的資訊結構,即通常所稱的概念模型。概念資料模型的作用是:提供能夠識別和理解系統要求的框架;為資料庫提供一個說明性結構,作為設計資料庫邏輯結構,即邏輯模型的基礎。邏輯結構設計 資料庫邏輯結構設計的任務就是把概念結構設計階段設計好的基本 E-R 圖轉換為與具體機器上的 DBMS 產品所支援的資料模型相符合的邏輯結構。這一階段是資料庫結構設計的重要階段。資料庫物理設計 資料庫在實際的物理裝置上的儲存結構和存取方法稱為資料庫的物理結構。資料庫物理設計是利用已確定的邏輯結構及 DBMS 提供的方法、技術,以較優的儲存結構、資料存取路徑、合理的資料儲存位置及儲存分配,設計出一個高效的、可實現的物理資料庫結構。事務管理

資料庫系統執行的基本工作單位是事務,事務相當於作業系統中的程序,是使用者定義的一個數據庫操作序列,這些操作序列要麼全做要麼全不做,是一個不可分割的工作單位。事務具有以下特性:

原子性(Atomicity):資料庫的邏輯工作單位。一致性(Consistency):使資料庫從一個一致性狀態變到另一個一致性狀態。隔離性(Isolation):不能被其他事務干擾。持續性(永久性)(Durability):一旦提交,改變就是永久性的。

在多使用者共享系統中,許多事務可能同時對同一資料進行操作,稱為“併發操作”,此時資料庫管理系統的併發控制子系統負責協調併發事務的執行,保證資料庫的完整性不受破壞,同時避免使用者得到不正確的資料。處理併發控制的主要方法是採用封鎖技術。它有兩種型別:排他型封鎖(X 封鎖)和共享型封鎖(S 封鎖)。

排他型封鎖(簡稱 X 封鎖)如果事務 T 對資料 A(可以是資料項、記錄、資料集,乃至整個資料庫)實現了 X 封鎖,那麼只允許事務 T 讀取和修改資料 A,其他事務要等事務 T 解除 X 封鎖以後,才能對資料 A 實現任何型別的封鎖。X 封鎖只允許一個事務獨鎖某個資料,具有排他性。共享型封鎖(簡稱 S 封鎖)如果事務 T 對資料 A 實現了 S 封鎖,那麼允許事務 T 讀取資料 A,但不能修改資料 A,在所有 S 封鎖解除之前絕不允許任何事務對資料 A 實現 X 封鎖。

15
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • github專案:tcp穿透內網passbytcp