首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
計算機(jī)等級考試 | 軟件水平考試 | 職稱計算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會計從業(yè)資格考試會計證) | 經(jīng)濟(jì)師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務(wù)師
注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2011年計算機(jī)等考四級數(shù)據(jù)庫工程師復(fù)習(xí)資料(8)

考試吧整理“2011年計算機(jī)等級四級數(shù)據(jù)庫工程師復(fù)習(xí)資料(8)”,方便考生備考!

  九、數(shù)據(jù)庫管理系統(tǒng)的設(shè)計與實現(xiàn)

  1.DBMS的目標(biāo)

  (1)用戶界面友好 對一個實用DBMS來說,用戶界面的質(zhì)量直接影響其生命力。DBMS的用戶接口應(yīng)面向應(yīng)用,采用適合最終用戶的交互式、表格式、菜單式、窗口式等界面形式,以方便使用和保持靈活性。一般地說,用戶界面應(yīng)具有可靠性、簡單性、靈活性和立即反饋等特性。

  (2)功能完備 DBMS功能隨系統(tǒng)的規(guī)模的大小而異。大型DBMS功能齊全,小型DBMS功能弱一些。DBMS主要功能包括數(shù)據(jù)定義、數(shù)據(jù)庫數(shù)據(jù)存取、事務(wù)控制、數(shù)據(jù)庫組織和存儲管理、數(shù)據(jù)庫安全保護(hù)等等。我們在下面討論這些功能的內(nèi)容。

  (3)效率高 系統(tǒng)效率包括三個方面:一是計算機(jī)系統(tǒng)內(nèi)部資源的使用效率。能充分利用資源(包括存儲空間、設(shè)備、CPU等),并注意使各種資源負(fù)載均衡以提高整個系統(tǒng)的效率,二是DBMS本身的運行效率。三是用戶的生產(chǎn)率。這是指用戶學(xué)習(xí)、使用DBMS和在DBMS基礎(chǔ)上開發(fā)的應(yīng)用系統(tǒng)的效率。

  2.DBMS的基本功能

  (1)數(shù)據(jù)庫定義 對數(shù)據(jù)庫的結(jié)構(gòu)進(jìn)行描述,包括外模式、模式、內(nèi)模式的定義;數(shù)據(jù)庫完整性的定義;安全保密定義(如用戶口令、級別、存取權(quán)限);存取路徑(如索引)的定義。這些定義存儲在數(shù)據(jù)字典(亦稱為系統(tǒng)目錄)中,是DBMS運行的基本依據(jù)。為此,提供數(shù)據(jù)定義語言DDL。

  (2)數(shù)據(jù)存取 提供用戶對數(shù)據(jù)的操縱功能,實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)的檢索、插入、修改和刪除。一個好的DBMS應(yīng)該提供功能強易學(xué)易用的數(shù)據(jù)操縱語言(DML)、方便的操作方式和較高的數(shù)據(jù)存取效率。DML有兩類:一類是宿主型語言,一類是自含型語言。前者的語句不能獨立使用而必須嵌入某種主語言,如C語言、COBOL語言中使用。而后者可以獨立使用,通常以供終端用戶交互使用和批處理方式兩種形式使用。

  (3)數(shù)據(jù)庫運行管理 這是指DBMS運行控制、管理功能。包括多用戶環(huán)境下的并發(fā)控制、安全性檢查和存取權(quán)限控制、完整性檢查和執(zhí)行、數(shù)據(jù)加密、運行日志的組織管理、事務(wù)的管理和自動恢復(fù)(保證事務(wù)的正確性),這些功能保證了數(shù)據(jù)庫系統(tǒng)的正常運行。

  (4)數(shù)據(jù)組織、存儲和管理 DBMS要分門別類地組織、存儲各類數(shù)據(jù),包括數(shù)據(jù)字典(亦稱系統(tǒng)目錄)、用戶數(shù)據(jù)、存取路徑等等。要確定以何種文件結(jié)構(gòu)和存取方式在存儲級上組織這些數(shù)據(jù),如何實現(xiàn)數(shù)據(jù)之間的聯(lián)系。數(shù)據(jù)組織和存儲的基本目標(biāo)是提高存儲空間利用率,選擇合適的存取方法確保較高存取(如隨機(jī)查找、順序查找、增、刪、改)效率。

  (5)數(shù)據(jù)庫的建立和維護(hù) 包括數(shù)據(jù)庫的初始建立、數(shù)據(jù)的轉(zhuǎn)換、數(shù)據(jù)庫的轉(zhuǎn)儲和恢復(fù)、數(shù)據(jù)庫的重組織和重構(gòu)造以及有性能監(jiān)測分析等功能。

  (6)其它功能 包括DBMS與網(wǎng)絡(luò)中其它軟件系統(tǒng)的通信功能;一個DBMS與另一個DBMS或文件系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換功能等。

  3.DBMS與操作系統(tǒng)

  通常DBMS是建立在操作系統(tǒng)環(huán)境之上的。根據(jù)具體操作系統(tǒng)的特點,DBMS可以用不同的方法利用操作系統(tǒng)的基本功能來實現(xiàn)DBMS。一般有下面3類方法:

  (1)共享模塊法

  (2)分離進(jìn)程法

  (3)和操作系統(tǒng)融合

  4.DBMS程序模塊的組成

  作為一個龐大的系統(tǒng)軟件,DBMS由眾多程序模塊組成,它們分別實現(xiàn)DBMS復(fù)雜而繁多的功能。數(shù)據(jù)庫定義方面 有DDL翻譯處理程序(包括外模式、模式、存儲模式處理程序)、保密定義處理程序(如授權(quán)定義處理程序)、完整性約束定義處理程序等。這些程序接收相應(yīng)的定義,進(jìn)行語法、語義檢查,把它們翻譯為內(nèi)部格式存儲在數(shù)據(jù)字典中。DDL翻譯程序還根據(jù)模式定義負(fù)責(zé)建立數(shù)據(jù)庫的框架(即形式一個空庫),等待裝入數(shù)據(jù)。數(shù)據(jù)庫操縱方面 有DML處理程序、終端查詢語言解釋程序、數(shù)據(jù)存取程序、數(shù)據(jù)更新程序等。DML處理程序或終端查詢語言解釋程序?qū)τ脩魯?shù)據(jù)操縱請求進(jìn)行語法、語義檢查、由數(shù)據(jù)存取或更新程序完成對數(shù)據(jù)庫的存取操作。數(shù)據(jù)庫運行管理方面 有系統(tǒng)初啟程序,負(fù)責(zé)初始化DBMS、建立DBMS的系統(tǒng)緩沖區(qū)、系統(tǒng)工作區(qū) 打開數(shù)據(jù)字典等等。還有安全性控制、完整性檢查、并發(fā)控制、事務(wù)管理、運行日志管理等程序模塊,在數(shù)據(jù)庫運行過程中監(jiān)視著對數(shù)據(jù)庫的所有操作,控制管理數(shù)據(jù)庫資源,處理多用戶的并發(fā)操作等。它們一方面保證用戶事務(wù)的正常運行,一方面保證數(shù)據(jù)庫的安全性和完整性。數(shù)據(jù)庫組織、存儲和管理方面 有文件讀寫與維護(hù)程序、存取路徑(如索引)管理程序、緩沖區(qū)管理程序(包括緩沖區(qū)讀、寫、淘汰等模塊),這些程序負(fù)責(zé)維護(hù)數(shù)據(jù)庫的數(shù)據(jù)和存取路徑,提供有效的存取的方法。數(shù)據(jù)庫建立、維護(hù)和其它。有數(shù)據(jù)庫初始數(shù)據(jù)裝入程序、轉(zhuǎn)儲程序、恢復(fù)程序、數(shù)據(jù)庫重構(gòu)造程序、數(shù)據(jù)轉(zhuǎn)換程序、通信程序等。DBMS的這些組成模塊互相聯(lián)系,互相依賴,共同完成DBMS復(fù)雜的功能。這些模塊之間的聯(lián)系有一定的層次關(guān)系。

  5.DBMS的層次結(jié)構(gòu)

  和操作系統(tǒng)一樣,可以也應(yīng)該將DBMS劃分成若干層次。許多DBMS實際上就是分層實現(xiàn)的。最上層是應(yīng)用層,位于DBMS核心之處。它處理的對象包括各種各樣的數(shù)據(jù)庫應(yīng)用,如用宿主語言編寫的應(yīng)用程序、終端用戶通過應(yīng)用接口(如FORMS)發(fā)出的事務(wù)請求等。該層是DBMS的最終用戶和應(yīng)用程序的界面層。第二層是語言翻譯處理層。它處理的對象是數(shù)據(jù)庫語言,如SQL。提供的數(shù)據(jù)接口是關(guān)系、視圖,即元組的集合。其功能是對數(shù)據(jù)庫語言的各類語句進(jìn)行語法分析、視圖轉(zhuǎn)換、授權(quán)檢查、完整性檢查、查詢優(yōu)化等。通過對下層基本模塊的調(diào)用,生成可執(zhí)行代碼。這些代碼的運行,即可完成數(shù)據(jù)庫語句的功能要求。第三層是數(shù)據(jù)存取層。該層處理的對象是單個元組。它把上層的集合操作轉(zhuǎn)化為單記錄操作。執(zhí)行掃描、排序、元組的查找、插入、修改、刪除、封鎖等基本操作。完成數(shù)據(jù)記錄的存取、存取路徑維護(hù)、并發(fā)控制、事務(wù)管理等工作。第四層是數(shù)據(jù)存儲層。該層處理的對象是數(shù)據(jù)頁和系統(tǒng)緩沖區(qū),執(zhí)行文件的邏輯打開、關(guān)閉、讀頁、寫頁、緩沖區(qū)讀和寫、頁面淘汰等操作,完成緩沖區(qū)管理、內(nèi)外存交換、外存管理等功能。操作系統(tǒng)是DBMS的基礎(chǔ),它處理的對象是數(shù)據(jù)文件的物理塊。執(zhí)行物理文件的讀寫操作,保證DBMS對數(shù)據(jù)邏輯上的讀寫真實地映射到物理文件上。操作系統(tǒng)提供的存取原語和基本的存取方法通常作為和DBMS存儲層的接口。

  6.語言處理

  語言翻譯處理層的任務(wù)就是把用戶在這兩種方式下提交給DBMS的數(shù)據(jù)庫語句轉(zhuǎn)換成對DBMS內(nèi)層可執(zhí)行的基本存取模塊的調(diào)用序列。數(shù)據(jù)庫語言通常包括DDL,DML,DCL三部分語句。DDL語句處理相對獨立和簡單。DML和DCL則較為復(fù)雜。具體來說,對DDL語句,語言翻譯處理層首先把它翻譯成內(nèi)部表示,然后把它存儲在系統(tǒng)的數(shù)據(jù)字典中。對DCL語句的定義部分,如安全保密定義、存取權(quán)限定義、完整性約束條件定義等處理與DDL相同。在RDBMS中數(shù)據(jù)字典通常采用和普通數(shù)據(jù)同樣的表示方式。數(shù)據(jù)字典包括關(guān)系定義表、屬性表、視圖表、視圖屬性表、視圖表達(dá)式表、用戶表、存取權(quán)限表、……。

  (1)解釋方法一些數(shù)據(jù)庫系統(tǒng)(如dBASEⅢ)對上述方法進(jìn)行了改進(jìn),通過盡量推遲聚束過程來贏得數(shù)據(jù)獨立性。具體做法是:直到執(zhí)行前,數(shù)據(jù)庫DML語句都以原始字符串的形式保存。隨著數(shù)據(jù)庫系統(tǒng)的發(fā)展,這種方法已逐步為預(yù)編譯技術(shù)所取代。

  (2)預(yù)編譯方法已經(jīng)看到,將聚束過程提前,固然可達(dá)到系統(tǒng)的高效率,但失去了數(shù)據(jù)庫的一個主要優(yōu)點———數(shù)據(jù)獨立性;將聚束時間推遲,贏得了數(shù)據(jù)性,卻增加了執(zhí)行高效率的代價。預(yù)編譯方法就是為了克服它們的缺點,保持兩者的優(yōu)點而提出的。其基本思想是,在用戶提供了DML語句后,在運行前對它進(jìn)行翻譯處理,保存產(chǎn)生好的執(zhí)行代碼,運行時加以執(zhí)行。但是,使用這種方法會遇到這樣的問題:在聚束過程中進(jìn)行優(yōu)化所依據(jù)的條件可能在運行前已不存在,或者數(shù)據(jù)結(jié)構(gòu)被修改,因而導(dǎo)致已作出的規(guī)劃在執(zhí)行時不再有效。例如,假設(shè)在聚束過程中決定使用某一索引來加快存取速度,而在程序編譯完成之后,運行之前,該索引被刪除了。那么,運行時就會出現(xiàn)不可預(yù)測的現(xiàn)象。為了解決這類問題,采用了重編譯方法。即當(dāng)數(shù)據(jù)庫中某些成分的改變而使一些程序的編譯結(jié)果無效時,再對它們執(zhí)行一次編譯。重編譯可在不同時刻進(jìn)行。為了提高整個系統(tǒng)的效率,不應(yīng)在數(shù)據(jù)庫某一成分改變后就馬上對受影響的那些源程序重編譯,較好的方法是將受影響的編譯結(jié)果置“無效”標(biāo)志,在其被執(zhí)行時才進(jìn)行自動重編譯。自動重編譯技術(shù)使得編譯方法既擁有了編譯時進(jìn)行束縛所帶來的高效率,又具備了執(zhí)行時束縛所帶來的數(shù)據(jù)獨立性。實踐證明,預(yù)編譯方法的效率比其它方法高兩倍以上。

  7.數(shù)據(jù)存取層

  數(shù)據(jù)存取層介于語言處理層和數(shù)據(jù)存儲之間。它向上提供單元組接口,即導(dǎo)航式的一次一個元組的存取操作。向下則以系統(tǒng)緩沖區(qū)的存儲器接口作為實現(xiàn)基礎(chǔ)。

  (1)提供一次一個元組的查找、插入、刪除、修改等基本操作。

  (2)提供元組查找所循的存取路徑以及對存取路徑的維護(hù)操作。如對索引記錄的查找、插入、刪除、修改。

  (3)對記錄和存取路徑的封鎖、解鎖操作。

  (4)日志文件的登記和讀取操作。

  (5)輔助操作。如掃描、合并/排序,其操作對象有關(guān)系、有序表、索引等。為了完成上述功能,通常把存取層又劃分為若干功能子系統(tǒng)加以實現(xiàn)。

1 2 3 下一頁
文章搜索
計算機(jī)等級考試欄目導(dǎo)航
版權(quán)聲明:如果計算機(jī)等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計算機(jī)等級考試網(wǎng)內(nèi)容,請注明出處。