freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)庫原理第五版習(xí)題答案-資料下載頁

2025-06-28 15:08本頁面
  

【正文】 的邏輯和物理結(jié)構(gòu)。數(shù)據(jù)庫的再組織是不修改數(shù)據(jù)庫的模式和內(nèi)模式的。進(jìn)行數(shù)據(jù)庫的再組織和重構(gòu)造的原因:數(shù)據(jù)庫運(yùn)行一段時間后,由于記錄不斷增、刪、改,會使數(shù)據(jù)庫的物理存儲情況變壞,降低了數(shù)據(jù)的存取效率,數(shù)據(jù)庫性能下降,這時 DBA 就要對數(shù)據(jù)庫進(jìn)行重組織。 DBMS 一般都提供用于數(shù)據(jù)重組織的實用程序。數(shù)據(jù)庫應(yīng)用環(huán)境常常發(fā)生變化,如增加新的應(yīng)用或新的實體,取消了某些應(yīng)用,有的實體與實體間的聯(lián)系也發(fā)生了變化等,使原有的數(shù)據(jù)庫設(shè)計不能滿足新的需求,需要調(diào)整數(shù)據(jù)庫的模式和內(nèi)模式。這就要進(jìn)行數(shù)據(jù)庫重構(gòu)造。 18 .現(xiàn)有一局部應(yīng)用,包括兩個實體:“出版社”和“作者”,這兩個實體是多對多的聯(lián)系,請讀者自己設(shè)計適當(dāng)?shù)膶傩?,畫?E 一 R 圖,再將其轉(zhuǎn)換為關(guān)系模型(包括關(guān)系名、屬性名、碼和完整性約束條件)。答:關(guān)系模型為:作者(作者號,姓名,年齡,性別,電話,地址)出版社(出版社號,名稱,地址,聯(lián)系電話)出版(作者號,出版社號,書的數(shù)量)出版關(guān)系的主碼作者號,出版社號分別參照作者關(guān)系的主碼作者號和出版社關(guān)系的主碼出版社號。19 .請設(shè)計一個圖書館數(shù)據(jù)庫,此數(shù)據(jù)庫中對每個借閱者保存讀者記錄,包括:讀者號,姓名,地址,性別,年齡,單位。對每本書存有:書號,書名,作者,出版社。對每本被借出的書存有讀者號、借出日期和應(yīng)還日期。要求:給出 E 一 R 圖,再將其轉(zhuǎn)換為關(guān)系模型。答 :E 一 R 圖為:關(guān)系模型為:讀者(讀者號,姓名,地址,性別書(書號,書名,作者,出版社)借書(讀者號,書號,借出日期,年齡,單位)應(yīng)還日期)第9章 關(guān)系查詢處理和查詢優(yōu)化1 .試述查詢優(yōu)化在關(guān)系數(shù)據(jù)庫系統(tǒng)中的重要性和可能性。答:重要性:關(guān)系系統(tǒng)的查詢優(yōu)化既是 RDBMS 實現(xiàn)的關(guān)鍵技術(shù)又是關(guān)系系統(tǒng)的優(yōu)點所在。它減輕了用戶選擇存取路徑的負(fù)擔(dān)。用戶只要提出“干什么”,不必指出“怎么干”。查詢優(yōu)化的優(yōu)點不僅在于用戶不必考慮如何最好地表達(dá)查詢以獲得較好的效率,而且在于系統(tǒng)可以比用戶程序的“優(yōu)化’夕做得更好。可能性:這是因為: ( l )優(yōu)化器可以從數(shù)據(jù)字典中獲取許多統(tǒng)計信息,例如關(guān)系中的元組數(shù)、關(guān)系中每個屬性值的分布情況、這些屬性上是否有索引、是什么索引( B +樹索引還是 HASH 索引或惟一索引或組合索引)等。優(yōu)化器可以根據(jù)這些信息選擇有效的執(zhí)行計劃,而用戶程序則難以獲得這些信息。 ( 2 )如果數(shù)據(jù)庫的物理統(tǒng)計信息改變了,系統(tǒng)可以自動對查詢進(jìn)行重新優(yōu)化以選擇相適應(yīng)的執(zhí)行計劃。在非關(guān)系系統(tǒng)中必須重寫程序,而重寫程序在實際應(yīng)用中往往是不太可能的。 ( 3 )優(yōu)化器可以考慮數(shù)十甚至數(shù)百種不同的執(zhí)行計劃,從中選出較優(yōu)的一個,而程序員一般只能考慮有限的幾種可能性。 ( 4 )優(yōu)化器中包括了很多復(fù)雜的優(yōu)化技術(shù),這些優(yōu)化技術(shù)往往只有最好的程序員才能掌握。系統(tǒng)的自動優(yōu)化相當(dāng)于使得所有人都擁有這些優(yōu)化技術(shù)。2 .對學(xué)生一課程數(shù)據(jù)庫有如下的查詢: SEI 王 CT Cn 即 ne FROM Student , Cou 拐 e , SC WHERE Student . Sno = SC . Sno AND SC . Cllo = Coll 拐 e . Cllo AND Stu 擊 nt . Sdept = ! 15 ! 。 此查詢要求信息系學(xué)生選修了的所有課程名稱。試畫出用關(guān)系代數(shù)表示的語法樹,并用關(guān)系代數(shù)表達(dá)式優(yōu)化算法對原始的語法樹進(jìn)行優(yōu)化處理,畫出優(yōu)化后的標(biāo)準(zhǔn)語法樹。答:3 .試述查詢優(yōu)化的一般準(zhǔn)則。答:下面的優(yōu)化策略一般能提高查詢效率: ( l )選擇運(yùn)算應(yīng)盡可能先做; ( 2 )把投影運(yùn)算和選擇運(yùn)算同時進(jìn)行; ( 3 )把投影同其前或其后的雙目運(yùn)算結(jié)合起來執(zhí)行; ( 4 )把某些選擇同在它前面要執(zhí)行的笛卡兒積結(jié)合起來成為一個連接運(yùn)算; ( 5 )找出公共子表達(dá)式; ( 6 )選取合適的連接算法。4 .試述查詢優(yōu)化的一般步驟。答:各個關(guān)系系統(tǒng)的優(yōu)化方法不盡相同,大致的步驟可以歸納如下: ( l )把查詢轉(zhuǎn)換成某種內(nèi)部表示,通常用的內(nèi)部表示是語法樹。 ( 2 )把語法樹轉(zhuǎn)換成標(biāo)準(zhǔn)(優(yōu)化)形式。即利用優(yōu)化算法,把原始的語法樹轉(zhuǎn)換成優(yōu)化的形式。 ( 3 )選擇低層的存取路徑。 ( 4 )生成查詢計劃,選擇代價最小的。第10章 數(shù)據(jù)庫恢復(fù)技術(shù)1.試述事務(wù)的概念及事務(wù)的4 個特性。答:事務(wù)是用戶定義的一個數(shù)據(jù)庫操作序列,這些操作要么全做要么全不做,是一個不可分割的工作單位。事務(wù)具有4 個特性:原子性(Atomicity )、一致性(consistency )、隔離性( Isolation )和持續(xù)性(Durability )。這4 個特性也簡稱為ACID 特性。原子性:事務(wù)是數(shù)據(jù)庫的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。一致性:事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫從一個一致性狀態(tài)變到另一個一致性狀態(tài)。隔離性:一個事務(wù)的執(zhí)行不能被其他事務(wù)干擾。即一個事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對其他并發(fā)事務(wù)是隔離的,并發(fā)執(zhí)行的各個事務(wù)之間不能互相干擾。持續(xù)性:持續(xù)性也稱永久性(Perfnanence ) ,指一個事務(wù)一旦提交,它對數(shù)據(jù)庫中數(shù)據(jù)的改變就應(yīng)該是永久性的。接下來的其他操作或故障不應(yīng)該對其執(zhí)行結(jié)果有任何影響。2 .為什么事務(wù)非正常結(jié)束時會影響數(shù)據(jù)庫數(shù)據(jù)的正確性,請列舉一例說明之。答:事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫從一個一致性狀態(tài)變到另一個一致性狀態(tài)。如果數(shù)據(jù)庫系統(tǒng)運(yùn)行中發(fā)生故障,有些事務(wù)尚未完成就被迫中斷,這些未完成事務(wù)對數(shù)據(jù)庫所做的修改有一部分已寫入物理數(shù)據(jù)庫,這時數(shù)據(jù)庫就處于一種不正確的狀態(tài),或者說是不一致的狀態(tài)。例如某工廠的庫存管理系統(tǒng)中,要把數(shù)量為Q 的某種零件從倉庫1 移到倉庫2 存放。則可以定義一個事務(wù)T , T 包括兩個操作;Ql = Ql 一Q , Q2= Q2 + Q。 如果T 非正常終止時只做了第一個操作,則數(shù)據(jù)庫就處于不一致性狀態(tài),庫存量無緣無故少了Q 。3 .?dāng)?shù)據(jù)庫中為什么要有恢復(fù)子系統(tǒng)?它的功能是什么?答:因為計算機(jī)系統(tǒng)中硬件的故障、軟件的錯誤、操作員的失誤以及惡意的破壞是不可避免的,這些故障輕則造成運(yùn)行事務(wù)非正常中斷,影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,重則破壞數(shù)據(jù)庫,使數(shù)據(jù)庫中全部或部分?jǐn)?shù)據(jù)丟失,因此必須要有恢復(fù)子系統(tǒng)?;謴?fù)子系統(tǒng)的功能是:把數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱為一致狀態(tài)或完整狀態(tài))。4 .?dāng)?shù)據(jù)庫運(yùn)行中可能產(chǎn)生的故障有哪幾類?哪些故障影響事務(wù)的正常執(zhí)行?哪些故障破壞數(shù)據(jù)庫數(shù)據(jù)?答:數(shù)據(jù)庫系統(tǒng)中可能發(fā)生各種各樣的故障,大致可以分以下幾類:(1)事務(wù)內(nèi)部的故障;(2)系統(tǒng)故障;(3)介質(zhì)故障;(4)計算機(jī)病毒。事務(wù)故障、系統(tǒng)故障和介質(zhì)故障影響事務(wù)的正常執(zhí)行;介質(zhì)故障和計算機(jī)病毒破壞數(shù)據(jù)庫數(shù)據(jù)。5 .?dāng)?shù)據(jù)庫恢復(fù)的基本技術(shù)有哪些?答:數(shù)據(jù)轉(zhuǎn)儲和登錄日志文件是數(shù)據(jù)庫恢復(fù)的基本技術(shù)。當(dāng)系統(tǒng)運(yùn)行過程中發(fā)生故障,利用轉(zhuǎn)儲的數(shù)據(jù)庫后備副本和日志文件就可以將數(shù)據(jù)庫恢復(fù)到故障前的某個一致性狀態(tài)。6 .?dāng)?shù)據(jù)庫轉(zhuǎn)儲的意義是什么?試比較各種數(shù)據(jù)轉(zhuǎn)儲方法。答:數(shù)據(jù)轉(zhuǎn)儲是數(shù)據(jù)庫恢復(fù)中采用的基本技術(shù)。所謂轉(zhuǎn)儲即DBA 定期地將數(shù)據(jù)庫復(fù)制到磁帶或另一個磁盤上保存起來的過程。當(dāng)數(shù)據(jù)庫遭到破壞后可以將后備副本重新裝入,將數(shù)據(jù)庫恢復(fù)到轉(zhuǎn)儲時的狀態(tài)。靜態(tài)轉(zhuǎn)儲:在系統(tǒng)中無運(yùn)行事務(wù)時進(jìn)行的轉(zhuǎn)儲操作,如上圖所示。靜態(tài)轉(zhuǎn)儲簡單,但必須等待正運(yùn)行的用戶事務(wù)結(jié)束才能進(jìn)行。同樣,新的事務(wù)必須等待轉(zhuǎn)儲結(jié)束才能執(zhí)行。顯然,這會降低數(shù)據(jù)庫的可用性。動態(tài)轉(zhuǎn)儲:指轉(zhuǎn)儲期間允許對數(shù)據(jù)庫進(jìn)行存取或修改。動態(tài)轉(zhuǎn)儲可克服靜態(tài)轉(zhuǎn)儲的缺點,它不用等待正在運(yùn)行的用戶事務(wù)結(jié)束,也不會影響新事務(wù)的運(yùn)行。但是,轉(zhuǎn)儲結(jié)束時后援副本上的數(shù)據(jù)并不能保證正確有效。因為轉(zhuǎn)儲期間運(yùn)行的事務(wù)可能修改了某些數(shù)據(jù),使得后援副本上的數(shù)據(jù)不是數(shù)據(jù)庫的一致版本。為此,必須把轉(zhuǎn)儲期間各事務(wù)對數(shù)據(jù)庫的修改活動登記下來,建立日志文件( 109 file )。這樣,后援副本加上日志文件就能得到數(shù)據(jù)庫某一時刻的正確狀態(tài)。轉(zhuǎn)儲還可以分為海量轉(zhuǎn)儲和增量轉(zhuǎn)儲兩種方式。海量轉(zhuǎn)儲是指每次轉(zhuǎn)儲全部數(shù)據(jù)庫。增量轉(zhuǎn)儲則指每次只轉(zhuǎn)儲上一次轉(zhuǎn)儲后更新過的數(shù)據(jù)。從恢復(fù)角度看,使用海量轉(zhuǎn)儲得到的后備副本進(jìn)行恢復(fù)一般說來更簡單些。但如果數(shù)據(jù)庫很大,事務(wù)處理又十分頻繁,則增量轉(zhuǎn)儲方式更實用更有效。7 .什么是日志文件?為什么要設(shè)立日志文件?答:(1)日志文件是用來記錄事務(wù)對數(shù)據(jù)庫的更新操作的文件。(2)設(shè)立日志文件的目的是:進(jìn)行事務(wù)故障恢復(fù);進(jìn)行系統(tǒng)故障恢復(fù);協(xié)助后備副本進(jìn)行介質(zhì)故障恢復(fù)。8 .登記日志文件時為什么必須先寫日志文件,后寫數(shù)據(jù)庫?答:把對數(shù)據(jù)的修改寫到數(shù)據(jù)庫中和把表示這個修改的日志記錄寫到日志文件中是兩個不同的操作。有可能在這兩個操作之間發(fā)生故障,即這兩個寫操作只完成了一個。如果先寫了數(shù)據(jù)庫修改,而在運(yùn)行記錄中沒有登記這個修改,則以后就無法恢復(fù)這個修改了。如果先寫日志,但沒有修改數(shù)據(jù)庫,在恢復(fù)時只不過是多執(zhí)行一次UNDO 操作,并不會影響數(shù)據(jù)庫的正確性。所以一定要先寫日志文件,即首先把日志記錄寫到日志文件中,然后寫數(shù)據(jù)庫的修改。9 .針對不同的故障,試給出恢復(fù)的策略和方法。(即如何進(jìn)行事務(wù)故障的恢復(fù)?系統(tǒng)故障的恢復(fù)?介質(zhì)故障恢復(fù)?) 答:事務(wù)故障的恢復(fù):事務(wù)故障的恢復(fù)是由DBMS DBMs 執(zhí)行恢復(fù)步驟是:自動完成的,對用戶是透明的。(1)反向掃描文件日志(即從最后向前掃描日志文件),查找該事務(wù)的更新操作;(2)對該事務(wù)的更新操作執(zhí)行逆操作,即將日志記錄中“更新前的值”寫入數(shù)據(jù)庫;(3)繼續(xù)反向掃描日志文件,做同樣處理;(4)如此處理下去,直至讀到此事務(wù)的開始標(biāo)記,該事務(wù)故障的恢復(fù)就完成了。系統(tǒng)故障的恢復(fù):系統(tǒng)故障可能會造成數(shù)據(jù)庫處于不一致狀態(tài):一是未完成事務(wù)對數(shù)據(jù)庫的更新可能已寫入數(shù)據(jù)庫;二是已提交事務(wù)對數(shù)據(jù)庫的更新可能還留在緩沖區(qū),沒來得及寫入數(shù)據(jù)庫。因此恢復(fù)操作就是要撤銷(UNDO )故障發(fā)生時未完成的事務(wù),重做(REDO )已完成的事務(wù)。系統(tǒng)的恢復(fù)步驟是:(1)正向掃描日志文件,找出在故障發(fā)生前已經(jīng)提交的事務(wù)隊列(REDO 隊列)和未完成的事務(wù)隊列(uNDO 隊列)。(2)對撤銷隊列中的各個事務(wù)進(jìn)行UNDO 處理。進(jìn)行UNDO 處理的方法是,反向掃描日志文件,對每個UNDO 事務(wù)的更新操作執(zhí)行逆操作,即將日志記錄中“更新前的值”Before Image )寫入數(shù)據(jù)庫。( 3 )對重做隊列中的各個事務(wù)進(jìn)行REDO 處理。進(jìn)行REDO 處理的方法是:正向掃描日志文件,對每個REDO 事務(wù)重新執(zhí)行日志文件登記的操作。即將日志記錄中“更新后的值”Afte , Image )寫入數(shù)據(jù)庫。介質(zhì)故障的恢復(fù):介質(zhì)故障是最嚴(yán)重的一種故障?;謴?fù)方法是重裝數(shù)據(jù)庫,然后重做已完成的事務(wù)。具體過程是:( 1 ) DBA 裝入最新的數(shù)據(jù)庫后備副本(離故障發(fā)生時刻最近的轉(zhuǎn)儲副本), 使數(shù)據(jù)庫恢復(fù)到轉(zhuǎn)儲時的一致性狀態(tài);( 2 ) DBA 裝入轉(zhuǎn)儲結(jié)束時刻的日志文件副本;( 3 ) DBA 啟動系統(tǒng)恢復(fù)命令,由DBMS 完成恢復(fù)功能,即重做已完成的事務(wù)。10 .什么是檢查點記錄?檢查點記錄包括哪些內(nèi)容?答:檢查點記錄是一類新的日志記錄。它的內(nèi)容包括:① 建立檢查點時刻所有正在執(zhí)行的事務(wù)清單② 這些事務(wù)的最近一個日志記錄的地址。11 .具有檢查點的恢復(fù)技術(shù)有什么優(yōu)點?試舉一個具體的例子加以說明。答答:利用日志技術(shù)進(jìn)行數(shù)據(jù)庫恢復(fù)時,恢復(fù)子系統(tǒng)必須搜索日志,確定哪些事務(wù)需要REDO ,哪些事務(wù)需要uNDO 。一般來說,需要檢查所有日志記錄。這樣做有兩個問題:一是搜索整個日志將耗費(fèi)大量的時間;二是很多需要REDO 處理的事務(wù)實際上已經(jīng)將它們的更新操作結(jié)果寫到數(shù)據(jù)庫中了,恢復(fù)子系統(tǒng)又重新執(zhí)行了這些操作,浪費(fèi)了大量時間。檢查點技術(shù)就是為了解決這些問題。在采用檢查點技術(shù)之前,恢復(fù)時需要從頭掃描日志文件,而利用檢查點技術(shù)只需要從T 。開始掃描日志,這就縮短了掃描日志的時間。事務(wù)Tl 的更新操作實際上已經(jīng)寫到數(shù)據(jù)庫中了,進(jìn)行恢復(fù)時沒有必要再REDO 處理,采用檢查點技術(shù)做到了這一點。12 .試述使用檢查點方法進(jìn)行恢復(fù)的步驟。答:(1)從重新開始文件(見第11 題的圖)中找到最后一個檢查點記錄在日志文件中的地址,由該地址在日志文件中找到最后一個檢查點記錄。(2)由該檢查點記錄得到檢查點建立時刻所有正在執(zhí)行的事務(wù)清單ACTIVE 一LIST 。這里建立兩個事務(wù)隊列:1 ) UNDO 一LIST :需要執(zhí)行undo 操作的事務(wù)集合;2 ) REDO 一LIST :需要執(zhí)行redo 操作的事務(wù)集合。把ACTIVE 一LIST 暫時放入UNDO 一LIST 隊列,REDO 隊列暫為空。3 )從檢查點開始正向掃描日志文件:① 如有新開始的事務(wù)T * ,把T *暫時放入uNDO 一LlsT 隊列;② 如有提交的事務(wù)毛,把毛從UNDO 一LIST 隊列移到REDO 一LIST 隊列,直到日志文件結(jié)束;4 )對UNDO 一LIST 中的每個事務(wù)執(zhí)行UNDO 操作,對REDO 一LIST 中的每個事務(wù)執(zhí)行REDO 操作。13 .什么是數(shù)據(jù)庫鏡像?它有什么用途?答:數(shù)據(jù)庫鏡像即根據(jù)DBA 的要求,自動把整個數(shù)據(jù)庫或者其中的部分關(guān)鍵數(shù)據(jù)復(fù)制到另一個磁盤上。每當(dāng)主數(shù)據(jù)庫更新時,DBMS 自動把更新后的數(shù)據(jù)復(fù)制過去,即DBMS 自動保證鏡像數(shù)據(jù)與主數(shù)據(jù)的一致性。數(shù)據(jù)庫鏡像的用途有:一是用于數(shù)據(jù)庫恢復(fù)。當(dāng)出現(xiàn)介質(zhì)故障時,可由鏡像磁盤繼續(xù)提供使用,同時DBMS 自動利用鏡像磁盤數(shù)據(jù)進(jìn)行數(shù)據(jù)庫的恢復(fù),不需要關(guān)閉系統(tǒng)和重裝數(shù)據(jù)庫副本。二是提高數(shù)據(jù)庫的可用性。在沒有出現(xiàn)故障時,當(dāng)一個用戶對某個數(shù)據(jù)加排它鎖進(jìn)行修改時,其他用戶可以讀鏡像數(shù)據(jù)庫上的數(shù)據(jù),而不必等待該用戶釋放鎖。第11章 并發(fā)控制兩段鎖協(xié)議是指所有事務(wù)必須分兩個階段對數(shù)據(jù)項加鎖
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1