天天看點

資料庫期末簡答題-第七、八、十、十一章

基于《資料庫系統概論》第五版的第七、八、十、十一章簡答題

需求分析:準确了解與分析使用者需求(包括資料與處理)。

概念結構設計:通過對使用者需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。

邏輯結構設計:将概念結構轉換為某個DBMS所支援的資料模型;對其進行優化。

資料庫實體設計:為邏輯資料模型選取一個最适合應用環境的實體結構(包括存儲結構和存取方法)。

資料庫實施:運用DBMS提供的資料庫語言(如SQL)及宿主語言,根據邏輯設計和實體設計的結果建立資料庫、編制與調試應用程式、組織資料入庫、進行試運作。

資料庫維護和運作:資料庫應用系統經過試運作後即可投入正式運作;在資料庫系統運作過程中必須不斷地對其進行評價、調整與修改。

可以轉換為一個獨立的關系模式,與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼;

也可以與n端所對應的關系模式合并,即,将1端實體的碼加入到n端對應的關系中,該碼成為n端對應的關系的外部碼。

屬性沖突:

屬性域沖突:

屬性值的類型;

取值範圍;

取值集合不同;

屬性取值機關沖突;

命名沖突:

同名異義:不同意義的對象在不同的局部應用中具有相同的名字。

異名同一:同一意義的對象在不同的局部應用中具有不同的名字。

結果沖突

同一對象在不同應用中具有不同的抽象;

同一實體在不同子系統的E-R圖中所包含的屬性個數和屬性排列次序不完全相同;

實體間的聯系在不同的E-R圖中為不同的類型。

資料庫的再組織是指按原設計要求重新安排存儲位置、回收垃圾、減少指針鍊6等,以提高系統性能。

資料庫的重構造則是指部分修改資料庫的模式和内模式,即修改原設計的邏輯和實體結構。資料庫的再組織是不修改資料的模式和内模式的。

是資料庫使用者(包括應用程式員和最終使用者)能夠看見和使用的局部資料的邏輯結構和特征的描述,是資料庫使用者的資料視圖,是與某一應用有關的資料的邏輯表示。

就是外模式???

作用(優點?):

運作效率高,它提供了在伺服器之間快速執行SQL語句的有效途徑。

存儲過程降低了客戶機和伺服器之間的通信量。

友善實施企業規則。

使用方法(???):

存儲過程的使用者接口:

建立存儲過程

執行存儲過程

删除存儲過程

SQL語言與主語言具有不同資料處理方式:

SQL語言是面向集合的,一條SQL語句原則上可以産生或處理多條記錄。

主語言是面向記錄的,一組主變量一次隻能存放一條記錄。

僅使用主變量并不能完全滿足SQL語句向應用程式輸出資料的要求

是以,嵌入式SQL引入了遊标的概念,用來協調這兩種不同的處理方式。

使用遊标的步驟:定義遊标、打開遊标、讀取記錄、關閉遊标。

原子性:事務是資料庫的邏輯工作機關,事務中包括的諸操作要麼都做,要麼都不做。//2PC協定及其恢複機制。

一緻性:事務執行的結構必須是使資料庫從一個一緻性狀态變到另一個一緻性狀态。//2PL協定/時間印協定

隔離性:一個事務的執行不能被其他事務幹擾。//可串行化排程及封鎖機制

持續性:指一個事務一旦送出,它對資料庫中資料的改變就應該是永久性的。//資料庫備份技術

事務是使用者定義的一個資料庫操作序列,這些操作要麼全做、要麼全不做,是一個不可分割的工作機關。

事務内部的故障:有的是可以通過事務程式本身發現的(如轉賬事務的例子),有的是非預期的。

恢複政策:由恢複子系統應利用日志檔案撤消(UNDO)此事務已對資料庫進行的修改。

系統故障:指造成系統停止運轉的任何事件,使得系統要重新啟動。 //特定類型的硬體錯誤(如CPU故障)、作業系統故障、DBMS代碼錯誤、系統斷電...

發生系統故障時,事務未送出。 恢複政策:強行撤消(UNDO)所有未完成事務。 發生系統故障時,事務已送出,但緩沖區中的資訊尚未完全寫回到磁盤上。 恢複政策:重做(REDO)所有已送出的事務。

媒體故障:稱為硬故障,指外存故障。//磁盤損壞、磁頭碰撞、作業系統的某種潛在錯誤、瞬時強磁場幹擾...

恢複政策: 裝入資料庫發生媒體故障前某個時刻的資料副本。(即重裝資料庫) 重做自此時始的所有成功事務,将這些事務已送出的結果重新記入資料庫。(即重做已完成的事務)

計算機病毒:一種人為的故障或破壞,是一些惡作劇者研制的一種計算機程式,可以繁殖和傳播。

恢複政策:在檢查點之前送出的事務不需要Redo:當事務在一個檢查點之前送出,對資料庫所做的修改已寫入資料庫。

利用檢查點的恢複步驟:

從重新開始檔案中找到最後一個檢查點記錄在日志檔案中的位址,由該位址在日志檔案中找到最後一個檢查點記錄。

由該檢查點記錄得到檢查點建立時刻所有正在執行的事務清單ACTIVE-LIST。

建立兩個事務隊列

UNDO-LIST

REDO-LIST

把ACTIVE-LIST暫時放入UNDO-LIST隊列,REDO隊列暫為空。

從檢查點開始正向掃描日志檔案,直到日志檔案結束。

如有新開始的事務Ti,把Ti暫時放入UNDO-LIST隊列。

如有送出的事務Tj,把Tj從UNDO-LIST隊列移到REDO-LIST隊列。

對UNDO-LIST中的每個事務執行UNDO操作;對REDO-LIST中的每個事務執行REDO操作

日志檔案:是用來記錄事務對資料庫的更新操作的檔案

事務的串行排程:每個時刻隻有一個事務運作,其他事務必須等到這個事務結束以後方能運作。

不能充分利用系統資源,發揮資料庫共享資源的特點

并發排程:

交叉并發方式:在單處理機系統中,事務的并行執行是這些并行事務的并行操作輪流交叉運作。

同時并發方式:多處理機系統中,每個處理機可以運作一個事務,多個處理機可以同時運作多個事務,實作多個事務真正的并行運作。

會産生多個事務同時存取同一資料的情況。 可能會存取和存儲不正确的資料,破壞資料庫的一緻性。

丢失修改

不可重複讀

讀“髒”資料

封鎖就是事務T在對某個資料對象列如表、記錄等操作之前,先向系統送出請求,對其加鎖。加鎖後事務T就對該資料對象有了一定的控制,在事務T釋放它的鎖之前,其他的事務不能更新或讀取此資料對象。

基本的封鎖類型一兩種:排他鎖(X鎖)和共享鎖(S鎖)。

預防死鎖的方法:一次封鎖法、順序封鎖法

死鎖的診斷:逾時法、事務等待圖法

三級封鎖協定:是指在一級封鎖協定的基礎上增加事務T在讀取資料R之前必須先對其加S鎖,直到事務結束才釋放。

沖突操作是指不同的事務對同一個資料的讀寫操作和寫寫操作。

兩段鎖協定:是指所有事務必須分兩個階段對資料項加鎖和解鎖。

在對任何資料進行讀、寫操作之前,首先要申請并獲得對該資料的封鎖; 在釋放一個封鎖之後,事務不再申請和獲得任何其他封鎖。

繼續閱讀