分布式數(shù)據(jù)庫試題及答案_第1頁
分布式數(shù)據(jù)庫試題及答案_第2頁
已閱讀5頁,還剩74頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、數(shù)據(jù)庫試題目錄1. 九八年秋季試題51.1. 概念題51.1.1. 比較半連接方法和枚舉法的優(yōu)缺點。51.1.2. 2PL協(xié)議的基本思想。51.1.3. WAL協(xié)議的主要思想。51.1.4. SSPARC三級模式體系結(jié)構(gòu)。51.1.5. 設(shè)計OID的數(shù)據(jù)結(jié)構(gòu)時應(yīng)考慮哪些問題。61.2. 某個大學(xué)中有若干系,且每個系有若干個班級和教研室,每個教研室有若干個教員,其中教授、副教授每個人帶若干名研究生。每個班有若干名學(xué)生,每個學(xué)生可選修若干門課程,每門課程可由若干學(xué)生選修。完成下列各種要求:71.3. 下面是某學(xué)院的一個學(xué)生檔案數(shù)據(jù)庫的全局模式:91.3.1. 將全局模式進行分片,寫出分片定義和分片

2、條件。91.3.2. 指出各分片的類型,并畫出分片樹。91.3.3. 假設(shè)要求查詢系號為1的所有學(xué)生的姓名和成績,寫出在全局模式上的SQL查詢語句,并要求轉(zhuǎn)換成相應(yīng)的關(guān)系代數(shù)表示,畫出全局查詢樹,請依次進行全局優(yōu)化和分片優(yōu)化,畫出優(yōu)化后的查詢樹。要求給出優(yōu)化變換過程。101.4. 設(shè)數(shù)據(jù)項x,y存放在S1場地,u,v存放在S2場地,有分布式事務(wù)T1和T2,T1在S1場地的操作為R1(x)W1(x)R1(y)W1(y),T2在S1場地的操作為R2(x)R2(y)W2(y);T1在S2場地上的操作作為R1(u)R1(v)W1(u),T2在S2場地上的操作作為W2(u)R2(v)W2(v)。對下述2

3、種情況,各舉一種可能的局部歷程(H1和H2),并說明理由。111.4.1. 局部分別是可串行化,而全局是不可串行化的111.4.2. 局部和全局都是可串行化的。要求按照嚴格的2PL協(xié)議,加上適當(dāng)?shù)募渔i和解鎖命令,(注意,用rl(x)表示加讀鎖,wl(x)表示加對x加寫鎖,ul(x)表示解鎖)121.5. 試述面向?qū)ο蟮臄?shù)據(jù)庫系統(tǒng)中頁面服務(wù)器和對象服務(wù)器兩種Client/Server體系結(jié)構(gòu)的主要特點,122. 九九年春季試題132.1. DBMS解決了信息處理技術(shù)中的哪些挑戰(zhàn)?132.2. 在關(guān)系數(shù)據(jù)庫應(yīng)用設(shè)計中,為什么要對數(shù)據(jù)庫模式進行規(guī)范化?132.3. 簡述ACID特性。152.4. 長

4、事務(wù)處理有哪些特性,如何解決?152.5. 數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)有哪幾類,每種類型的特點是什么,關(guān)鍵技術(shù)有哪些?.162.6. 決策支持類應(yīng)用與OLTP應(yīng)用對于數(shù)據(jù)庫系統(tǒng)的要求有哪些不同,支持前者的關(guān)鍵技術(shù)有哪些,并簡述之。172.7. 面向?qū)ο蟮臄?shù)據(jù)庫是如何產(chǎn)生的,其基本原理是什么?有哪些創(chuàng)新特性?.182.8. rxr一定等于rxr嗎?在什么條件下rxr=rxr成立?18ijjiijji2.9. 為了設(shè)計一個健壯的分布式系統(tǒng),你必須知道可能發(fā)生哪種類型的失敗。.182.9.1. 請列出在分布式系統(tǒng)中可能的失敗類型:182.9.2. 在你列出的失敗類型中,哪些也可能發(fā)生在集中式系統(tǒng)中?192.

5、9.3. 對于每一種失敗類型,在失敗發(fā)生情況下,兩段提交機制如何保證事務(wù)的原子性?193. 九九年秋季試題193.1. 問答題193.1.1. 分布式數(shù)據(jù)庫系統(tǒng)在系統(tǒng)結(jié)構(gòu)、模式結(jié)構(gòu)、功能模塊等方面有何特點?.193.1.2. 給出兩種2PL協(xié)議,并比較它們的優(yōu)點缺點?203.1.3. 解釋為什么對象類的多繼承存在二義性,并通過例子加以說明。203.1.4. 對于下述情況,哪種并行性(查詢間并行性、操作間并行性、操作內(nèi)并行性)有助于正加系統(tǒng)的吞吐量:203.2. 下面是某個公司人事數(shù)據(jù)庫的兩個全局關(guān)系203.2.1. 將全局模式進行分片,寫出分片定義和分片條件。203.2.2. 指出各分片的類型

6、,并畫出分片樹213.2.3. 進行全局優(yōu)化,畫出優(yōu)化后的全局查詢樹。213.2.4. 進行分片優(yōu)化,畫出優(yōu)化后的分片查詢樹。223.3. 對3個關(guān)系R,S和T的分布式連接,已知有如下的剖視圖:253.3.1. 按照SDD-1半連接優(yōu)化算法,逐步求出半連接優(yōu)化集和最終執(zhí)行場地;.253.3.2. 對以上結(jié)果做相應(yīng)的優(yōu)化處理。313.4. 用下面的關(guān)鍵字值的集合構(gòu)造一顆B+樹:(2,3,5,7,11,17,19,23,29,31)。假定樹開始是空的,且關(guān)鍵字的值是以升序插入到B+樹中去的,B+樹每個節(jié)點中含的指針數(shù)為4。32123r)=900,32i.一.3.5. 考慮關(guān)系r(A,B,C),r(

7、C,D,E),r(E,F),假設(shè)不存在主關(guān)鍵字。設(shè)V(C,3.6. 假設(shè)一個存儲塊中僅能存放一個記錄且在內(nèi)存中最多只有三個頁框。請出在排序合并算法中每遍形成的Runs,排序?qū)傩詾榈谝粋€屬性:(kangaroo,17),(wallaby,21),(emu,1),(wombat,13),(platypus,3),(lion,8),(warthg,4),(zebra,11),(meerkat,6),(hornbill,2),(baboon,12)324. 二零年春季試題324.1324.1.1. 分布庫管理系統(tǒng)有哪些主要功能模塊及其作用324.1.2. 半連接方法和枚舉法各適用于何種查詢優(yōu)化情況32

8、4.1.3. 分布式事務(wù)有哪些基本性質(zhì)324.1.4. 什么是2PL協(xié)議334.2. 下面是某個公司的人事關(guān)系數(shù)據(jù)庫的全局模式:334.2.1. 將全局模式進行分片,寫出分片定義和分片條件。344.2.2. 指出分片的類型,并畫出分片樹。344.3. 對題4.2所確定的分片模式,要求查詢級別高于“6”的所有職員的姓名和工資,寫出的在全局模式上的SQL查詢語句,并要求轉(zhuǎn)換成相應(yīng)的關(guān)系代數(shù)表示,畫出全局查詢樹。344.3.1. 進行全局優(yōu)化,畫出各步優(yōu)化后的全局查詢樹。344.3.2. 進行分片優(yōu)化,畫出各步優(yōu)化后的分片查詢樹。354.4. 下面是一個數(shù)據(jù)庫系統(tǒng)出現(xiàn)故障是,日志文件中記錄的信息;3

9、64.4.1. 找出發(fā)生故障時系統(tǒng)中的活動事務(wù),確定出反做和重做事務(wù)集。364.4.2. 用C或其他語言定義出數(shù)據(jù)庫記錄(D記錄)和檢查點記錄(K記錄)的數(shù)據(jù)結(jié)構(gòu)。364.5. 設(shè)數(shù)據(jù)項x,y存放在S1場地,u,v存放在S2場地,有分布式事務(wù)T1和T2,T1在S1場地的操作為R1(x)W1(x)R1(y)W1(y),T2在S1場地的操作為R2(x)R2(y)W2(y);T1在S2場地上的操作作為R1(u)R1(v)W1(u),T2在S2場地上的操作作為W2(u)R2(v)W2(v)。對下述2種情況,各舉一種可能的局部歷程(H1和H2),并說明理由364.5.1. 局部分別是可串行化,而全局是不

10、可串行化的374.5.2. 局部和全局都是可串行化的。374.5.3. 要求按照嚴格的2PL協(xié)議,加上適當(dāng)?shù)募渔i和解鎖命令,(注意,用rl(x)表示加讀鎖,wl(x)表示加對x加寫鎖,ul(x)表示解鎖)375. 二零年秋試題385.1. 概念題385.1.1. 解釋對象數(shù)據(jù)庫系統(tǒng)中面向?qū)ο蟮南嚓P(guān)概念385.1.2. 從概念上比較對象數(shù)據(jù)庫模型與對象關(guān)系模型385.1.3. 利用左深樹、右深樹、濃密樹來進行查詢優(yōu)化的各自特點385.1.4. 試解釋影響并行數(shù)據(jù)庫系統(tǒng)中并行算法性能的三個因數(shù)395.1.5. 簡述用爬山算法進行查詢優(yōu)化的基本思想395.2. 下面是某個公司一個人事關(guān)系數(shù)據(jù)庫的全局

11、模式:EMP二ENO*,ENAME,POSITION,PHONEPAY二POSITION*,SALARYENO為職員號,POSITION為崗位。SALARY表示崗位對應(yīng)的工資,*對應(yīng)的屬性表示主關(guān)鍵字。該公司分布在兩個場地上,其中,在場地1經(jīng)常處理所有職員數(shù)據(jù),而場地2只處理工資低于1000的職員數(shù)據(jù),為了節(jié)省磁盤空間和增大處理局部性:405.2.1. 將以上全局關(guān)系進行分片設(shè)計,寫出分片定義和分片條件。405.2.2. 指出分片的類型,并畫出分片樹。405.2.3. 給出分配設(shè)計。405.3. 對題二所確定的分片模式,要求查詢崗位為“salesman”的所有職員的姓名和工資,寫出的在全局模式

12、上的SQL查詢語句,并要求轉(zhuǎn)換成相應(yīng)的關(guān)系代數(shù)表示,畫出全局查詢樹。假設(shè)“salesman”的工資為800元。要求給出中間轉(zhuǎn)換過程。415.3.1. 進行全局優(yōu)化,畫出優(yōu)化后的全局查詢樹。415.3.2. 進行分片優(yōu)化,畫出優(yōu)化后的分片查詢樹。425.4. 按如下給出的條件,求出半連接優(yōu)化計劃和執(zhí)行場地,并作后優(yōu)化處理.425.5. 下面是當(dāng)一個數(shù)據(jù)庫系統(tǒng)出現(xiàn)故障時,日志文件中的信息485.5.1. 畫出對應(yīng)的事務(wù)并發(fā)執(zhí)行圖。495.5.2. 找出發(fā)生故障時系統(tǒng)中的活動事務(wù),確定出反做和重做事務(wù)集。495.5.3. 指出需要undo的和redo的數(shù)據(jù)記錄。495.6. 設(shè)數(shù)據(jù)項x,y存放在S1

13、場地,u,v存放在S2場地,有分布式事務(wù)T1和T2。T1在S1場地的操作為R1(x)W1(x)R1(y)W1(y),T2在S1場地的操作為R2(x)R2(y)W2(y);T1在S2場地上的操作作為R1(u)R1(v)W1(u),T2在S2場地上的操作作為W2(u)R2(v)W2(v)。對下述2種情況,各舉一種可能的局部歷程(H1和H2),如果是可串行化的,指出事務(wù)的執(zhí)行次序。對第3種情況,給出符合基本2PL協(xié)議的調(diào)度。(T1加鎖命令用L1(X)表示,開鎖命令U1(X)表示。對任何數(shù)據(jù)的加鎖可在事務(wù)開始后立即進行)。495.6.1. 局部是不可串行化的。505.6.2. 局部是可串行化的,而全局

14、是不可串行化的。505.6.3. 局部是可串行化的,全局也是可串行化的。515.7. 設(shè)計一種滿足下列要求的索引結(jié)構(gòu)。515.7.1. 被索引的數(shù)據(jù)集合為有序集515.7.2. 在有序集上的查詢操作都是基于位置來進行的515.7.3. 當(dāng)往有序集中插入或刪除一個元素時,與該元素相關(guān)的后續(xù)元素的位置均要發(fā)生變化515.7.4. 元素的類型可為任意類型(這一個小問題的解決需要考慮語言的特征).516. 二零一春季試題51516.16.1.1. 討論集中式數(shù)據(jù)庫和分布式數(shù)據(jù)庫各自的優(yōu)缺點。516.1.2. 討論在局域網(wǎng)和廣域網(wǎng)兩種情況下分布庫設(shè)計的區(qū)別。526.1.3. 解釋分片透明性、復(fù)制透明性和

15、位置透明性等三級透明性的區(qū)別。526.1.4. 解釋2PC協(xié)議如何在故障情況下保證事務(wù)的原子性的526.1.5. 解釋嚴格2PL協(xié)議與基本2PL協(xié)議的區(qū)別536.2. 下面是某個公司一個人事關(guān)系數(shù)據(jù)庫的全局模式:EMP二ENO*,ENAME,POSITION,PHONEPAY二POSITION*,SALARYENO為職員號,POSITION為崗位。SALARY表示崗位對應(yīng)的工資,*對應(yīng)的屬性表示主關(guān)鍵字。該公司分布在兩個場地上,其中,在場地1經(jīng)常處理所有職員數(shù)據(jù),而場地2只處理工資低于1000的職員數(shù)據(jù),為了節(jié)省磁盤空間和增大處理局部性:546.2.1. 將以上全局關(guān)系進行分片設(shè)計,寫出分片定

16、義和分片條件。546.2.2. 指出分片的類型,并畫出分片樹。546.2.3. 給出分配設(shè)計。546.3. 對題二所確定的分片模式,要求查詢崗位為“salesman”的所有職員的姓名和工資,寫出的在全局模式上的SQL查詢語句,并要求轉(zhuǎn)換成相應(yīng)的關(guān)系代數(shù)表示,畫出全局查詢樹。假設(shè)“salesman”的工資為1500元。要求給出中間轉(zhuǎn)換過程。556.3.1. 進行全局優(yōu)化,畫出優(yōu)化后的全局查詢樹556.3.2. 進行分片優(yōu)化,畫出優(yōu)化后的分片查詢樹。566.4. 下面是當(dāng)一個數(shù)據(jù)庫系統(tǒng)出現(xiàn)故障時,日志文件中的信息566.4.1. 畫出對應(yīng)的事務(wù)并發(fā)執(zhí)行圖。576.4.2. 找出發(fā)生故障時系統(tǒng)中的活

17、動事務(wù),確定出反做和重做事務(wù)集。586.4.3. 指出需要undo的和redo的數(shù)據(jù)記錄。586.5. 設(shè)數(shù)據(jù)項x,y存放在S1場地,u,v存放在S2場地,有分布式事務(wù)T1和T2,T1在S1場地的操作為R1(x)W1(x)R1(y)W1(y),T2在S1場地的操作為R2(x)R2(y)W2(y);T1在S2場地上的操作作為R1(u)R1(v)W1(u),T2在S2場地上的操作作為W2(u)R2(v)W2(v)。對下述2種情況,各舉一種可能的局部歷程(H1和H2),如果是可串行化的,指出事務(wù)的執(zhí)行次序。對第3種情況,給出符合基本2PL協(xié)議的調(diào)度。(T1加鎖命令用L1(X)表示,開鎖命令U1(X)

18、表示。對任何數(shù)據(jù)的加鎖可在事務(wù)開始后立即進行)。586.5.1. 局部是不可串行化的。586.5.2. 局部是可串行化的,而全局是不可串行化的。596.5.3. 局部是可串行化的,全局也是可串行化的。591. 九八年秋季試題1.1.概念題1.1.1. 比較半聯(lián)接方法和枚舉法的優(yōu)缺點。半聯(lián)接技術(shù)縮減了連接操作的操作數(shù),以降低通信費用。枚舉法適用于縮減局部代價的情況。評估查詢操作的代價需要綜合考慮局部代價和傳輸代價。側(cè)重哪一個方面,需根據(jù)系統(tǒng)組成環(huán)境確定。如側(cè)重傳輸代價,局部代價可以忽略不計時,采用半聯(lián)接技術(shù)較好;相反,如果側(cè)重局部代價時,采用直接連接比采用半連接技術(shù)優(yōu)越。因為直接連接技術(shù)實現(xiàn)簡單

19、,枚舉法是基于直接連接的實現(xiàn)方法,此時應(yīng)采用枚舉法。半連接優(yōu)點:傳輸代價低。半連接缺點:沒有考慮局部代價;當(dāng)“選擇度”交低時,半連接技術(shù)才可行。1.122PL協(xié)議的基本思想。2PL協(xié)議的基本思想。并發(fā)控制是分布式事務(wù)管理的基本任務(wù)之一。其目的是保證分布式數(shù)據(jù)庫系統(tǒng)中多個事務(wù)的高效正確的執(zhí)行。有兩種模型來實現(xiàn):其中之一是以“鎖”方式為基礎(chǔ)的形式模型,一種是以時間印方式為基礎(chǔ)的時間模型。鎖方式的基本思想是:事務(wù)對任何數(shù)據(jù)的操作必須先申請數(shù)據(jù)項的鎖,只有申請到了鎖之后,即加鎖成功以后,才可以對數(shù)據(jù)項進行操作。操作完成了以后,要釋放已經(jīng)申請的鎖。通過鎖的共享和排斥的特性,實現(xiàn)事務(wù)的可串行化調(diào)度?!版i”

20、又可分為“讀鎖”和“寫鎖”:“讀鎖”是對數(shù)據(jù)項進行讀操作時要加的鎖。由于讀操作是可共享操作,所以“讀鎖”也稱為共享鎖?!皩戞i”是對數(shù)據(jù)進行寫入操作時要加入的鎖。寫操作是不可共享的鎖,因此也叫“排它鎖”。2PL(兩階段鎖)協(xié)議是并發(fā)控制算法中的重要算法。其主要內(nèi)容是并發(fā)執(zhí)行的多個事務(wù),在對數(shù)據(jù)進行操作以前要進行加鎖,并且每個事務(wù)中的所有加鎖操作都得在第一個解鎖操作以前執(zhí)行。因此,每個事務(wù)中的加鎖操作和解鎖操作分布在兩個部分中,所以此協(xié)議稱為2PL協(xié)議。在分布式數(shù)據(jù)庫系統(tǒng)中,如果全部的分布式事務(wù)均以2PL協(xié)議加鎖,則系統(tǒng)中各個場地上的局部調(diào)度是可串行化的。因為對每個局部場地而言,其上執(zhí)行的操作只是

21、全局操作的一部分,而全局操作采用2PL協(xié)議加鎖,顯然局部操作也遵循2PL協(xié)議。1.1.3.WAL協(xié)議的主要思想。系統(tǒng)的故障恢復(fù)是以日志文件為基礎(chǔ)完成的,因此,要求事務(wù)在執(zhí)行過程中滿足先寫日志協(xié)議(WAL)(Write_aheadlogging)。當(dāng)系統(tǒng)發(fā)生故障時,可有效地采用重做(redo)和反做(undo)兩個基本恢復(fù)操作進行恢復(fù)。先寫日志協(xié)議(WAL)含義:(1)在外存數(shù)據(jù)庫被更新之前,應(yīng)將日志文件中的反做信息寫入外存文件;(2)事務(wù)提交之前,日志文件中的有關(guān)重做信息應(yīng)在外存數(shù)據(jù)庫更新之前寫入外存文件。11.4.SSPARC三級模式體系結(jié)構(gòu)。ANSI/SPARC提出將數(shù)據(jù)庫系統(tǒng)分為三種層次

22、一、從數(shù)據(jù)庫管理系統(tǒng)的角度看,可分為三層,從外到內(nèi)依次為外模式、模式和內(nèi)模式。1、外模式:外模式又稱為用戶模式:是數(shù)據(jù)庫用戶和數(shù)據(jù)庫系統(tǒng)的接口,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖(View),是數(shù)據(jù)庫用戶可以看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。2、模式:模式是所有數(shù)據(jù)庫用戶的公共數(shù)據(jù)視圖,是數(shù)據(jù)庫中全部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。3、內(nèi)模式:內(nèi)模式又稱為存儲模式(StorageSchema),是數(shù)據(jù)庫物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式。二、為了實現(xiàn)三個抽象級別的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫管理系統(tǒng)在三層結(jié)構(gòu)之間提供了“兩層映像”外模式/模式映像和模式/內(nèi)

23、模式映像。1、外模式/模式映像通過外模式與模式之間的映像把描述局部邏輯結(jié)構(gòu)的外模式與描述全局邏輯結(jié)構(gòu)的模式聯(lián)系起來。2、模式/內(nèi)模式映像通過模式與內(nèi)模式之間的映像把描述全局邏輯結(jié)構(gòu)的模式與描述物理結(jié)構(gòu)的內(nèi)模式聯(lián)系起來。1.15設(shè)計OID的數(shù)據(jù)結(jié)構(gòu)時應(yīng)考慮哪些問題。OID對象標(biāo)識對象標(biāo)識在編程語言中已經(jīng)存在很長時間了,在數(shù)據(jù)庫概念中還是剛剛被提及(1989)。他的概念如下:在一個擁有對象標(biāo)識的模型中,一個對象的存在并不依賴于他的值。對象標(biāo)識不應(yīng)該依賴于它所代表的對象的值。而“對象相等”的概念反映了對象標(biāo)識與對象的值之間的關(guān)系。有兩種對象相等的意見存在,一種是兩個對象是同一個,即是一個對象那么它的

24、對象標(biāo)識就是同一個對象標(biāo)識。還有一種是指兩個對象相等,指他們的值相等而對象標(biāo)識不等。這有兩個含義,一個是對象共享,還有一個是對象更新。對象共享:在一個基于標(biāo)識的模型中,兩個對象可以共享一個部件。這樣,復(fù)雜對象的圖形化表示是一個圖,而在一個沒有標(biāo)識的模型中,限制成一個樹。考慮下面的例子:一個人有姓名、一個年齡、一個孩子的集合。假設(shè)Peter和Susan都有一個15歲的孩子,叫john。在實際生活中,會有兩種情況,一是Peter和Susan是同一個孩子的父母,或者是有二個孩子,在沒有標(biāo)識的模型中,Peter表示成:(Peter,40,(John,15,)Susan表示成(Susan,41,(Joh

25、n,15,)這樣,沒有方法表示是否Peter和Susan是同一個孩子的父母。在一個基于標(biāo)識的模型,那兩個結(jié)構(gòu)是否共享同一個部分(John,15,)。對象更新:假設(shè)Peter和Susan確實是John的父母,在這種情況下,所有對于Susan孩子的更新操作也會影響到Peter的孩子。在一個基于值的系統(tǒng),這兩個子對象必須都要更新。對象標(biāo)識同時也是強大的數(shù)據(jù)操縱的基本要素,可以時集合、元組的基礎(chǔ)和遞歸的復(fù)雜對象操縱。支持對象標(biāo)識意味著提供對象賦值功能、對象拷貝(深拷貝和淺拷貝)、對象標(biāo)識檢測和對象比較等(深相等和淺相等)。當(dāng)然,用戶可以在基于值的系統(tǒng)上,顯式給定對象標(biāo)識來模擬。然而,這種方式會給用戶確

26、保對象標(biāo)識的唯一性和參照完整性上增加負擔(dān),特別是類似于垃圾回收的操作。要注意的是對象標(biāo)識在編程語言中是必須的,程序中操縱的每個對象都有一個標(biāo)識可以被更新。這個標(biāo)識有時是一個變量名,有時也是物理內(nèi)存中的一個地址。但是在純關(guān)系型模型中,是沒有這一概念的,因為它是一個基于值的模型。1.2. 某個大學(xué)中有若干系,且每個系有若干個班級和教研室,每個教研室有若干個教員,其中教授、副教授,每個人帶領(lǐng)若干名研究生。每個班有若干名學(xué)生,每個學(xué)生可選修若干門課程,每門課程可由若干學(xué)生選修。完成下列各種要求:設(shè)計一個概念模式以描述上述情況,畫出E-R圖。要求補充每個實體的適當(dāng)屬性Mustcreate將“E-R圖”轉(zhuǎn)

27、換為關(guān)系模式答:系(系號,系名)二Dept(Dno,Dname)班級(班級號,班級名)二Class(Cno,Cname)教研室(教研室號,教研室名,系號)二StaffRoom(SRno,SRname,Dno)學(xué)生(學(xué)生號,學(xué)生名,班級號)二Student(Sno,Sname,Cno)課程(課程號,課程名)二Course(Cono,Coname)教員(教員號,教員名,職位,工資號,系號)=Teacher(Tno,Tname,Position,WageNo,Dname)選課(課程號,學(xué)號)二SelectCouse(Cono,Sno)/多對多的關(guān)系必須建立一個表。班系(班級號,系號)二ClassDe

28、pt(Cono,Dno)一對多的關(guān)系可建立也可不建立看情況。選導(dǎo)師(學(xué)號,教員號)二SelectTeacher(Sno,Tno)/對多的關(guān)系可建立也可不建立看情況。在本題需要建立。(3)使用SQL語言來完成下列查詢(a) 查找計算機系的,“學(xué)號”為981001的學(xué)生選修的課程名稱和課程號。SELECTCono,ConameFROMCourseWHEREEXIST(SELECT*FROMSelectCouseWHERESno=“981001”)(b) 求沒有帶研究生的所有教授或副教授的名稱、工資號及所在的系名。SELECTTname,WageNo,DnameFROMTeacherWHERETea

29、cher.Position:professororvice-professorANDNOTEXIST(SELECT*FROMSelectTeacher)(c) 至少有一個班級的系的名稱。SELECTDnameFROMDeptWHEREEXSIT(SELECT*FROMClassDept)Student=sno,sname,sex,birth,major,class,dnoGrade=sno,cno,grade其中sno,sname,sex,birth為學(xué)生的“學(xué)號”,姓名,性別和出生日期,major,class,dno為專業(yè),班級和所屬的“系號”。全學(xué)院共有8個系,dno分別為1,2,8。其中

30、cno為課程號,grade為考試成績。根據(jù)需要,要求將學(xué)生關(guān)系Student中的sno,class保存在場地0,其他屬性和成績Grade按“系號”14,5-6分別保存在場地1和場地2上。根據(jù)上述要求,1.3.1. 將全局模式進行分片,寫出分片定義和分片條件。分片定義和分片條件Stu二StudentgGradesno二snoStudentl=nStusno,classTemp二nStusname,sex,birth,major,dnoStudent2二5Temp1<=dno<=4Student3二5Temp5<=dno<=6SiteStudentl(0),Student2

31、(l),Student3(2);1.3.2. 指出各分片的類型,并畫出“分片樹”。Studentl=nStudent是垂直分片sno,class,snameStudent2二5Temp是水平分片1<=dno<=4Student3二5Temp是水平分片5<=dno<=6Stu(sno,sname,sex,birth,major,class,dno,cno,grade)(V)Studentl(sno,class,sname)(0)temp(sname,sex,birth,major,dno,cno,grade)(H)Student2(sname,sex,birth,majo

32、r,dno,cno,grade)(l)Student3(sname,sex,birth,major,dno,cno,grade)(2)1v=dnov=45v=dnov=61.3.3. 假設(shè)要求查詢“系號”是1的所有學(xué)生的姓名和成績,寫出在全局模式上的SQL查詢語句,并要求轉(zhuǎn)換成相應(yīng)的關(guān)系代數(shù)表示,畫出全局查詢樹,請依次進行全局優(yōu)化和分片優(yōu)化,畫出優(yōu)化后的查詢樹。要求給出優(yōu)化變換過程。SELECT*FROMStuWHEREdno=“1”去掉Student3如圖nsname,grade|5dno="1"|sname=snameStudentl(sno,class,sname)S

33、tudent2(sname,sex,birth,major,dno,cno,grade)按C1、C2準則轉(zhuǎn)換將一元操作下移。nsname,grade|Student1(sno,class,sname)8dno="1"IStudent2(sname,sex,birth,major,dno,cno,grade)1.4.設(shè)數(shù)據(jù)項x,y存放在S1場地,u,v存放在S2場地,有分布式事務(wù)T1和T2,T1在S1場地的操作為R1(x)W1(x)R1(y)W1(y),T2在S1場地的操作為R2(x)R2(y)W2(y);T1在S2場地上的操作作為R1(u)R1(v)W1(u),T2在S2場

34、地上的操作作為W2(u)R2(v)W2(v)。對下述2種情況,各舉出一種可能的局部歷程(H1和H2),并說明理由。串行調(diào)度數(shù)據(jù)項x,y數(shù)據(jù)項u,vTimeSiteS1SiteS2|T1T2T1T2|R1(x)R1(u)|W1(x)R1(v)|R1(y)W1(u)|W1(y)R2(x)W2(u)|R2(y)R2(v)W2(y)W2(v)Tl<T21.4.1.局部分別是可串行化,而全局是不可串行化的數(shù)據(jù)項u,v數(shù)據(jù)項x,yTimeSiteS1SiteS2|T1T2T1T2|R1(x)W2(u)|W1(x)R1(u)R2(v)|R1(y)R2(x)W2(v)|W1(y)R1(v)|R2(y)W

35、1(u)|!W2(y)T1S1<T2S1T2s2<T1s2Tl、T2的所有子事務(wù)在每個站點都是可串行執(zhí)行的。但根據(jù)2PL協(xié)議事務(wù)T1在沒有獲得對v的鎖之前是不會釋放y的鎖,而T2在沒有獲得y的鎖之前是不會釋放v的鎖,T1和T2發(fā)生了死鎖,故T1和T2之間在全局上是不可串行化的。1.4.2.局部和全局都是可串行化的。要求按照嚴格的2PL協(xié)議,加上適當(dāng)?shù)募渔i和解鎖命令,(注意,用rl(x)表示加讀鎖,wl(x)表示加對x加寫鎖,ul(x)表示解鎖)全局事務(wù)在全局范圍內(nèi)是可串行化的,必須是全局事務(wù)的所有子事務(wù)在每個局部站點上的可串行性在調(diào)度表中出現(xiàn)的順序必須相同。即TiAvTjA,則對于

36、所有擁有Ti和Tj代理的站點k都有TikvTjk,數(shù)據(jù)項x,y數(shù)據(jù)項u,vTimeSiteS1SiteS2|T1T2T1T2|rl1(x)rl1(u)|R1(x)RL2(x)R1(u)wl2(u)|wl1(x)waitrl1(v)wait|rl1(y).R1(v).|R1(y).wl1(u).|W1(y)w1(u).|U1(x).u1(u)|U1(y).u1(v)|rl2(x)wl2(u)|R2(x)w2(u)|rl2(y)rl2(v)|R2(y)r2(v)|wl2(y)wl2(v)|W2(y)w2(v)|U2(x)u2(u)|U2(y)u2(v)!1.5.試述面向?qū)ο蟮臄?shù)據(jù)庫系統(tǒng)中頁面服務(wù)器

37、和對象服務(wù)器兩種Client/Server體系結(jié)構(gòu)的主要特點,基于頁面服務(wù)的體系結(jié)構(gòu)可分為兩種:一種是基于pagetoobject的服務(wù)體系結(jié)構(gòu),這種體系結(jié)構(gòu)的特點是數(shù)據(jù)傳輸單位是頁面,在客戶方緩沖頁面和對象,其優(yōu)點是服務(wù)器的性能大大的提高了,而且在客戶和服務(wù)器之間數(shù)據(jù)傳輸較少,其缺點方法不能在服務(wù)器上運行;另一種體系結(jié)構(gòu)是基于pagetopage服務(wù)器體系結(jié)構(gòu),這種體系結(jié)構(gòu)與前面的體系結(jié)構(gòu)非常相似,差別是客戶方僅緩沖頁面但不緩沖對象?;趯ο蠓?wù)器(OSobjectserver)的0ODBMS體系結(jié)構(gòu)的特點是客戶器與服務(wù)器間的數(shù)據(jù)傳輸單位是對象,其優(yōu)點是方法在對象服務(wù)器上運行且客戶方和服務(wù)器

38、方均可進行查詢處理,但這種體系結(jié)構(gòu)的缺點是數(shù)據(jù)傳輸量可能比較大,而服務(wù)器仍然是一個系統(tǒng)性能的瓶頸。2. 九九年春季試題2.1. DBMS解決了信息處理技術(shù)中的哪些挑戰(zhàn)?關(guān)系數(shù)據(jù)庫的基本理論已經(jīng)成熟,但各大公司在關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)的實現(xiàn)和產(chǎn)品開發(fā)中,都遇到了一系列技術(shù)問題,主要是在數(shù)據(jù)庫的規(guī)模愈來愈大,數(shù)據(jù)庫的結(jié)構(gòu)愈來愈復(fù)雜,又有愈來愈多的用戶共享數(shù)據(jù)庫的情況下,如何保障數(shù)據(jù)的完整性(Integrity)、安全性(Security)、并行性(Concurrency),以及一旦出現(xiàn)故障后,數(shù)據(jù)庫如何實現(xiàn)從故障中恢復(fù)(Recovery)。這些問題如果不能圓滿解決,無論哪個公司的數(shù)據(jù)庫產(chǎn)

39、品都無法進入實用,最終不能被用戶所接受。正是在解決這些重大的技術(shù)問題,促使了DBMS發(fā)展和成熟。目前,DBMS解決上述問題的主要技術(shù)手段和方法如下:把對數(shù)據(jù)庫的操作劃分為稱作"事務(wù)"(transaction)的原子單位,對1個事務(wù)內(nèi)的操作,實行"allornot的方針,即要么全做,要么全不做。用戶在對數(shù)據(jù)庫發(fā)出操作請求時,系統(tǒng)對有關(guān)的不同程度的數(shù)據(jù)元素(字段、記錄或文件)"加鎖"(locking);操作完成后再解鎖"(unlocking)。對數(shù)據(jù)庫的任何更新分兩階段提交(2PL)。建立系統(tǒng)運行日志(log),以便在出錯時與數(shù)據(jù)庫的備份

40、(backup)起將數(shù)據(jù)庫恢復(fù)到出錯前的正常狀態(tài)。上述及其他各種方法可總稱為"事務(wù)處理技術(shù)"(transactionprocessingtechnique)o事務(wù)處理技術(shù)雖然誕生于數(shù)據(jù)庫研究,但對于分布式系統(tǒng),client/server結(jié)構(gòu)中的數(shù)據(jù)管理與通信,對于容錯和高可靠性系統(tǒng),同樣具有重要的意義。2.2. 在關(guān)系數(shù)據(jù)庫應(yīng)用設(shè)計中,為什么要對數(shù)據(jù)庫模式進行規(guī)范化?關(guān)系數(shù)據(jù)庫的設(shè)計是對數(shù)據(jù)進行組織化和結(jié)構(gòu)化的過程,核心問題是關(guān)系模型的設(shè)計。關(guān)系模型是數(shù)學(xué)化的、用二維表格數(shù)據(jù)描述各實體之間的聯(lián)系的這么一種模型;它是所有的關(guān)系模式、屬性名和關(guān)鍵字的匯集,是關(guān)系模式描述的對象。

41、簡單的說關(guān)系模式是指一個關(guān)系的屬性名表,即“二維表”的“表框架”。關(guān)系模式的設(shè)計是關(guān)系模型設(shè)計的靈魂。所以,關(guān)系模式的設(shè)計是關(guān)系數(shù)據(jù)庫設(shè)計核心的核心。關(guān)系模式的設(shè)計直接決定著關(guān)系數(shù)據(jù)庫的性能。目前,在指導(dǎo)關(guān)系模式的設(shè)計中規(guī)范化(normalization)設(shè)計占有主導(dǎo)地位,它是在數(shù)據(jù)庫幾十年的長期發(fā)展中產(chǎn)生并成熟的。但近年來這一領(lǐng)域出現(xiàn)了一種新的趨勢,一種稱為“非規(guī)范化”(denormalization)的關(guān)系模式設(shè)計引起業(yè)界的關(guān)注并已在一定的范圍內(nèi)得到應(yīng)用。對這一新的設(shè)計思想,各方反應(yīng)迥然不同褒貶不一,從而在相關(guān)的理論界掀起了一場不大不小的規(guī)范化與非規(guī)范化之爭。本文簡單介紹了規(guī)范化與非規(guī)范化

42、設(shè)計的基本思想,綜述了正反雙方爭論的要點,供參考。一、規(guī)范化設(shè)計關(guān)系模式規(guī)范化設(shè)計的基本思想是通過對關(guān)系模式進行分解,用一組等價的關(guān)系子模式來代替原有的關(guān)系模式,消除數(shù)據(jù)依賴(包括函數(shù)依賴和多值依賴)中不合理的部分,使得一個關(guān)系僅描述一個實體或者實體間的一種聯(lián)系。這一過程必須在保證無損連接性、保持函數(shù)依賴性的前提下進行,即確保不破壞原有數(shù)據(jù)的前提下,并可將分解后的關(guān)系通過自然聯(lián)接恢復(fù)到原有的關(guān)系。具體地說,規(guī)范化設(shè)計的過程就是按不同的范式,將一個二維表不斷地分解成多個二維表并建立表之間的關(guān)聯(lián),最終達到一個表唯一描述一個實體或者實體間的一種聯(lián)系的目標(biāo)。目前遵循的主要范式包括INF、2NF、3NF

43、、BCNF、4NF和5NF等幾種;在工程中3NF、BCNF應(yīng)用得最廣泛,推薦采用3NF作為標(biāo)準。規(guī)范化設(shè)計的優(yōu)點包括可有效地消除數(shù)據(jù)冗余,理順數(shù)據(jù)的從屬關(guān)系,保持數(shù)據(jù)庫的完整性,增強數(shù)據(jù)庫的穩(wěn)定性、伸縮性、適應(yīng)性。通常認為規(guī)范化設(shè)計存在的主要問題是增加了查詢時的連接“庫表”的運算,導(dǎo)致計算機時間、空間、系統(tǒng)及運行效率的損失。在大多數(shù)情況下,這一問題可通過良好的索引設(shè)計等方法得到解決。二、非規(guī)范化設(shè)計非規(guī)范化設(shè)計的基本思想是,現(xiàn)實世界并不總是依從于某一完美的數(shù)學(xué)化的關(guān)系模式。強制性地對事物進行規(guī)范化設(shè)計,形式上顯得簡單化,內(nèi)容上趨于復(fù)雜化,更重要的是導(dǎo)致數(shù)據(jù)庫運行效率的減低。非規(guī)范化要求適當(dāng)?shù)亟?/p>

44、低甚至拋棄關(guān)系模式的范式,不再要求一個表唯一描述一個實體或者實體間的一種聯(lián)系。其主要目的在于提高數(shù)據(jù)庫的運行效率。非規(guī)范化處理的主要技術(shù)包括增加冗余或派生列,對表進行合并、分割或增加重復(fù)表。一般認為,在下列情況下可以考慮進行非規(guī)范化處理:(1)大量頻繁的查詢過程所涉及的表,都需要進行連接的時候;(2)主要的應(yīng)用程序在執(zhí)行時要將表連接起來進行查詢的情況下;(3)對數(shù)據(jù)的計算需要臨時表或進行復(fù)雜的查詢時。非規(guī)范化設(shè)計的主要優(yōu)點是減少了查詢操作所需的連接;減少了外部鍵和索引的數(shù)量;可以預(yù)先進行統(tǒng)計計算,提高了查詢時的響應(yīng)速度。非規(guī)范化存在的主要問題是增加了數(shù)據(jù)冗余;影響數(shù)據(jù)庫的完整性;降低了數(shù)據(jù)更新

45、的速度;增加了存儲表所占用的物理空間。其中最重要的是數(shù)據(jù)庫的完整性問題。這一問題一般可通過建立觸發(fā)器、應(yīng)用事務(wù)邏輯、在適當(dāng)?shù)臅r間間隔運行批命令或存儲過程等方法得到解決。三、規(guī)范化與非規(guī)范化爭論的要點支持非規(guī)范化設(shè)計的一方認為,數(shù)據(jù)庫規(guī)范化的程度越高,其中表的數(shù)量越多,規(guī)范化的程度與表的數(shù)量直接相關(guān);表的數(shù)量越多,表的連接運算也越多;連接運算增多,必然降低數(shù)據(jù)庫執(zhí)行的速度,影響數(shù)據(jù)庫的性能。只有通過非規(guī)范化設(shè)計,顯著減少表的數(shù)量,從而減少對連接運算的依賴,加速數(shù)據(jù)庫執(zhí)行的速度,才能保證數(shù)據(jù)庫性能的正常發(fā)揮。例如目前流行于決策支持系統(tǒng)的非規(guī)范化星型模式就遠勝于應(yīng)用規(guī)范化設(shè)計,是非規(guī)范化設(shè)計的最好范

46、例。非規(guī)范化設(shè)計并不意味著混亂和無視規(guī)則,它也遵循保護信息完整性等軟件工程的基本原則。支持規(guī)范化設(shè)計的一方認為,規(guī)范化與非規(guī)范化只是一個邏輯概念,強調(diào)非規(guī)范化設(shè)計者混淆了邏輯與物理的關(guān)系。數(shù)據(jù)庫的性能是由物理水平?jīng)Q定的,即硬件、數(shù)據(jù)庫的大小和物理設(shè)計、數(shù)據(jù)存儲和訪問的方法、數(shù)據(jù)庫管理系統(tǒng)的優(yōu)化程度、并發(fā)訪問的數(shù)量等;非規(guī)范化設(shè)計并未改變數(shù)據(jù)庫的物理水平,因此不可能提高數(shù)據(jù)庫的性能。規(guī)范化并不只是為了避免數(shù)據(jù)冗余,更重要的是為了確保數(shù)據(jù)庫的完整性。非規(guī)范化設(shè)計的最大問題是難以保證數(shù)據(jù)庫中數(shù)據(jù)的一致性,存在著破壞數(shù)據(jù)的危險。此外,非規(guī)范化使一個表中存在多個實體,不同實體混合在一起強化了數(shù)據(jù)庫的復(fù)雜

47、性,提高了用戶理解的難度,并導(dǎo)致描述問題上的困難,增加了正確響應(yīng)的風(fēng)險。只有規(guī)范化設(shè)計才是解決這些問題的根本途徑。如果不摒棄非規(guī)范化設(shè)計理念,為了獲得所謂的性能的提高而漠視數(shù)據(jù)庫完整性被破壞的風(fēng)險,就無法激勵“開發(fā)商”去研究真正的完全規(guī)范化而高性能的關(guān)系數(shù)據(jù)庫管理系統(tǒng),其后果必然影響數(shù)據(jù)庫的健康發(fā)展。從某種意義上說,數(shù)據(jù)庫的規(guī)范化與非規(guī)范化設(shè)計并不是對立的、非此即彼的關(guān)系。也許其中一方會逐漸消亡,也許二者存在一條中間道路可走。認識事物原本存在一個螺旋式上升的過程。這場爭論尚未結(jié)束,也無法對最終的結(jié)果進行預(yù)測。但可以肯定的是,無論結(jié)果如何,都將對未來數(shù)據(jù)庫的發(fā)展方向產(chǎn)生深遠的影響。2.3. 簡述

48、ACID特性。事務(wù)具有四個特性:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持續(xù)性(Durability)。這個四個特性也簡稱為ACID特性。原子性(Atomicity):事務(wù)是數(shù)據(jù)庫的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做一致性(Consistency):事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫從一個一致性狀態(tài)變到另一個一致性狀態(tài)。因此,當(dāng)數(shù)據(jù)庫只包含事務(wù)成功提交的結(jié)果時,就說數(shù)據(jù)庫處于一致性狀態(tài)之中。如果數(shù)據(jù)庫系統(tǒng)運行中發(fā)生故障,有些事務(wù)尚未完成就被迫中斷了,系統(tǒng)就將此事務(wù)中對數(shù)據(jù)庫的所有已經(jīng)完成的操作全部撤消,滾回到事務(wù)開始時的一致狀態(tài)

49、。隔離性(Isolation):一個事務(wù)的執(zhí)行不能被其他事務(wù)干擾,即一個事務(wù)的內(nèi)部操作及其使用的數(shù)據(jù)對于其他并發(fā)事務(wù)來說是隔離的。并發(fā)執(zhí)行的各個事務(wù)之間不能互相干擾。持續(xù)性(Durability):持續(xù)性也稱永久性(Permanence),指一個事務(wù)一旦提交,它對數(shù)據(jù)庫中數(shù)據(jù)的改變就應(yīng)該是永久性的。接下來的其他操作或故障不應(yīng)該對其執(zhí)行結(jié)果有任何影響。事務(wù)是恢復(fù)和并發(fā)控制的基本單位。保證事務(wù)ACID特性是事務(wù)處理的重要任務(wù)。事務(wù)ACID特性可能遭到破壞的因素有:1. 多個事務(wù)并行運行時,不同事務(wù)的操作交叉執(zhí)行。2. 事務(wù)在運行過程中被強行停止。在第一種情況下,數(shù)據(jù)庫管理系統(tǒng)必須保證多個事務(wù)的交叉

50、運行不影響這些事務(wù)的原子性。在第二種情況下,數(shù)據(jù)庫管理系統(tǒng)必須保證被強行終止的事務(wù)對數(shù)據(jù)庫和其它事務(wù)沒有任何影響。這些就是數(shù)據(jù)庫管理系統(tǒng)中恢復(fù)機制和并發(fā)控制機制的責(zé)任。2.4. 長事務(wù)處理有哪些特性,如何解決?通常DBMS中采用鎖定-修改-釋放的策略以實現(xiàn)其對多用戶并發(fā)操作數(shù)據(jù)庫的控制。但這種策略不很適合用于處理地理數(shù)據(jù)的DBMS。對地理數(shù)據(jù)的編輯工作,可以幾分鐘做完,也可能要拖上幾個月。這種情形即是所謂長事務(wù)處理。ArcSDE8對長事務(wù)處理提供了底層的支持。當(dāng)ArcSDE服務(wù)器的一個實例(instance)第一次啟動時,就建立了數(shù)據(jù)庫缺省的狀態(tài)和版本。用戶可在此基礎(chǔ)上建立公共的或私有的數(shù)據(jù)版

51、本。用戶各自在自己的數(shù)據(jù)版本上工作,因而無須對多個用戶同時訪問的數(shù)據(jù)對象進行鎖定。每個用戶都是在直接對數(shù)據(jù)庫進行操作(編輯、修改),但是ArcSDE為其建立了記錄所有修改痕跡的增量記錄,即版本。用戶在這個數(shù)據(jù)版本進行編輯修改時,并不用關(guān)心其他用戶是不是也在對同一數(shù)據(jù)進行操作。只有當(dāng)用戶完成了他的(長)事務(wù)處理工作時,系統(tǒng)才將其當(dāng)時的數(shù)據(jù)版本合并到原來的數(shù)據(jù)版本中去,沖突也是在此時再加以處理。系統(tǒng)為用戶提供了解決沖突的三種選擇:維持原狀、否決自己的修改或否決別人的修改。長事務(wù)(longtransaction)的應(yīng)急之策事務(wù)(transaction)是一個不可分的工作單位,一個事務(wù)中包含的操作要么

52、全部執(zhí)行,要么全部不執(zhí)行.如果數(shù)據(jù)庫中只包含成功事務(wù)提交的結(jié)果,則數(shù)據(jù)庫的狀態(tài)稱為一致狀態(tài).為了保證數(shù)據(jù)庫一致狀態(tài),Informix-online采取如下機制:對于帶日志的數(shù)據(jù)庫(loggeddatabase),在事務(wù)運行過程中,系統(tǒng)將每個更新操作都記錄到日志文件中,并且包含事務(wù)開始標(biāo)記、事務(wù)結(jié)束標(biāo)記或“事務(wù)回滾”標(biāo)記。如果該事務(wù)在運行過程中出現(xiàn)故障,那么恢復(fù)子系統(tǒng)將對該事務(wù)做撤銷處理(undo)。具體做法就是反向閱讀日志文件,對該事務(wù)的每一個更新操作做反操作。注意,“事務(wù)回滾”作為事務(wù)一部分也要向邏輯日志寫紀錄。當(dāng)一個事務(wù)很大時,有可能在其運行過程中橫跨所有的日志文件。此時所有的邏輯日志文件

53、都包含該活動事務(wù),包含活動事務(wù)的邏輯日志文件是不能被釋放的。如果此事務(wù)還沒有結(jié)束,或者因為出錯需要“回滾”,那么就需要繼續(xù)寫邏輯日志而此時沒有空閑的日志空間可被利用,就會造成了系統(tǒng)癱瘓。Informix管理系統(tǒng)為了避免此類情況發(fā)生定義了一個參數(shù)LTXHWM,一般情況下,設(shè)置它的值為50,即一個事務(wù)橫跨的邏輯日志達到整個邏輯日志模塊的50%就被定義為長事務(wù).系統(tǒng)將強制其“回滾”(rollback).由于存儲空間的有限性,業(yè)務(wù)的快速增長,升級步伐沒有跟上,我們銀行業(yè)務(wù)中長事務(wù)偶爾會在關(guān)鍵時出現(xiàn),如年終結(jié)轉(zhuǎn)、季度結(jié)息、刪除大數(shù)據(jù)表、卸數(shù)重新裝載數(shù)據(jù)庫等操作。解決這類問題最根本的辦法就是增加邏輯日志空

54、間。但有時事出突然,臨時不能解決,又不能影響正常營業(yè),必須當(dāng)時解決問題。權(quán)益之計可以取消數(shù)據(jù)庫的帶日志狀態(tài),改為nologged此狀態(tài)下事務(wù)的更新操作不再往邏輯日志文件中寫,給我們帶來的風(fēng)險是:事務(wù)運行過程中出現(xiàn)故障時,恢復(fù)子系統(tǒng)就不能“回滾"(rollback)該事務(wù),數(shù)據(jù)庫就被置于不一致狀態(tài)。但只要按照一定的步驟來處理。就能把風(fēng)險降到最低或者沒有風(fēng)險。2.5. 數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)有哪幾類,每種類型的特點是什么,關(guān)鍵技術(shù)有哪些?數(shù)據(jù)庫系統(tǒng)分為:集中式數(shù)據(jù)庫系統(tǒng)、客戶/服務(wù)器數(shù)據(jù)庫系統(tǒng)、并行數(shù)據(jù)庫系統(tǒng)、分布式數(shù)據(jù)庫系統(tǒng)、集中式數(shù)據(jù)庫系統(tǒng)的特點:將物理數(shù)據(jù)集中存放在主機上,由主機上的數(shù)

55、據(jù)庫管理系統(tǒng)統(tǒng)一管理整個數(shù)據(jù)庫,用戶可從終端上發(fā)出數(shù)據(jù)操作命令,經(jīng)主機上的數(shù)據(jù)庫管理系統(tǒng)接收處理后,再將所需數(shù)據(jù)送回終端。集中式數(shù)據(jù)庫系統(tǒng)技術(shù)已成熟,數(shù)據(jù)共享能力、恢復(fù)能力較強,但所有數(shù)據(jù)庫的操作均由主機管理,主機負荷較大,一旦主機故障,則導(dǎo)致系統(tǒng)全部癱瘓。分布式數(shù)據(jù)庫系統(tǒng)使各部門經(jīng)常要用的數(shù)據(jù)能夠就近存放,從而分散了工作負荷,可靠性較高,局部發(fā)生故障不至于引起整個系統(tǒng)癱瘓。分布式數(shù)據(jù)庫系統(tǒng)它在地理位置上是分布在一個含有多個數(shù)據(jù)庫管理系統(tǒng)的計算機網(wǎng)絡(luò)中,這些數(shù)據(jù)庫管理系統(tǒng)構(gòu)成分布式數(shù)據(jù)庫管理系統(tǒng),在分布式數(shù)據(jù)庫管理系統(tǒng)中,每個用戶所使用的數(shù)據(jù)可以不存儲在自己使用的計算機上,而是由分布式數(shù)據(jù)庫管

56、理系統(tǒng)在機器之間通過網(wǎng)絡(luò)從其它機器上傳輸過來??蛻?服務(wù)器數(shù)據(jù)庫系統(tǒng)將數(shù)據(jù)處理任務(wù)分為兩個系統(tǒng),客戶機運行數(shù)據(jù)庫應(yīng)用,數(shù)據(jù)庫服務(wù)器運行實際的數(shù)據(jù)庫管理系統(tǒng)(DBMS)。并行數(shù)據(jù)庫系統(tǒng)是指利用多處理器平臺的能力,同時運行多個事務(wù)處理,具有支持分布式操作、多線程處理、聯(lián)機事務(wù)處理和決策處理等能力,從而提高數(shù)據(jù)庫系統(tǒng)的響應(yīng)時間和事務(wù)吞吐量。 并行數(shù)據(jù)庫的體系結(jié)構(gòu):并行數(shù)據(jù)庫的體系結(jié)構(gòu)有3種;共享內(nèi)存、共享磁盤和無共享資源結(jié)構(gòu)。 并行處理技術(shù):并行數(shù)據(jù)庫系統(tǒng)通常采用多進程多線索結(jié)構(gòu),提供以下4種不同粒度的并行性:不同用戶事務(wù)間的并行性;同一事務(wù)內(nèi)不同查詢間的并行性;同一查詢內(nèi)不同操作間的并行性;同一操作內(nèi)的并行性。 線程和進程:在一個事務(wù)處理中,每個用戶的連接都能由操作系統(tǒng)進程或線程由操作系統(tǒng)生成的工作單元分別完成。由于線程使用很少的內(nèi)存和CPU資源,因此線程的效率比“進程”的效率高。2.6. 決策支持類應(yīng)用與OLTP應(yīng)用對于數(shù)據(jù)庫系統(tǒng)的要求有哪些不同,支持前者的關(guān)鍵

溫馨提示

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

評論

0/150

提交評論