《數(shù)據(jù)庫技術(shù)基礎(chǔ)與應用(第2版)》學習筆記——第2章
第2章 數(shù)據(jù)庫系統(tǒng)概述
2.1 數(shù)據(jù)庫(DB)
2.1.1 三級模式結(jié)構(gòu)
模式是數(shù)據(jù)庫的抽象描述。
模式的主體是數(shù)據(jù)模型。
模式的表示分為圖示與語言描述
用語言書寫的模式稱為源模式。
把源模式翻譯成機器代碼,變?yōu)闄C器可使用的模式,稱為目標模式。
數(shù)據(jù)庫的結(jié)構(gòu)分為外部級、概念級和內(nèi)部級三級,每一級都有對應的模式,所以數(shù)據(jù)庫的體系結(jié)構(gòu)稱為三級模式結(jié)構(gòu)。
概念模式(Conceptual Schema)
概念模式通常簡稱為模式,或全局視圖,或DBA視圖。
從某個角度看到的數(shù)據(jù)特性稱為數(shù)據(jù)視圖(View)。
概念模式是數(shù)據(jù)庫中全部數(shù)據(jù)的整體邏輯結(jié)構(gòu)的描述。
目的是為了把用戶視圖有機地結(jié)合成一個邏輯整體,統(tǒng)一地考慮所有用戶的要求。
模式數(shù)據(jù)描述語言(Schema Data Description Language,簡稱模式DDL)的作用就是用來書寫數(shù)據(jù)庫的概念模式,也稱為數(shù)據(jù)定義語言(Data Definition Language)。
外模式(External Schema)
外模式又稱為子模式(Subschema)或用戶模式,或用戶視圖。
外模式是用戶與數(shù)據(jù)庫系統(tǒng)的接口,是用戶用到的那部分數(shù)據(jù)(全局邏輯數(shù)據(jù)的子集)的描述。
外模式是模式的一個邏輯子集。
用戶使用數(shù)據(jù)操縱語言(Data Manipulation Language,DML)對數(shù)據(jù)庫的數(shù)據(jù)進行操作。
外模式數(shù)據(jù)描述語言(External Schema Data Description Language,外模式DDL)也稱子模式數(shù)據(jù)描述語言(Subschema Data Description Language,子模式DDL或SDDL),它的作用就是用來書寫數(shù)據(jù)庫的外模式。
內(nèi)模式(Internal Schema)
內(nèi)模式是數(shù)據(jù)庫在物理存儲方面的描述,也稱為程序員視圖,或存儲視圖。
位(Bit)、字節(jié)(Byte)、字(Word)、塊(Block)。
數(shù)據(jù)庫的數(shù)據(jù)是用一定的文件組織方式構(gòu)造起來的一個個物理文件
內(nèi)模式數(shù)據(jù)描述語言(Internal Schema Data Description Language,內(nèi)模式DDL)的作用就是用來書寫數(shù)據(jù)庫的內(nèi)模式。
三級模式結(jié)構(gòu)的優(yōu)點
接口簡單,使用方便
實現(xiàn)數(shù)據(jù)共享
數(shù)據(jù)獨立性強
數(shù)據(jù)安全性強
2.1.2 四種數(shù)據(jù)記錄格式
物理記錄
計算機內(nèi)存與外存間進行一次數(shù)據(jù)交換的最小單位是一個物理記錄。
物理記錄的長度是由系統(tǒng)程序員決定的。
內(nèi)部記錄
內(nèi)部記錄不僅包含實際所需要的數(shù)據(jù),還包含DBMS在管理數(shù)據(jù)時所需要的“系統(tǒng)數(shù)據(jù)”。
內(nèi)部記錄不等同于物理記錄,也不涉及設(shè)備的約束。
概念記錄
概念記錄是模式的一個邏輯數(shù)據(jù)單位。
概念記錄強調(diào)的是數(shù)據(jù)的邏輯結(jié)構(gòu)
外部記錄
外部記錄即用戶所需要的數(shù)據(jù)記錄。
2.1.3 兩層映射和兩級數(shù)據(jù)獨立性
映射(Mapping)
映射又稱映像,它實質(zhì)是一種對應規(guī)則,指出映射雙方如何進行轉(zhuǎn)換。
模式∕內(nèi)模式映射
模式∕內(nèi)模式映射定義模式與內(nèi)模式之間的對應性,一般在內(nèi)模式中描述的。
外模式∕模式映射
外模式∕模式映射定義外模式與模式之間的對應性,一般在外模式中描述的。
數(shù)據(jù)獨立性
數(shù)據(jù)獨立性是要維護數(shù)據(jù)與應用程序之間的無關(guān)性。
分類
物理數(shù)據(jù)獨立性
如果數(shù)據(jù)庫內(nèi)部級的存儲設(shè)備和存儲方法有所變化,那么只需要對模式∕內(nèi)模式映射做相應的修改,使概念模式盡可能地保持不變,進而使外模式和應用程序也保持不變。這樣,稱數(shù)據(jù)庫達到了物理數(shù)據(jù)獨立性。
邏輯數(shù)據(jù)獨立性
如果數(shù)據(jù)庫的概念模式需要進行修改,那么只需要對外模式∕模式映射做相應的修改,使外模式盡可能地保持不變,進而使應用程序也保持不變。這樣,稱數(shù)據(jù)庫達到了邏輯數(shù)據(jù)獨立性。
2.1.4 DBA及數(shù)據(jù)語言
數(shù)據(jù)庫管理員(DBA)
DBA的主要任務
創(chuàng)建并維護模式
建立外模式
確定數(shù)據(jù)庫的存儲結(jié)構(gòu)和訪問策略
決定數(shù)據(jù)庫的保護策略
監(jiān)視系統(tǒng)的運作
DBA的主要工具
裝載程序
重組織程序
工作日志
數(shù)據(jù)字典
數(shù)據(jù)語言
數(shù)據(jù)描述語言(DDL)
數(shù)據(jù)描述語言又稱數(shù)據(jù)定義語言,用于描述和定義數(shù)據(jù)的各種特性。
分類
模式DDL:用于描述概念級的邏輯結(jié)構(gòu)。
描述數(shù)據(jù)模型中各個數(shù)據(jù)邏輯單位的特征
描述各數(shù)據(jù)邏輯單位之間的聯(lián)系
描述訪問規(guī)則
外模式DDL:用于描述外部級數(shù)據(jù)的邏輯結(jié)構(gòu)。
描述數(shù)據(jù)模型中各個數(shù)據(jù)邏輯單位的特征
描述各數(shù)據(jù)邏輯單位之間的聯(lián)系
描述訪問規(guī)則
內(nèi)模式DDL:用于描述內(nèi)部級數(shù)據(jù)的物理特征。
描述數(shù)據(jù)的存儲結(jié)構(gòu)
描述邏輯數(shù)據(jù)到物理數(shù)據(jù)的映射
數(shù)據(jù)操縱語言(DML)
DML是用戶操作數(shù)據(jù)庫中數(shù)據(jù)的工具。
分類依據(jù)
基于對數(shù)據(jù)的處理
存取數(shù)據(jù)為主的處理
檢索(或查詢)
更新(包括插入、刪除、修改)
分析運算為主的處理
基于語言使用的形式
自含型DML:是一種同時具有描述存取數(shù)據(jù)處理和描述分析運算處理兩方面功能的DML
嵌入型DML:自成一體,有專門的編譯程序,由DBMS提供用戶所需要的一切服務。又稱宿主型DML,或數(shù)據(jù)子語言(Data Sub-Language,DSL)
基于過程性
過程性DML:早期層次、網(wǎng)狀的DML
非過程性DML:關(guān)系型DML,簡單易學,操作方便
數(shù)據(jù)庫控制語言(Database Control Language,DCL):用于建立和維護數(shù)據(jù)庫。
設(shè)備介質(zhì)控制語言(Device Medium Control Language,DMCL):與操作系統(tǒng)接口的作用,它把數(shù)據(jù)庫的數(shù)據(jù)映射到物理存儲設(shè)備上。
2.2 數(shù)據(jù)庫管理系統(tǒng)(DBMS)
DBMS是DBS的核心組成部分,是管理數(shù)據(jù)的綜合性軟件。
2.2.1 DBMS的主要功能及其組成
DBMS的主要功能
數(shù)據(jù)庫的定義功能
定義數(shù)據(jù)庫的外模式、模式和內(nèi)模式三級模式及其兩層映射。
定義數(shù)據(jù)的完整性和安全控制等約束。
數(shù)據(jù)庫的操縱功能
DBMS提供DML及其相應的DML編譯程序或解釋程序,用戶使用DML對數(shù)據(jù)庫中的數(shù)據(jù)實施各種操作。
數(shù)據(jù)庫的存儲管理功能
檢查用戶訪問數(shù)據(jù)是否合法
事務管理
把各種DML語句轉(zhuǎn)換成OS的命令和參數(shù),讓OS執(zhí)行相應的I/O操作。
管理系統(tǒng)緩沖區(qū)。
數(shù)據(jù)庫的保護功能
數(shù)據(jù)庫的恢復
數(shù)據(jù)庫的完整性控制
數(shù)據(jù)庫的并發(fā)控制
數(shù)據(jù)的安全性控制
數(shù)據(jù)庫的維護功能
備份程序
性能監(jiān)控程序
數(shù)據(jù)字典(Data Dictionary,DD)
DBMS把DDL所描述的各項內(nèi)容從源形式轉(zhuǎn)換成目標形式,存放在DD中供系統(tǒng)查閱。
DBMS的組成
語言處理部分
DDL編譯程序
DML編譯或解釋程序
嵌入型DML預處理程序
終端訪問命令解釋程序
DCL解釋程序
系統(tǒng)運行控制部分
系統(tǒng)總控程序
存儲管理器
數(shù)據(jù)查詢運行程序
管理DD的實用程序
安全性控制程序
通信控制程序
數(shù)據(jù)庫的建立和維護部分
裝載程序
工作日志程序
備份程序
性能監(jiān)控程序
數(shù)據(jù)庫重新組織程序
系統(tǒng)恢復程序
2.2.2 用戶這DBMS查詢數(shù)據(jù)的過程
圖2.2 用戶通過DBMS查詢數(shù)據(jù)的過程
用戶發(fā)出查詢請求
DBMS確定外部記錄
DBMS確定概念記錄
DBMS確定內(nèi)部記錄
請求OS讀物理記錄
DBMS接收內(nèi)部記錄
DBMS提取概念記錄
UWA接收外部記錄
DBMS填寫工作日志
DBMS填寫狀態(tài)碼
用戶分析查詢結(jié)果
2.3 數(shù)據(jù)庫系統(tǒng)(DBS)
2.3.1 DBS的組成
數(shù)據(jù)庫(DB):一個結(jié)構(gòu)化的數(shù)據(jù)集合
硬件:數(shù)據(jù)庫賴以存在的物理設(shè)備。
軟件:DBMS、OS、各種宿主語言和應用開發(fā)軟件工具等。
數(shù)據(jù)庫管理員(DBA):創(chuàng)建、監(jiān)控和維護數(shù)據(jù)庫,并使之始終處于最佳狀態(tài)的技術(shù)人員。
2.3.2 DBS的主要特征
有很好的效益
數(shù)據(jù)集中控制
有很高的靈活性
方便程序設(shè)計和維護
有利推廣標準化
備注:
《數(shù)據(jù)庫技術(shù)基礎(chǔ)與應用(第2版)》的豆瓣鏈接https://book.douban.com/subject/2995584/
posted on 2017-12-22 15:18 zYx.Tom 閱讀(170) 評論(0) 編輯 收藏 所屬分類: 5.數(shù)據(jù)世界