資料庫系統概述
一、資料庫基本概念
1 資料
資料(Data)是描述事物的符號記錄,是指用物理符號記錄下來的、可以鑒別的資訊,
資料以及關于該資料的解釋是密切相關的,
資料的解釋是對資料含義的說明,也稱為資料的語意,即資料所蘊含的資訊,
資料與其語意密不可分,沒有語意的資料是沒有意義和不完整的,
資料是資訊存在的一種形式,只有通過解釋或處理的資料才能成為有用的資訊,
2 資料庫
資料庫(Database,DB)通俗地被稱為存盤資料的倉庫,只是這個倉庫是存盤在計算機存盤設備上的,并且其所存盤的資料是按一定的格式進行存盤的,
若從嚴格意義上講,所謂資料庫是指長期儲存在計算機中的有組織的、可共享的資料集合,且資料庫中的資料按一定的資料模型組織、描述和存盤,具有較小的冗余度、較高的資料獨立性,系統易于擴展,并可以被多個用戶共享,
資料庫中存盤的資料具有永久存盤、有組織和可共享三個基本特點,
3 資料庫管理系統
資料庫管理系統(Database Management System,DBMS)是專門用于建立和管理資料庫的一套軟體,介于應用程式和作業系統之間,它負責科學有效地組織和存盤資料,并幫助資料庫的使用者能夠從大量的資料中快速地獲取所需資料,以及提供必要的安全性和完整性等統一控制機制,實作對資料有效的管理和維護,
資料庫管理系統主要功能:
- 資料定義功能:資料定義語言(Data Definition Language,DDL)
- 資料操縱功能:資料操縱語言(Data Manipulation Language,DML)
- 資料庫的遠行管理功能
- 資料庫的建立和維護功能
- 資料組織、存盤和管理功能
- 其他功能
4 資料庫系統
資料庫系統(Database System,DBS)是指在計算機中引入資料庫技術之后的系統,
一個完整的資料庫系統包括資料庫、資料庫管理系統及相關實用工具、應用程式、資料庫管理員和用戶,
資料庫管理員(Database Administrator,DBA)不同于普通資料庫用戶,他們是專門負責對資料庫進行維護,并保證資料庫正常、高效運行的人員,
用戶是資料庫系統的服務物件,通常包括程式員和資料庫終端用戶兩類用戶,
程式員通過高級程式設計語言(如SQL)撰寫資料庫應用程式,應用程式會根據需要向資料庫管理系統發出適當的請求,再由資料庫管理系統對資料庫執行相應的操作,
終端用戶是從客戶機或聯機終端上以互動方式向資料庫系統提出各種操作請求,并由資料庫管理系統回應執行,而后訪問資料庫中的資料,
一般在不引起混淆的情況下,常常將資料庫系統簡稱為資料庫,
二、資料管理技術的發展
資料管理
- 針對組織業務的需要,負責制定并執行整個組織中關于資料的定義、組織、保護與有效使用的策略、程序和計劃
- 依靠技術,負責實作資料作為一種資源的集中控制管理
資料組織
- 邏輯組織:資料的邏輯組織是用戶或應用程式所使用的資料結構形式
- 物理組織:資料在物理存盤設備上的結構形式
檢索:為了向用戶提供資訊,存盤的資料要能夠方便地被選擇提取
資料管理的任務:進行資料的收集、組織、控制、存盤、選取、維護,實作在適當的時刻、以適當的形式、給適當的人、提供適當的資料,是資料處理的中心問題
資料處理:對各種資料進行收集、存盤、加工和傳播的一系列活動的總和
資料管理技術的三個階段:
- 人工管理階段: 20世紀50年代中期以前 批處理
- 資料不保存
- 應用程式管理資料
- 資料面向應用:不能共享、存在大量冗余、資料的獨立性差
- 檔案系統階段:20世紀50年代后期到60年代中期 檔案系統 記錄內有結構 整體無
- 資料的物理獨立性
- 資料可長期保存和專門管理
- 資料共享成為可能 檔案級共享
- 存在大量的資料冗余
- 資料庫系統階段 20世紀60年代后期以來 資料庫管理系統
- 資料集成 最大程度共享 冗余最小
- 資料共享性高 用戶視圖 并發共享
- 資料冗余小 冗余是受控的
- 資料一致性
- 資料獨立性高
- 實施統一管理與控制
- 資料的安全性(Security)
- 資料的完整性(Intergrity)
- 并發控制(Concurrency)
- 故障恢復(Recovery)
- 減少應用程式開發與維護的作業量
資料獨立:資料定義與使用資料的應用程式分離(邏輯獨立、物理獨立)
三、資料庫系統的結構
資料系統(資料庫管理員(DBA視角)):
- 內部系統結構
- 三級模式結構
- 外部系統結構
- 集中式結構
- 分布式結構
- 并行結構
資料系統(資料庫應用的用戶(如應用程式的撰寫人員視角)):
- 客戶/服務器結構
- 瀏覽器/服務器結構
資料庫系統的三級模式結構
- 模式(Schema)
- 外模式(External Schema)
- 內模式(Internal Schema)
1 模式
模式:也稱為概念模式或邏輯模式,是資料庫中全體資料的邏輯結構和特征的描述,是所有用戶的公共資料視圖,
DBMS提供模式描述語言(Schema DDL)來嚴格地定義模式,不僅要定義資料的邏輯結構,還要定義資料之間的聯系,定義與資料相關的安全性、完整性等要求,
2 外模式
外模式:也稱為子模式(Subschema)或用戶模式,是資料庫用戶(包括應用程式員和最終用戶)能夠看見和使用的區域資料的邏輯結構和特征的描述,是與某一應用有關的資料的邏輯表示,
外模式實際上是用于滿足不同資料庫用戶需求的資料視圖,即用戶視圖,其通常是模式的子集,是對資料庫整體資料結構的區域重構,
DBMS提供來子模式描述語言(Subschema DDL)來嚴格地定義子模式,
3 內模式
內模式:也稱為存盤模式(Storage Schema),是對資料庫中資料物理結構和存盤方式的描述,是資料在資料庫內部的表示形式,
內部視圖 存盤視圖
DBMS提供內模式描述語言(內模式DDL,或者存盤模式DDL)來嚴格地定義內模式,即定義所有內部記錄型別、索引和檔案的組織方式,以及所有資料控制方面的細節,
4 三級模式結構的兩層映像與資料獨立性
- 一個資料庫的整體邏輯結構和特征的描述(概念模式)是獨立于資料庫其他層次結構(內/外模式)的描述,其是資料庫的核心,也是資料庫設計的關鍵,
- 一個資料庫的內部存盤模式依賴于概念模式,但存盤模式獨立于外部模式,也獨立于具體的存盤設備,
- 用戶邏輯結構(外模式)是在全域邏輯結構描述的基礎上定義的,它是面向具體的應用程式,獨立于內部模式和存盤設備,
- 特定的應用程式是在外模式的邏輯結構上撰寫的,它依賴于特定的外模式,與資料庫的模式和存盤結構獨立,
(1)外模式/模式映像
映像:一種對應規則,指出映像雙方是如何進行轉換的,
資料與程式的邏輯獨立性
(2)模式/內模式映像
唯一的
資料與程式的物理獨立性
資料庫系統的運行與應用結構
1 客戶/服務器結構
客戶/服務器(Client/Server,C/S)模式
單機方式 網路方式
2 瀏覽器/服務器結構
三層客戶/服務器結構
表示層
處理層 中間層
瀏覽器/服務器(Browser/Server,B/S)模式
四 資料模型
模型(Model)是現實世界特征的模擬和抽象表達,其有助于人們更好地認識和理解客觀世界中的事物、物件、程序等感興趣的內容,例如汽車車模、飛機航模、建筑圖紙、軍事沙盤等,
我們常使用資料模型(Data Model)這個工具來模擬和抽象現實世界中的資料特征,
資料模型也是一種模型,它是對現實世界資料特征的抽象,描述的是資料的共性內容,
1 資料特征與資料模型組成要素
資料具有靜態和動態兩種特征:
- 靜態特征:資料的基本結構、資料間的聯系以及對資料取值范圍的約束
- 動態特征:對資料可以進行符合一定規則的操作
對現實世界資料特征進行抽象的資料模型,需要描述資料的靜態特征與動態行為,并為資料的表示和操作提供框架,
資料模型是用來描述資料的結構、定義在結構上的操縱以及資料間的約束的一組概念和定義,
資料模型通常由資料結構、資料操作和資料約束三個要素組成,
(1)資料結構
資料結構描述的是系統的靜態特性,即資料物件的資料型別、內容、屬性以及資料物件之間的聯系,
層次結構、網狀結構、關系結構
層次模型、網狀模型、關系模型、面向物件模型
(2)資料操作
資料操縱描述的是系統的動態特性,是對各種物件的實體允許執行的操作的集合,包括操作及有關的操作規則,
資料操作:
- 更新
- 插入
- 洗掉
- 修改
- 檢索
(3)資料約束
資料約束描述資料結構中資料間的語法和語意關聯,包括相互制約與依存關系以及資料動態變化規則,以保證資料的正確性、有效性與相容性,
資料約束:
- 資料完整性約束
- 資料安全性約束
- 并發控制約束
2 資料模型的分類
資料模型應滿足三個方面的要求:
- 能比較真實地模擬現實世界
- 容易為人們所理解
- 便于在計算機上實作
逐步抽象
現實世界客觀物件 —抽象—> 資訊世界某一種資訊結構(概念級的模型) —轉換、組織—> 機器世界某一資料庫管理系統支持的資料模型
資料模型是模型化資料和資訊的工具,也是資料庫系統的核心和基礎,
概念層資料模型
概念層是資料抽象級別的最高層,其目的是按用戶的觀點來對世界建模,
概念層資料模型,也稱為資料的概念模型(Conceptual Model)或資訊模型,它用來描述現實世界的事物,與具體的計算機系統無關,且獨立于任何DBMS,但容易向DBMS所支持的邏輯資料模型轉換,
這類模型主要用于資料庫的設計階段,即在設計資料庫時,通常用概念模型類抽象、表示現實世界的各種事物及其聯系,
(1)資訊世界中的基本概念
- 物體(Entity):客觀存在并可相互區別的事物稱為物體,
- 屬性(Attribute):物體所具有的某種特性稱為物體的屬性,一個物體可以由多個屬性來描述,
- 碼或鍵(Key):可唯一標識物體的屬性集稱為碼或鍵,
- 域(Domain):屬性的取值范圍稱為該屬性的域,
- 物體型(Entity Type):具有相同屬性的物體必然具有共同的特征和性質,用物體名域屬性名集合來抽象和刻畫同類物體,稱為物體型,
- 物體集(Entity Set):同型物體的集合稱為物體集,
- 聯系(Relationship):在現實世界中,事物內部以及事物之間是有聯系的,這些聯系在資訊世界中反映為物體(型)內部的聯系和物體(型)之間的聯系,
物體內部的聯系通常是指物體各屬性之間的聯系,
物體之間的聯系是指不同物體之間的聯系,
在資料模型中有“型”(type)和“值”(value)兩個不同的概念,
“型”指的是對某一類資料的結構和屬性的說明,
“值”是型的一個具體的賦值,
(2)概念模型的表示方法
概念模型的表示方法中最為常用的是P.P.S.Chen于1976年提出的物體-聯系方法(Entity-Relationship approach),
該方法用E-R圖(E-R diagram)來描述現實世界的概念模型,E-R方法也稱為E-R模型(E-R Model),
E-R圖提供了表示資訊世界中物體、屬性和聯系的方法,
邏輯層資料模型
邏輯層是資料抽象的中間層,描述資料整體的邏輯結構,
邏輯層資料模型:也稱為資料的邏輯模型(Logical Model),是用戶通過資料庫管理系統看到的現實世界,是基于計算機系統的觀點來對資料進行建模和表示,
-
層次模型(Hierarchical Model)
- 資料庫系統最早使用的一種資料模型
- 資料結構是一顆“有向樹”
- 樹的每個結點對應一個記錄集,也就是現實世界的物體集
- 特點:有且僅有一個結點沒有父結點,它稱作根結點;其他結點有且僅有一個父結點
- 難以表達物體之間比較復雜的關系
-
網狀模型(Network Model)
- 以網狀結構表示物體與物體之間的聯系
- 層次模型的擴展,允許結點有多于一個父結點,并可以有一個以上的結點沒有父結點
- 可以方便地表示物體間各種型別的聯系,即可以表示從屬的關系,也可以表示資料間的交叉關系,但結構復雜,實作的演算法難以規范化
-
關系模型(Relational Model)
- 關系模型是用二維表結構來表示物體及物體間聯系的模型,并以二維表格的形式組織資料庫中的資料
- 關系模型是建立在嚴格的數學概念的基礎上的
- 關系模型的概念單一,統一用關系來表示物體以及物體之間的關系,對資料的檢索和更新結果同樣也是用關系(即表)來表示,
- 關系模型的存取路徑對用戶透明,從而具有更高的資料獨立性、更好的安全保密性,也簡化了程式員的作業和資料庫開發建立的作業
-
面向物件模型(Object Oriented Model)
- 面向物件方法與資料庫相結合所構成的資料模型
- 面向物件模型既是概念模型又是邏輯模型
- 面向物件資料模型用面向物件觀點來描述現實世界物體的邏輯組織、物件間的聯系,其表達能力豐富,具有物件可復用、維護方便等優點,是正在發展的資料模型,也是資料庫的發展方向之一
物理層資料模型
物理層資料模型,也稱為資料的物理模型(Physical Model),其描述資料在存盤介質上的組織結構,是邏輯模型的物理實作,即每一種邏輯模型在實作時都有與其相對應的物理模型,
物理模型是資料庫最底層的抽象,它確定資料的物理存盤結構、資料存取路徑以及調整、優化資料庫的性能,
物理模型的設計目標是提高資料庫性能和有效利用存盤空間,
資料庫設計人員:現實世界 ——> 概念模型的轉換
資料庫設計人員/資料庫設計工具協助設計人員:概念模型 ——> 邏輯模型的轉換
資料庫管理系統:邏輯模型 ——> 物理模型的轉換
本文來自博客園,作者:QIAOPENGJUN,轉載請注明原文鏈接:https://www.cnblogs.com/QiaoPengjun/p/17244935.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/547851.html
標籤:其它
上一篇:交易系統之資料庫弱依賴解決方案
下一篇:資料庫系統原理之資料庫編程
