數(shù)據(jù)庫(kù)管理系統(tǒng).ppt
《數(shù)據(jù)庫(kù)管理系統(tǒng).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫(kù)管理系統(tǒng).ppt(17頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第4章數(shù)據(jù)庫(kù)管理系統(tǒng),4.1數(shù)據(jù)庫(kù)管理系統(tǒng)的層次結(jié)構(gòu)4.2數(shù)據(jù)庫(kù)管理系統(tǒng)的運(yùn)行過(guò)程4.3事務(wù)4.3DBMS的進(jìn)程結(jié)構(gòu)4.5DBMS的系統(tǒng)結(jié)構(gòu)4.6DBMS和第四代應(yīng)用開發(fā)環(huán)境4.7數(shù)據(jù)目錄4.8數(shù)據(jù)庫(kù)物理組織,4.1數(shù)據(jù)庫(kù)管理系統(tǒng)的層次結(jié)構(gòu),數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的核心。DBMS最基本的功能是正確、可靠、安全地執(zhí)行數(shù)據(jù)庫(kù)語(yǔ)言。即DBMS可以看成是數(shù)據(jù)庫(kù)語(yǔ)言的一個(gè)實(shí)現(xiàn)。與一般程序設(shè)計(jì)語(yǔ)言一樣,DBMS也有編譯和解釋兩種實(shí)現(xiàn)方式。圖4-1:一個(gè)解釋執(zhí)行的RDBMS的層次結(jié)構(gòu),4.2數(shù)據(jù)庫(kù)管理系統(tǒng)的運(yùn)行過(guò)程,DBMS是一個(gè)有機(jī)的整體,應(yīng)該用動(dòng)態(tài)的觀點(diǎn)看待DBMS各個(gè)功能模塊。一個(gè)應(yīng)用程序或用戶通過(guò)DBMS讀取數(shù)據(jù)庫(kù)中數(shù)據(jù)的過(guò)程如下所示:用戶A向DBMS發(fā)出調(diào)用數(shù)據(jù)庫(kù)數(shù)據(jù)的命令。如SELECT命令。命令中給出了一個(gè)關(guān)系名和查找條件。DBMS先對(duì)命令進(jìn)行語(yǔ)法檢查。通過(guò)后進(jìn)行語(yǔ)義檢查和用戶存取權(quán)限檢查。DBMS讀取數(shù)據(jù)字典,檢查是否存在該關(guān)系及相應(yīng)的字段,該用戶能否讀取它們等。確認(rèn)語(yǔ)義正確、存取權(quán)限合法后便決定執(zhí)行該命令。否則拒絕執(zhí)行,返回錯(cuò)誤信息。DBMS執(zhí)行查詢優(yōu)化(要依據(jù)數(shù)據(jù)字典中的信息),并把該命令轉(zhuǎn)換成一串單記錄的存取操作序列。DBMS執(zhí)行存取操作序列(反復(fù)執(zhí)行以下各步,直至結(jié)束)。DBMS首先在緩沖區(qū)中查找記錄,若找到滿足條件的記錄則轉(zhuǎn)到10,否則轉(zhuǎn)到6。,4.2數(shù)據(jù)庫(kù)管理系統(tǒng)的運(yùn)行過(guò)程,DBMS查看存儲(chǔ)模式,決定從哪個(gè)文件,用什么方式讀取哪個(gè)物理記錄。DBMS根據(jù)6的結(jié)果,向操作系統(tǒng)發(fā)出讀取記錄的命令。操作系統(tǒng)執(zhí)行讀數(shù)據(jù)的有關(guān)操作。操作系統(tǒng)將數(shù)據(jù)從數(shù)據(jù)庫(kù)的存儲(chǔ)區(qū)送至系統(tǒng)緩沖區(qū)。DBMS根據(jù)查詢命令和數(shù)據(jù)字典的內(nèi)容導(dǎo)出用戶所要讀取的記錄格式。DBMS將數(shù)據(jù)記錄從系統(tǒng)緩沖區(qū)傳送到程序A的用戶工作區(qū)。DBMS將執(zhí)行狀態(tài)信息,如成功讀取或不成功的錯(cuò)誤指示、例外狀態(tài)信息等,返回給應(yīng)用程序A。,4.3事務(wù),1.事務(wù)的定義所謂事務(wù)(Transaction)是用戶定義的一個(gè)操作序列,這些操作是一個(gè)不可分割的工作單位,即要么全做要么全不做,(allornothing)。事務(wù)的開始與結(jié)束可以由用戶顯式控制。如果用戶沒(méi)有顯式地定義事務(wù),則由DBMS按缺省規(guī)定自動(dòng)劃分事務(wù)。在SQL語(yǔ)言中,定義事務(wù)的語(yǔ)句有三條:BEGINTRANSACTIONCOMMITROLLBACK,4.3事務(wù),1.事務(wù)的定義(續(xù))事務(wù)通常是以BEGINTRANSACTION開始,以COMMIT或ROLLBACK結(jié)束。COMMIT表示提交,即提交事務(wù)的所有操作。具體地說(shuō)就是將事務(wù)中所有對(duì)數(shù)據(jù)庫(kù)的更新寫回到磁盤上的物理數(shù)據(jù)庫(kù)中去,事務(wù)正常結(jié)束。ROLLBACK表示回滾,即在事務(wù)運(yùn)行的過(guò)程中發(fā)生了某種故障,事務(wù)不能繼續(xù)執(zhí)行,系統(tǒng)將事務(wù)中對(duì)數(shù)據(jù)庫(kù)的所有已完成的操作全部撤消,滾回到事務(wù)開始時(shí)的狀態(tài)。這里的操作指對(duì)數(shù)據(jù)庫(kù)的更新操作。,4.3事務(wù),1.事務(wù)的性質(zhì)事務(wù)具有四個(gè)特性:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持續(xù)性(Durability)。這個(gè)四個(gè)特性也簡(jiǎn)稱為ACID特性。1.原子性事務(wù)是數(shù)據(jù)庫(kù)的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。2.一致性事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。因此當(dāng)數(shù)據(jù)庫(kù)只包含成功事務(wù)提交的結(jié)果時(shí),就說(shuō)數(shù)據(jù)庫(kù)處于一致性狀態(tài)。如果數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行中發(fā)生故障,有些事務(wù)尚未完成就被迫中斷,系統(tǒng)將事務(wù)中對(duì)數(shù)據(jù)庫(kù)的所有已完成的操作全部撤消,滾回到事務(wù)開始時(shí)的一致狀態(tài)。,4.3事務(wù),1.事務(wù)的性質(zhì)(續(xù))3.隔離性一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。即一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)其他并發(fā)事務(wù)是隔離的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能互相干擾。4.持續(xù)性持續(xù)性也稱永久性(Permanence),指一個(gè)事務(wù)一旦提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就應(yīng)該是永久性的。接下來(lái)的其他操作或故障不應(yīng)該對(duì)其執(zhí)行結(jié)果有任何影響。,4.4DBMS的進(jìn)程結(jié)構(gòu),應(yīng)用程序通過(guò)DBMS,DBMS通過(guò)OS,與數(shù)據(jù)庫(kù)中的數(shù)據(jù)打交道。根據(jù)三者的關(guān)系,一般有下述四種進(jìn)程組織方案:N方案:DBMS與應(yīng)用程序相融合在這種方案中,N個(gè)DB用戶僅需N個(gè)進(jìn)程,DBMS作為應(yīng)用程序的子程序被連入應(yīng)用程序中,成為應(yīng)用程序的一部分,因此這種方案也稱為連入式方案。2.2N方案:一個(gè)用戶進(jìn)程對(duì)應(yīng)一個(gè)DBMS進(jìn)程每個(gè)用戶進(jìn)程均有一個(gè)DBMS進(jìn)程為之服務(wù),我們稱這種DBMS進(jìn)程為影子(Shadow)進(jìn)程。在這種方案中,有N個(gè)用戶進(jìn)程就要啟動(dòng)N個(gè)DBMS進(jìn)程(共2N個(gè)進(jìn)程),因此這種進(jìn)程結(jié)構(gòu)方案稱為2N方案。,4.4DBMS的進(jìn)程結(jié)構(gòu),3.N+1方案:一個(gè)DBMS進(jìn)程對(duì)應(yīng)所有用戶進(jìn)程進(jìn)程結(jié)構(gòu)的另一種組織方式是整個(gè)DBMS僅使用一個(gè)進(jìn)程,該進(jìn)程的行為類似于一個(gè)服務(wù)器(Server)。多個(gè)數(shù)據(jù)庫(kù)用戶向Server發(fā)消息以申請(qǐng)數(shù)據(jù)庫(kù)服務(wù)。Server要用自己的機(jī)制來(lái)調(diào)度這些申請(qǐng),以支持一個(gè)多任務(wù)的數(shù)據(jù)庫(kù)系統(tǒng)。由于N個(gè)用戶僅需要一個(gè)DBMS進(jìn)程,因此我們稱這種進(jìn)程結(jié)構(gòu)方案為N+1方案。4.N+M方案:M個(gè)DBMS進(jìn)程對(duì)應(yīng)N個(gè)用戶進(jìn)程,4.5DBMS和第四代應(yīng)用開發(fā)環(huán)境,應(yīng)該指出,DBMS本身并不能全部解決數(shù)據(jù)管理的問(wèn)題,DBMS的設(shè)計(jì)目標(biāo)也不是要解決所有問(wèn)題。這些問(wèn)題包括數(shù)據(jù)的存儲(chǔ)、訪問(wèn)、處理和表示等等。DBMS提供了豐富的數(shù)據(jù)管理的基本功能。以DBMS這些功能為核心,可以進(jìn)一步開發(fā)高層的軟件系統(tǒng),如報(bào)表書寫、屏幕表格軟件、菜單生成系統(tǒng)、圖形顯示系統(tǒng)等等,從而構(gòu)成了一組內(nèi)部相互聯(lián)系的DBMS家族,為用戶提供了一個(gè)良好的第四代應(yīng)用開發(fā)環(huán)境。這些軟件系統(tǒng)拓廣了數(shù)據(jù)庫(kù)的應(yīng)用領(lǐng)域,大大提高了應(yīng)用開發(fā)的生產(chǎn)率。,4.6DBMS的系統(tǒng)結(jié)構(gòu),分時(shí)系統(tǒng)環(huán)境下的集中式系統(tǒng)結(jié)構(gòu)網(wǎng)絡(luò)環(huán)境下的客戶/服務(wù)器結(jié)構(gòu)物理上分布邏輯上集中的分布式數(shù)據(jù)庫(kù)結(jié)構(gòu)物理上分布、邏輯上分布的分布式數(shù)據(jù)庫(kù)結(jié)構(gòu),4.7數(shù)據(jù)目錄,數(shù)據(jù)目錄(Catalog或Directory)是一組關(guān)于數(shù)據(jù)的數(shù)據(jù),也稱為元數(shù)據(jù)(meta-data)DBMS的功能是管理大量的、共享的、持久的數(shù)據(jù)。有關(guān)這些數(shù)據(jù)的定義和描述也需要長(zhǎng)期保存在系統(tǒng)種。關(guān)系數(shù)據(jù)庫(kù)中數(shù)據(jù)字典的組織通常與數(shù)據(jù)本身的組織相同。數(shù)據(jù)字典按不同的內(nèi)容在邏輯上組織為若干張表或視圖。數(shù)據(jù)字典的特點(diǎn)是數(shù)據(jù)量比較?。ㄅc數(shù)據(jù)本身比)、使用頻繁,因?yàn)槿魏螖?shù)據(jù)庫(kù)操作都要參照數(shù)據(jù)字典的內(nèi)容。,4.7數(shù)據(jù)庫(kù)物理組織,數(shù)據(jù)庫(kù)是大量數(shù)據(jù)的有結(jié)構(gòu)的綜合性的集合。如何將這樣一個(gè)龐大的數(shù)據(jù)集合以最優(yōu)的形式組織起來(lái)存放在外存上是一個(gè)非常重要的問(wèn)題。所謂“優(yōu)”應(yīng)包括兩方面:一是存儲(chǔ)效率高,節(jié)省存儲(chǔ)空間;二是存取效率高,速度快,代價(jià)小。數(shù)據(jù)庫(kù)實(shí)現(xiàn)的基礎(chǔ)是文件,對(duì)數(shù)據(jù)庫(kù)的任何操作最終要轉(zhuǎn)化為對(duì)文件的操作。所以在數(shù)據(jù)庫(kù)物理組織中,基本的問(wèn)題是如何設(shè)計(jì)文件組織或者利用操作系統(tǒng)提供的基本的文件組織方法。數(shù)據(jù)庫(kù)系統(tǒng)是文件系統(tǒng)的發(fā)展。文件系統(tǒng)中每個(gè)文件存儲(chǔ)同質(zhì)實(shí)體的數(shù)據(jù),各文件是孤立的,沒(méi)有體現(xiàn)實(shí)體之間的聯(lián)系。數(shù)據(jù)庫(kù)系統(tǒng)中數(shù)據(jù)的物理組織必須體現(xiàn)實(shí)體之間的聯(lián)系,支持?jǐn)?shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)--各種數(shù)據(jù)模型。因此數(shù)據(jù)庫(kù)中要存儲(chǔ)四個(gè)方面的數(shù)據(jù):(1)數(shù)據(jù)描述。即數(shù)據(jù)外模式、模式、內(nèi)模式。(2)數(shù)據(jù)本身。(3)數(shù)據(jù)之間的聯(lián)系。(4)存取路徑。,4.7數(shù)據(jù)庫(kù)物理組織,上述這四個(gè)方面的數(shù)據(jù)內(nèi)容都要采用一定的文件組織方式組織、存儲(chǔ)起來(lái)。數(shù)據(jù)字典(DD)的組織數(shù)據(jù)字典按不同的內(nèi)容在邏輯上組織為若干張表(圖11.9),在物理上就對(duì)應(yīng)若干文件而不是一個(gè)文件。由于每個(gè)文件中存放數(shù)據(jù)量不大,可簡(jiǎn)單地用順序文件來(lái)組織。數(shù)據(jù)及數(shù)據(jù)聯(lián)系的組織關(guān)于數(shù)據(jù)自身的組織,DBMS可以根據(jù)數(shù)據(jù)和處理的要求自己設(shè)計(jì)文件結(jié)構(gòu),也可以從操作系統(tǒng)提供的文件結(jié)構(gòu)中選擇合適的加以實(shí)現(xiàn)。目前,操作系統(tǒng)提供的常用文件結(jié)構(gòu)有:順序文件、索引文件、索引順序文件、HASH文件(雜湊文件)和B樹類文件等等。數(shù)據(jù)庫(kù)中數(shù)據(jù)組織與數(shù)據(jù)之間聯(lián)系是緊密結(jié)合的。在數(shù)據(jù)的組織和存儲(chǔ)中必須直接或間接、顯示或隱含地體現(xiàn)數(shù)據(jù)之間的聯(lián)系,這是數(shù)據(jù)庫(kù)物理組織中主要考慮和設(shè)計(jì)的內(nèi)容。,4.N+M方案:M個(gè)DBMS進(jìn)程對(duì)應(yīng)N個(gè)用戶進(jìn)程N(yùn)+M方案采用M個(gè)DBMS進(jìn)程為N個(gè)用戶進(jìn)程提供服務(wù)(一般M- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)庫(kù) 管理 系統(tǒng)
鏈接地址:http://ioszen.com/p-12866475.html