資料庫7-11章期末複習
第7章 資料庫設計概述
1、資料庫設計的基本步驟:
(1)需求分析
(2)概念結構設計
(3)邏輯結構設計
(4)物理結構設計
(5)資料庫實施
(6)資料庫執行和維護
2、需求分析的任務:
調查的重點是“資料”和“處理”,通過調查、收集與分析,獲得使用者對資料庫的如下要求:
(1)資訊要求
(2)處理要求
(3)安全性與完整性要求
3、資料字典:
資料字典是進行詳細的資料收集和資料分析所獲得的主要成果。它是關於資料庫中資料的描述,即元資料,而不是資料本身。資料字典是在需求分析階段建立,在資料庫設計過程中不斷修改、充實、完善的。
資料字典通常包括資料項、資料結構、資料流、資料儲存和處理過程幾部分。
4、關係資料庫物理設計的內容:
主要包括為關係模式選擇存取方法,以及設計關係、索引等資料庫檔案的物理儲存結構。
5、關係模式存取方法:
索引方法、聚簇方法
第8章 嵌入式SQL
1、使用遊標的查詢結果為多條記錄的SELECT語句的步驟:
(1)說明遊標
(2)開啟遊標
(3)推進遊標指標並取當前記錄
(4)關閉遊標
第9章 關係查詢處理和查詢優化
1、查詢優化:
查詢優化一般可分為代數優化和物理優化。
代數優化是指關係代數表示式的優化,物理優化則是指通過存取路徑和底層操作演算法的選擇進行的優化。
2、查詢樹的啟發式優化:
(1)選擇運算應儘可能先做。
(2)把投影運算和選擇運算同時進行
(3)把投影同其前或後的雙目運算結合起來
(4)把某些選擇同在它前面要執行的笛卡爾積結合起來成為一個連線運算
(5)找出公共字表達式
第10章 資料庫恢復技術
1、事物的ACID特性:
原子性、一致性、隔離性、持續性
2、故障的種類:
(1)事物內部的故障
(2)系統故障
(3)介質故障
3、轉儲的分類:
靜態轉儲、動態轉儲
4、資料轉儲方法:
(1)動態海量轉儲
(2)動態增量轉儲
(3)靜態海量轉儲
(4)靜態增強轉儲
5、日誌檔案中需要登記的內容:
(1)各個事物的開始標記
(2)各個事物的結束標記
(3)各個事物的所有更新操作
6、登記日誌檔案時必須遵循兩條原則:
(1)登記的次序嚴格按併發事務執行的時間次序
(2)必須先寫日誌檔案,後寫資料庫
第11章 併發控制
1、併發操作帶來的資料不一致性:
(1)丟失修改
(2)不可重複讀
(3)讀“髒”資料
2、封鎖協議:
一級封鎖協議:
一級封鎖協議是指,事務T在修改資料R之前必須先對其加X鎖,直到事務結束才釋放。
二級封鎖協議:
二級封鎖協議是指,在一級封鎖協議基礎上增加事務T在讀取資料R之前必須先對其加S鎖,讀完後即可釋放S鎖。
三級封鎖協議:
三級封鎖協議是指,在一級封鎖協議的基礎上增加事務T在讀取資料R之前必須先對其加S鎖,直到事務結束才釋放。
3、避免活鎖的簡單方法:
先來先服務
4、診斷死鎖的方法:
超時法、事務等待圖法
5、可序列化排程的定義:
多個事務的併發執行是正確的,當且僅當其結果與按某一次序序列地執行這些事務時的結果相同。
可序列性是併發事務正確排程的準則。
6、兩段鎖的定義:
事務分為兩個階段,第一階段是獲得封鎖,也稱為擴充套件階段,在這個階段,事務可以申請獲得任何資料項上的任何型別的鎖,但是不能釋放任何鎖;第二階段是釋放封鎖,也稱為收縮階段,在這個階段,事務可以釋放任何資料項上的任何型別的鎖,但是不能再申請任何鎖。
7、封鎖粒度:
封鎖物件的大小稱為封鎖粒度。
封鎖的粒度越大,資料庫所能夠封鎖的資料單元就越少,併發度就越小,系統開銷也越小。
9、加上意向鎖後鎖的相容矩陣與偏序關係
T1 T2 |
S |
X |
IS |
IX |
SIX |
- |
S |
Y |
N |
Y |
N |
N |
Y |
X |
N |
N |
N |
N |
N |
Y |
IS |
Y |
N |
Y |
Y |
Y |
Y |
IX |
N |
N |
Y |
Y |
N |
Y |
SIX |
N |
N |
Y |
N |
N |
Y |
- |
Y |
Y |
Y |
Y |
Y |
Y |