關系數據庫系統(tǒng)_第1頁
關系數據庫系統(tǒng)_第2頁
關系數據庫系統(tǒng)_第3頁
關系數據庫系統(tǒng)_第4頁
關系數據庫系統(tǒng)_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、關系數據庫系統(tǒng)作者:日期:數據庫管理系統(tǒng)是數據庫系統(tǒng)的核心數據庫系統(tǒng)是在文件系統(tǒng)的基礎上發(fā)展而來的數據庫最大的特點是 數據的三級抽象和二級獨立”數據庫是存儲在計算機內有結構的數據集合數據庫應用系統(tǒng)包括數據庫和數據庫應用程序關系數據庫系統(tǒng):是支持關系模型的數據庫系統(tǒng)數據模型的三要素是:數據結構、數據操作和數據完整性關系模型的組成1. 關系數據結構2. 關系操作集合3. 關系完整性約束關系模型中常用的關系操作:選擇、投影、并、差、笛卡爾積是5種 基本操作關系操作的特點:集合操作方式,即操作的對象和結果都是集合關系代數是一種抽象的查詢語言用對關系的運算來表達查詢關系代數運算的三個要素運算對象:關系運

2、算結果:關系運算符:四類關系代數運算符 關系運算的分類:分為傳統(tǒng)的集合運算和專門的關系運算SQL的功能特點數據查詢數據定義(DD L)數據操縱(DML)數據控制(D CL)約束條件類型PRI M ARY KEY(主鍵約束)UN IQUE (惟一約束)NOT NULL(非空約束)FO RE IGN KEY (外鍵約束)CHECK檢查約束)建立索引的目的:基本表上建立一個或多個索引,以提供多種存取路 徑,加快查找速度。數據庫異常問題1. 冗余太大2. 插入異常3. 刪除異常4修改異常數據依賴:是一個關系內部屬性與屬性之間的一種約束關系,是語義 的體現。分為函數依賴和多值依賴。泛關系模式:就是最初設

3、計的關系模式,或者說是存在異常問題的關 系模式。數據庫模式:根據范式理論,將不符合用戶需求的 泛關系模式分解 成 一系列的關系集合。若R 1N F且R中的每一個非主屬性都完全函數依賴于 R的任一候 選碼,則R 2NF。如果關系模式 R BCNF必定有R 3 NF如果R3N F且R只有一個候選碼,則R必屬于 BCNF任何的二元關系必定是 BC NF查詢優(yōu)化:從查詢的多個執(zhí)行策略中進行合 理選擇的過程。查詢優(yōu)化的分類:代數優(yōu)化和物理優(yōu)化數據保護也叫數據控制,主要包括:數據庫恢復并發(fā)控制數據的安全性數據的完整性事務(Tra ns a c t ion)是用戶定義的一個數據庫操作序列,這些操作要么全做,

4、要么 全不做,是一個不可分割的工作單位。事務可以是一組SQL語句、一條S QL語句或整個程序,在通常 情況下,一個應用程序里包含多個事務。事務生成:用戶顯式地定義事務由DBMS按缺省自動劃分事務事務的特性1 .原子性(Atomici t y)一個事務中對數據庫的操作,是一個不可分割的整體。2. 致性(C on sis t e ncy)數據不會因事務的執(zhí)行而遭受破壞。3. 隔離性(Isolati on)在多個事務并發(fā)執(zhí)行時,系統(tǒng)應保證與這些事務先后單獨執(zhí)行時 的結果一樣。4. 持久性(D u r ability)一個事務一旦完成全部操作,它對數據庫的所有更新應永久地反 映在數據庫中。事務是數據庫

5、恢復和并發(fā)控制的基本單位數據庫故障恢復的基本單位是事務,因此在數據恢復時主要使用事務 撤銷(UND 0)與事務重做(REDO兩個操作。1. 事務級故障事務內部執(zhí)行所產生的邏輯錯誤與系統(tǒng)錯誤,它由諸如 數據輸入錯誤、數據溢出、資源不足以及死鎖等引起,使得事務尚未運行到終點即告夭折 。2. 系統(tǒng)級故障指造成系統(tǒng)停止運轉的任何事件,使得系統(tǒng)要重新啟動,通常稱為軟故障。3. 介質級故障也稱為硬故障(H ard Crash),如磁盤損壞、磁頭碰撞、 瞬時強磁場干擾等。這類故障將破壞數據庫或部分數據庫。數據轉儲的概念轉儲即DBA定期地將整個數據庫復制到磁帶或另一個磁盤上保存起來的過程。這些備用的數據文本稱

6、為后備副本(back up )或后援副本。(1)靜態(tài)轉儲:是在系統(tǒng)中無運行事務時進行的轉儲操作。靜態(tài)轉儲得到的一定是一個數據一致性的副本。(2)動態(tài)轉儲:是指轉儲期間允許對數據庫進行存取或修改。即轉儲和用戶事務可以并發(fā)執(zhí)行。3、海量轉儲和增量轉儲(1)海量轉儲:每次轉儲全部數據庫。(2)增量轉儲:每次只轉儲上一次轉儲后更新過的數據日志文件(log f i 1 e)用來記錄事務對數據庫的更新操作的文件。日志文件的作用進行事務故障、系統(tǒng)故障恢復,并協(xié)助后備副本進行介質故障恢復。系統(tǒng)故障的恢復:恢復操作:要撤銷故障發(fā)生時未完成的事務(撤銷隊列進行UNDO)重做已完成的事務(重做隊列進行REDO)介質

7、故障的恢復需要DBA介入。動態(tài)維護日志文件的方法是周期性地執(zhí)行:建立檢查點,保存數據庫狀態(tài)具體步驟: 將當前所有日志記錄寫入磁盤日志文件上; 在日志文件中寫入一個檢查點記錄; 將當前所有數據記錄寫入磁盤的數據庫中; 把檢查點記錄在日志文件中的地址寫入一個重新開始文件。在數據庫系統(tǒng)中,為了提高性能,多個事務并發(fā)執(zhí)行是必要的。 提高CPU和硬盤的使用效率,從而增加事務的吞吐率。減少事務的平均響應時間(即等待CPU的時間),短時間事 務無需等待長時間事務。并發(fā)操作一在多用戶共享系統(tǒng)中,多個用戶同時存取同一數據的情形 稱為并發(fā)操作。并發(fā)操作可能帶來的問題:(1)破壞數據庫的一致性(2)破壞事務的隔離性

8、并發(fā)控制的主要技術有封鎖(Lo eking)、時間戳(Tim e sta mp)和樂觀控制法,商用的DBMS 一般都采用封鎖方法。封鎖:指事務T在對某個數據對象操作之前,對其加鎖。在T未釋放 鎖之前,其他的事務不能更新此數據對象。封鎖協(xié)議:對數據對象加鎖時,約定的規(guī)則。常用的封鎖協(xié)議:三級封鎖協(xié)議活鎖:使某個事務永遠處于等待狀態(tài),而得不到執(zhí)行的現象稱為活鎖。(實際上是有可能被激活的)避免活鎖的方法:先來先服務(FCF S)死鎖:若干個事務都處于等待狀態(tài),相互等待對方解除圭寸鎖, 而造成這些事務都無法運行,均處于對鎖的循環(huán)等待。調度:事務的執(zhí)行次序。調度方式:(1)串行調度:多個事務依次執(zhí)行的調

9、度。(2)并行調度:利用分時的方法處理多個事務的調度。串行調度是正確的;可串行化調度:如果一個并發(fā)調度執(zhí)行的結果等價于某一個串行調度的結果,稱這種調度策略為可串行化的調度。一組事務并發(fā)調度的正確性準則:可串行化調度。沖突操作是指不同的事務對同一個數據的讀寫操作和寫寫操作一個調度是沖突可串行化,一定是可串行化的調度。保證并發(fā)調度的可串行性的方法有三種封鎖方法:兩段鎖協(xié)議(目前D BM S普遍采用的)時標方法樂觀方法所謂兩段鎖協(xié)議(T wo- P hase Locking,簡稱2P L)是指所有 事務必須分兩個階段對數據項提出加鎖和解鎖申請封鎖粒度:封鎖對象的大小。封鎖對象:屬性、元組、關系、數據

10、庫封鎖粒度與系統(tǒng)的并發(fā)度和并發(fā)控制的開銷密切相關:封鎖的粒度越大,并發(fā)度越小,系統(tǒng)開銷越小 ;封鎖的粒度越小,并發(fā)度越高,系統(tǒng)開銷越大。多粒度封鎖:一個系統(tǒng)中同時支持多種封鎖粒度供不同的事務 選擇的封鎖方法。封鎖粒度選擇原則:(1) 需處理大量元組的事務以關系為封鎖粒度;(2) 需處理多個關系的大量元組的事務以數據庫為封鎖粒度 ;(3 )只處理少量元組的事務以元組為封鎖粒度。多粒度圭寸鎖方式:顯式圭寸鎖和隱式圭寸鎖顯式封鎖是應事務的要求直接加到數據對象上的封鎖;隱式封鎖是該數據對象沒有獨立加鎖,是由于其上級結點加鎖而使該 數據對象加上了鎖意向鎖加鎖原則:如果對一個結點加意向鎖,則說明該結點的下

11、 層結點正在被加鎖;對任一結點加鎖時,必須先對它的上層結點 加意向鎖。鎖的強度是指它對其他鎖的排斥程度具有意向鎖的多粒度封鎖方法的調用步驟任意事務T要對一個數據對象加鎖,必須先對它的上層 結點加意向鎖申請圭寸鎖時應該按自上而下的次序進行釋放圭寸鎖時則應該按自下而上的次序進行恢復的實現技術1數據轉儲2 .日志文件具有檢查點的恢復技術3數據庫鏡像-遠程備份恢復策略1 事務故障的恢復2.系統(tǒng)故障的恢復3介質故障的恢復(計算機病毒)并發(fā)控制并發(fā)控制可能產生的數據不一致封鎖的類型(X鎖和S鎖)及三級封鎖協(xié)議并發(fā)調度的可串行性兩段鎖協(xié)議(獲得封鎖及釋放封鎖)封鎖粒度(多粒度封鎖、意向鎖)在數據庫設計中,表

12、示用戶業(yè)務流程的常用方法是 DFD授權定義經過編譯后存儲在數據字典中事務工作完成的標志是 事物的 提交標志”已經安全的存入相關的日 志文件 數據庫系統(tǒng)中的死鎖屬于事務故障DB A的職責是什么?1.決定數據庫中的信息內容和結構。2.決定數據庫的存儲結構和存儲策略。3.定義數據的安全性要求和完整性約束。4.監(jiān)控數據庫的使用和運行。5.數據庫的改進和重組重構。什么事數據庫的數據獨立性?1.物理獨立性:物理獨立性是指用戶的應用程序與存儲在磁盤上的數據庫中的數據是相互獨立的。2.邏輯獨立性:邏輯獨立性是指用戶的應用程序與數據庫的邏輯結構是相互獨立的。沖突主要有:屬性沖突,命名沖突,結構沖突數據庫設計的六個步驟:需求分析,概念設計,邏輯設計,物理設計,數據庫實施,數據庫運行和維護。1.什么是數據庫?答:數據庫是長期存儲在計算機內、有組織的、可共享的數據 集合。數據庫是按某種數據模型進行組織的、 存放在外存儲器上, 且可被多個用戶同時使用。因此,數據庫具有較小的冗余度,較高的數據獨立性和易擴展性。2 .什么是數據庫的數據獨立性?答:數據獨立性表示應用程序與數據庫中存儲的數據不存 在依賴關系,包括

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論