華南理工大學數據庫研究生復習題_第1頁
華南理工大學數據庫研究生復習題_第2頁
華南理工大學數據庫研究生復習題_第3頁
華南理工大學數據庫研究生復習題_第4頁
華南理工大學數據庫研究生復習題_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、華南理工大學數據庫(研究生)復習題1. 基于鎖的協(xié)議有幾種?什么是基于時間標簽的協(xié)議?什么是基于驗證的協(xié)議?基于鎖的協(xié)議即兩段鎖協(xié)議,是指指所有事務必須分兩個階段對數據項加鎖和解鎖。具體又分為:基本2PL、保守2PL 、嚴格2PL和 精確2PL基于時間標簽的協(xié)議:事務被施加了一個基于時間戳的順序 要求并發(fā)控制器檢查事務對每個DB對象的讀寫請求看是否能遵循基于時間戳的串行順序。以上這個原則性要求,可具體表達為:對任兩事務Ti和Tj,若Ti先于Tj,即TS(Ti)<TS(Tj),則必須確保在執(zhí)行期間,當事務Ti的動作ai與Tj的動作aj沖突時,總有ai先于aj。如果有某個動作違反了這個串行順

2、序原則,則相關事務就必須被中止撤銷。每個事務開始啟動時,要附上一個時間標記(timestamp)。后啟動事務的標記值大于先啟動事務的標記值。對每個數據庫數據項Q,要設置兩個時間標記:讀時間標記tr,表示成功讀過該數據的所有事務的時間標記的最大值。寫時間標記tw:表示成功寫過該數據的所有事務的時間標記的最大值?;隍炞C的協(xié)議:基于驗證是一種基于優(yōu)化的并發(fā)控制,允許事務不經過封鎖直接訪問數據,并在“適當的時候”檢查事務是否以可串行化的方式運轉(這個“適當時候”主要指事務開始寫DB對象之前的、一個稱被為“有效確認”的、很短的瞬間階段)。事務T的執(zhí)行過程分為三個階段:讀階段:事務正常執(zhí)行所有操作,此時

3、數據修改放在局部臨時變量中而不更新數據庫。檢驗階段:進行有效性檢查,T和已經比它先提交的事務進行比較,發(fā)現是否有沖突。寫階段:如果檢驗階段發(fā)現無沖突,則事務提交,否則卷回T。每個事務T的三個階段對應三個時間標簽:start(T):開始執(zhí)行時間validation(T):開始進入驗證的時間finish(T):完成寫階段的時間注意:(1)不同的事務的三個階段可以交叉執(zhí)行,但三個階段的順序不能改變。(2)事務最終執(zhí)行的調度順序是按照事務的進入驗證的時間標簽來排。2. 處理死鎖的方法有哪些?處理死鎖的兩種基本方法:預防法和檢測法。預防法:TB已對某數據對象加鎖,而TA對該數據對象申請加鎖時,選擇某事務

4、卷回重執(zhí),避免死鎖出現。卷回策略分為等待-死亡策略(若老則等年輕,若年輕則卷回)和擊傷等待策略(若年輕則等老,若老則年輕卷回)檢測法:基于等待圖。每個活躍事務對應圖中的一個節(jié)點,如果事務Ti正等待事務Tj所持有的某個鎖,則有一條從Ti對應節(jié)點指向Tj對應節(jié)點的邊。它可清晰表達事務等待其它事務持有鎖的情況。封鎖管理器通過維護等待圖來檢測死鎖循環(huán)。3. 什么是多版本并發(fā)控制技術?定義:這種技術維護同一數據項的多個版本,把正確的版本分配給事務的讀操作。與其他技術不同的是,這種技術從不拒絕讀操作。目標:事務只讀DB元素時無需等待方法:維護最近被修改對象的多個版本(每個版本都帶有一個寫時間戳),當讀事務

5、T到來時,讓它讀TS(T)之前的最近的版本。4. 什么是數據鎖轉換?什么是鎖升級? 數據鎖轉換(lock conversion):是指在特定的條件下,允許已經對數據項X持有鎖的事務把鎖從一種鎖定狀態(tài)變換到另一種狀態(tài)。Oracle會盡可能在最低級別鎖定(即限制最少的鎖),如果必要,會把這個鎖轉換為一個更受限的級別。 鎖升級(lock escalation):是指處于同一粒度級別上的鎖被數據庫升級為更高粒度級別上的鎖。舉例來說,數據庫系統(tǒng)可以把一個表的100個行級鎖變成一個表級鎖,但可能會鎖住以前沒有鎖定的大量數據。如果數據庫認為鎖是一種稀有資源,而且想避免鎖的開銷,這些數據庫就會頻繁使用鎖升級。

6、Oracle數據庫中不存在鎖升級。鎖升級將會顯著地增加死鎖的可能性5. 什么是延遲更新與即時更新?延遲更新是指所有事務的更新都記錄在局部事務的工作區(qū)(或緩存區(qū)),只有在事務到達提交點后才真正更新磁盤上的數據庫。如果事務在提交前失敗,則它不會修改數據庫。即時更新是指更新一旦發(fā)生就被施加到數據庫,而無需等待到提交時刻。若事務的某些操作達到提交點前被寫入數據庫,恢復時需要UNDO/REDO;如果事務在達到提交點前所有的更新已被寫入數據庫,需要算法UNDO/NO-REDO6. 什么是原位更新和鏡像更新?將修改過的緩沖區(qū)刷新到磁盤,有兩種策略原位更新(in-place update):將緩沖區(qū)寫回磁盤原

7、來的位置,因而會覆蓋被修改數據項在磁盤上的舊值,基于原位更新的恢復必須使用日志。鏡像更新(Shadow update):將緩沖區(qū)寫到磁盤不同的位置,可保存數據項的多個版本。7. 理解用日志進行恢復的過程。一種日志是把寫操作記錄下來:1.當事務Ti開始時,Ti先在日志文件中寫入如下的記錄:<Ti start>2.當Ti對記錄X執(zhí)行寫操作write(X)時,首先寫入日志記錄<Ti, X, V1, V2>, 其中V1是舊值,V2是新值3.當Ti結束最后一條語句時,寫入<Ti commit>的日志記錄4.這里可以先假設日志記錄是不經過緩存直接寫到穩(wěn)定的存儲介質上的。

8、另外一種日志形式中,把上述X取為一個物理塊,則一個日志記錄包含了如下三部分:1. 前像(Before Image):當一個事務更新數據時,所涉及的物理塊在更新前的映像稱為該事務的前像,可以據此使數據庫恢復到更新前的狀態(tài)(撤消更新undo)。2 .后像(After Image)當一個事務更新數據時,所涉及的物理塊在更新后的映像稱為該事務的后像,可以據此使數據庫恢復到更新后的狀態(tài)(重做redo)。3 .事務狀態(tài)成功(committed)/失?。╮ollback,abort);輔助的結構有活動事務表和提交事務表WAL規(guī)則(The Write-Ahead Logging Protocol)1. 先寫日

9、志:更新時先寫日志再把數據寫到磁盤(保證原子性)2.在事務提交前寫事務相關的所有日志記錄到穩(wěn)定存儲介質(保證持久性)日志恢復例子恢復例子:撤消階段(Undo Phase)恢復例子:重做階段(Redo Phrase)8. 什么是潛入/非潛入和強制/非強制?潛入/非潛入和強制/非強制確定了何時把數據頁從高速緩存寫回磁盤潛入(Steal):緩存中的數據可在事務提交前寫回磁盤非潛入(No-Steal): 緩存中的數據不能在事務提交前寫回磁盤強制(Force): 緩存中的數據在事務提交后直接寫回磁盤(強制地)非強制(No-Force): 即使修改過的內存塊沒被寫回磁盤,事務也可以提交(因為重做的信息已記

10、錄在日志中)。9. 理解ARIES恢復管理算法(PDF db04 page30)ARIES簡介:它試圖以概念上相對簡單且系統(tǒng)化的方式,提供一套能確保事務原子性和持性的、具有良好性能的恢復管理算法。它能與絕大多數并發(fā)控制機制很好協(xié)調工作的。這里使用并發(fā)封鎖控制默認時都假定使用基于strict-2PL協(xié)議的封鎖調度器,并假設主要基于頁級封鎖。少數場合,如邏輯日志中,也可能涉及元組級封鎖。算法流程:采用基于“steal/no-force”工作模式。當系統(tǒng)崩潰后重啟時,恢復管理器將被激活,并按以下三個階段進行處理:分析(Analysis):鑒別崩潰發(fā)生時,緩沖區(qū)中的臟頁和當時仍活躍的事務。重做(Red

11、o):重做從日志的適當起點(比如,被修改的最早臟頁對應日志記錄)開始的所有動作,恢復系統(tǒng)到崩潰時的DB狀態(tài)。撤消(Undo):撤消上次崩潰時所有未提交事務的動作效果,使DB只反映已提交事務的影響。(建議看下PDF db04 p33-38的例子 加深理解)10. 性能調整的系統(tǒng)的方法有哪些?優(yōu)化器做些什么?調優(yōu)通常涉及哪些問題?性能調整的系統(tǒng)的方法有: (1)正確地設計應用程序 (2)調整應用程序的SQL代碼(3)調整內存 (4)調整I/O(5)調整爭用和其他問題優(yōu)化器做的事情是:1. SQL 轉換2. 選擇訪問路徑3. 選擇連接方法4. 選擇連接順序調優(yōu)涉及的問題: 如何避免對鎖的爭用,從而增

12、加事務之間的并發(fā)性 如何最小化日志開銷,以及不必要的數據轉儲 如何優(yōu)化緩存區(qū)的大小,以及進程的進度 如何對磁盤、RAM和進程之類的資源進行分配使其利用效率最高 這些問題大都可以通過設置合適的物理DBMS參數、改變設備的配置、修改操作系統(tǒng)的參數 參數、改變設備的配置、修改操作系統(tǒng)的參數和其他類似的動作得以解決。11. 什么情況下進行索引的調優(yōu)?怎么進行索引的調優(yōu)?基于以下幾個原因需要對索引進行調優(yōu):(1)由于缺乏索引,某些查詢的執(zhí)行時間過長(2)某些索引自始自終沒有被使用(3)某些索引建立在被頻繁改變的屬性上 導致系統(tǒng)的 ¾某些索引建立在被頻繁改變的屬性上,導致系統(tǒng)的開銷過大怎樣進行索

13、引調優(yōu): 借助于相關工具,DBA 可從系統(tǒng)獲得關于查詢執(zhí)行過程的信息,通過分析執(zhí)行計劃,可以得到產生上述問題的原因 基于調優(yōu)分析可得到產生上述問題的原因,基于調優(yōu)分析,可能會刪除某些索引,也可能要增加新的索引。 通過重建索引也可以改進系統(tǒng)的性能12. 如何考慮數據庫設計的調優(yōu)? 如果由于需要頻繁使用兩個或多個表中的某些屬性,可能需要逆規(guī)范化現有的表 必要的時候對表進行垂直劃分.(垂直劃分,即按照功能劃分,把數據分別放到不同的數據庫和服務器) 必要的時候對表進行水平劃分.(水平劃分,即把一個表的數據劃分到不同的數據庫,兩個數據庫的表結構一樣。怎么劃分,應該根據一定的規(guī)則,可以根據數據的產生者來做

14、引導,上面的數據是由人產生的,可以根據人的id來劃分數據庫。然后再根據一定的規(guī)則,先獲知數據在哪個數據庫)13. 了解查詢的調優(yōu)的原則和方法?需要進行查詢調優(yōu)的典型情況(1)查詢導致過多的磁盤存取(比如一個精確的匹配查詢要對整個表進行掃描) 整個表進行掃描)(2)查詢計劃表明相關的索引并沒有被使用查詢的調優(yōu)的原則和方法(1)有些DISTINCT 是多余的,在不改變查詢結果的前提下可以省略(2)把多個查詢合并為一個查詢,可避免使用不必要的臨時結果表(3)FROM子句中表的出現順序可能會影響連接操作(4)某些查詢優(yōu)化器在嵌套查詢上的性能要比等價的非嵌套查詢差(5)如果選擇條件通過OR連接,可能優(yōu)化

15、器不會使用任何索引(6把NOT條件轉化為肯定表達式(7)可用連接替換使用IN、=ALL、=ANY、=SOME的嵌入式SELECT塊(8)可以使用多個列上的索引重寫WHERE條件(PDF db05 25-29頁 很多原則,百度出來的結果也有三十多條,這里我主要列了其中一些比較簡單字數少的規(guī)則)14. 結合oracle體系結構,理解oracle調優(yōu)的方法.(通知該題不用整理)15. 什么是數據庫集群?為什么要研究數據庫集群?數據庫集群分類有哪些?數據庫集群技術的實現機理?提高處理速度的辦法?提高可用性的方法?主流產品有哪些?數據庫集群技術現狀及前景。 (1)數據庫集群技術即將多臺服務器聯合起來組成

16、集群來實現綜合性能優(yōu)于單個大型服務器的技術 (2)原因一:伴隨著企業(yè)的成長,在業(yè)務量提高的同時,數據庫的訪問量和數據量快速增長,其處理能力和計算強度也相應增大,使得單一設備根本無法承擔。在此情況下,若扔掉現有設備做大量的硬件升級,勢必造成現有資源的浪費,而且下一次業(yè)務量提升時,又將面臨再一次硬件升級的高額投入。于是,人們希望通過幾個中小型服務器組建集群,實現數據庫的負載均衡及持續(xù)擴展;在需要更高數據庫處理速度時,只要簡單地增加數據庫服務器就可以得到擴展。 原因二:數據庫作為信息系統(tǒng)的核心,起著非常重要的作用,單一設備根本無法保證系統(tǒng)的持續(xù)運行,若發(fā)生系統(tǒng)故障,將嚴重影響系統(tǒng)的正常運行,甚至帶來

17、巨大的經濟損失。于是,人們希望通過組建數據庫集群,實現數據庫的高可用,當某節(jié)點發(fā)生故障時,系統(tǒng)會自動檢測故障并轉移故障節(jié)點的應用,保證數據庫的持續(xù)工作。原因三:企業(yè)的數據庫保存著企業(yè)的重要信息,一些核心數據甚至關系著企業(yè)的命脈,單一設備根本無法保證數據的安全性,一旦發(fā)生丟失,很難再找回來。于是,人們希望通過組建數據庫集群,實現數據集的冗余,通過多份數據來保證安全性。(3)一般來講,數據庫集群軟件根據側重的方向和試圖解決的問題劃分為三大類:負載均衡集群(Load balance cluster,LBC)側重于數據庫的橫向擴展,提升數據庫的性能;高可用性集群(High availability c

18、luster,HAC)側重保證數據庫應用持續(xù)不斷;高安全性集群(High Security cluster,HSC)側重于容災。 按照集群的架構可分為:共享磁盤型,非共享磁盤型。(4) 1 基于共享磁盤的 HA 集群 2 基于數據庫事務日志的復制技術 3基于磁盤的復制技術 4基于 SQL 語句解析的集群技術(5)1提高磁盤速度 2.分散數據的存放 3.對稱多處理器系統(tǒng) 4.處理負載均衡(6) 提高可用性的四種方法 硬件級冗余:讓多處理機同時執(zhí)行同樣的任務用以屏蔽瞬時和永久的硬件錯誤。有兩種實現方法:構造特殊的冗余處理機和使用多個獨立的數據庫服務器。通訊鏈路級冗余:冗余的通訊鏈路可以屏蔽瞬時和永

19、久的通訊鏈路級的錯誤。軟件級冗余:由于現代操作系統(tǒng)和數據庫引擎的高度并發(fā)性,由競爭條件、死鎖、以及時間相關引發(fā)的錯誤占據了非正常停機服務的絕大多數原因。采用多個冗余的運行數據庫進程能屏蔽瞬時和永久的軟件錯誤?;跀祿煲娴募合到y(tǒng)都用多個處理器來實現一個邏輯數據庫,它們只能提供部分軟件冗余,因為每一瞬間每個處理器執(zhí)行的都是不同的任務。數據冗余:1. 被動更新數據集:所有目前的數據復制技術(同步或異步),例如磁盤鏡像、數據庫文件復制以及數據庫廠商自帶的數據庫備份工具都只能產生被動復制數據集。它一般只用于災難恢復。2. 主動更新數據集:這種數據集需要一臺或多臺備份數據庫服務器來管理,它可用于報表

20、生成,數據挖掘,災難恢復甚至低質量負載均衡。分同步和異步兩種。異步主動復制數據集:先把事務處理交給主服務器來完成,然后事務處理再被串行地交給備份服務器以執(zhí)行同樣操作來保證數據一致性。所有的商用數據庫都支持異步主動復制技術。同步主動復制數據集:要求所有并發(fā)事務處理在所有數據庫服務器上同時完成。直接好處就是解決了隊列管理問題,同時通過負載均衡實現更高性能和可用性。RAC, UDB, MSCS 和 ASE是用完全串行化并結合兩階段提交協(xié)議來實現的,設計目標就是為了獲得一份可用于快速災難恢復的數據集。(7)主流產品 1. Oracles Real Application Cluster (RAC) 2

21、. Microsoft SQL Cluster Server (MSCS) 3. IBMs DB2 UDB High Availability Cluster(UDB) 4. Sybase ASE High Availability Cluster (ASE) 5. MySQL High Availability Cluster (MySQL CS) 6. 基于 IO、磁盤或操作系統(tǒng)等非數據庫引擎的集群 (8) 現狀: 一、集群系統(tǒng)成為構建高性能計算系統(tǒng)的主流方式 二、64 位CPU 正在高性能計算系統(tǒng)中日益普及 三、高性能存儲系統(tǒng) 四、互連網絡 (9)前景 集群在商業(yè)應用領域前景廣闊:在傳統(tǒng)

22、的高端商業(yè)應用領域,以前一直是小型機和大型主機的市場。隨著體系結構的主流化、開放和標準化,IA架構服務器的快速發(fā)展以及應用軟件廠商的支持,集群系統(tǒng)越來越多的走進高端商業(yè)應用領域的視野,如數據庫集群應用、中間件集群應用等,應用范圍越來越廣。集群技術在國內的應用也越來越廣,涉及到石油、天氣預報、電信、銀行等多個科學計算和商業(yè)應用領域。以前,這些高端計算機系統(tǒng)幾乎都是國外廠商所研制,國內服務器廠商在這些領域的市場份額幾乎為零。隨著集群技術的不斷成熟,構建高端商業(yè)應用系統(tǒng)的技術門檻已經降低,國內服務器廠商已經有能力構建大型的高性能計算機系統(tǒng)。如浪潮、聯想、曙光等服務器廠商都推出了面向不同行業(yè)領域的高性

23、能集群計算機系統(tǒng)或解決方案,逐漸進入這個以前只有IBM、 HP等國際服務器廠商所占領的市場 19.什么是空間數據庫?為什么要研究空間數據庫?如何表達空間數據?有哪些空間數據庫索引方法?舉例說明如何使用空間數據庫?主流產品有哪些?空間數據庫現狀及前景(1)什么是空間數據庫 空間數據庫系統(tǒng)是描述、存儲和處理空間數據及其屬性數據的數據庫。(2)為什么要研究空間數據庫?傳統(tǒng)數據庫管理空間數據的局限:a. 傳統(tǒng)數據庫管理的是不連續(xù)的、相關性較小的數字和字符;而地理數據是連續(xù)的,具有很強的空間相關性。b. 傳統(tǒng)數據庫管理的實體類型少,并且實體類型之間通常只有簡單固定的空間關系;而地理空間數據庫的實體類型繁

24、多,實體類型之間存在著復雜的空間關系,并且能產生新的關系。c. 傳統(tǒng)數據庫存貯的數據通常為等長記錄的原子數據;而地理空間數據通常是結構化的,其數據項可能很大,很復雜,并且變長記錄。d. 傳統(tǒng)數據庫只操縱和查詢文字和數字信息;而地理空間數據庫中需要有大量的空間操作和查詢,如特征提取、影像分割、影像代數運算、拓撲和相似性查詢等。(3)如何表達空間數據?a. 柵格數據模型空間單元人為劃定成大小相等的正方形網格,有著統(tǒng)一的定位參照系。每個空間單元只記錄其屬性值,而不記錄它的坐標值。b. 矢量數據模型 把連續(xù)的空間按實體集中,每個實體分割成空間單元,記錄描述它們位置的坐標數據。(4)幾種有代表性的空間索

25、引結構:a. kd-樹 是一種檢索k維空間點的二叉樹。b. G-樹 G-樹與柵格索引類似,組成類似B+樹的結構。c. R樹 用于檢索大小非零空間對象,是一種平衡多分樹。有許多種變種,例如R+樹、R*樹等(5)舉例說明如何使用空間數據庫?例如我們要選擇查詢距離南京小于或等于10萬米、人口大于或等于50萬的所有城市的城市名和人口??梢允褂靡韵虏樵冋Z句:SELECT 城市名,人口FROM 城市,江蘇區(qū)域圖WHERE DIST(城市名,南京)<=100000 AND 人口>=500000(6)主流產品有哪些?IBM DB2 Spatial Extender、Informix Spatial

26、 Datablade、Oracle Spatial和SQL Server Spatial Tools。(7)空間數據庫現狀及前景?,F狀:Oracle公司推出的Oracle Spatial,它為空間數據的存儲和索引定義了一套數據庫結構,并通過擴展Oracle PLSQL為空間數據的處理和操縱提供了一系列函數和過程,從而實現對空間數據服務的支持Informix公司推出的Informix ILLustr,對空間數據的處理和操作時通過大DatabaseBlade Spatial Module完成的,它沿襲IUS具有良好的面向對象特征20.主流數據庫對XML做出支持的原因。有哪些主流數據庫對XML做出支

27、持?舉例說明如何使用和對XML數據表達查詢請求?發(fā)展現狀及前景隨著互聯網的迅猛發(fā)展和普及,人們可以通過互聯網從世界各地實時的接收和發(fā)送大量、最新的信息,但在信息交換的過程中存在著一個突出的問題,就是多種多樣的數據格式,給信息的有效使用帶來了障礙。XML的擴展性、簡明性、通用性和跨平臺性,XML的出現更著重于為數據庫統(tǒng)一數據格式,提供了數據表示標準和數據交換標準。數據庫對XML做出支持后,就可將數據庫的成熟的數據處理能力應用來處理XML數據。而數據庫技術也會因此而朝著XML的發(fā)展而不斷進步。DB2、Oracle和SQL Server這三個主流數據庫對XML都做出了支持。以DB2為例:表名clie

28、nts:NameStatuscontactInfoVarchar(30)Varchar(10)xmlcontactInfoxml結構:<client><phone>.</phone><email>.</email></client>查詢status是gold的用戶的email:select xmlquery('$c/Client/email'passing contactinfo as "c")from clientswhere status = 'Gold'發(fā)展現狀及前

29、景還沒寫21.什么是NoSQL? NoSQL的核心思想是什么?現在有哪些NoSQL 產品?其優(yōu)勢和劣勢,現狀及前景。NoSQL:是非關系型數據存儲的廣義定義。NoSQL的核心思想: BASE思想,主要強調基本的可用性,如果你需要高可用性,也就是純粹的高性能,那么就要以一致性或容錯性為犧牲。它包括下面幾個方面:u Basically Availble -基本可用u Soft-state -軟狀態(tài)/柔性事務 u Eventual Consistency -最終一致性 NoSQL產品:Cassandra,Dynamo,BigTable,MongoDB優(yōu)勢:高并發(fā)讀寫;對海量數據的高效率讀寫 ;高擴展

30、性和高可用性 劣勢: NoSQL很難實現數據的完整性。缺乏強有力的技術支持。開源數據庫從出現到用戶接受需要一個漫長的過程。關系型數據庫在設計時更能夠體現實際?,F狀及前景NoSQL現在有很多成熟的產品被廣泛應用在社交網站和電子商務上;NoSQL在某些應用上絕對是趨勢,但是就目前來看肯定還有點問題,畢竟走向成熟總有過程。22.什么是對象-關系數據庫?為什么要研究對象-關系數據庫?面向對象數據庫與對象-關系數據庫一樣嗎?有哪些主流產品支持對象-關系數據庫?對象-關系數據庫一般支持對象的哪些特征?舉例說明如何使用對象-關系數據庫. 1.對象關系數據庫是關系數據庫技術和面向對象方法相結合的產物,它是以關

31、系數據庫和SQL為擴展關系模型,以面向對象的程序設計語言為基礎的新型數據庫模式。 2.傳統(tǒng)的關系數據庫存在種種缺點: 數據類型表達能力差 復雜查詢功能差 支持長事務能力差 環(huán)境應變能力差 而對象關系數據庫很好地解決了這些問題,所以研究它。 3.面向對象關系數據庫和對象-關系數據庫不一樣,面向對象數據庫是數據庫技術和面向對象程序設計方法相結合的產物,與關系數據庫不相關。而對象關系數據庫是基于關系數據庫進行改進的。 4.目前支持對象-關系數據庫的主流產品有:db2,oracle,PostgreSQL對象關系數據庫支持的對象特征:對象標識,封裝,繼承,多態(tài)。使用對象-關系數據庫的實例: 創(chuàng)建類: 父

32、類: CREATE TYPE person AS (name varchar(20), birthyear INTEGER, address varchar(40) MODE DB2SQL子類: CREATE TYPE employee UNDER person AS (salary INTEGER) MODE DB2SQL23.什么是主動數據庫?為什么要研究主動數據庫?它與傳統(tǒng)的關系數據庫有什么不同?如何實現主動數據庫?主動數據庫現狀及前景1.主動數據庫 是指在沒有用戶干預的情況下,能夠主動地對系統(tǒng)內部或外部所產生的事件作出反應的數據庫。主動數據庫的一個突出的思想是讓數據庫系統(tǒng)具有各種主動進

33、行服務的功能,并以種統(tǒng)一而方便的機制來實現各種主動性需求。 2.傳統(tǒng)數據庫管理系統(tǒng)本身都是被動的,即它只能響應和重做用戶要求它們做的事情,而不會靈活地根據數據庫的外部環(huán)境或內部狀態(tài)等情況主動做些什么,數據庫僅作為一種被動的數據存儲倉庫而存在。利用“被動服務”的數據庫不能很好地完成帶有主動性需求的任務。而在實際應用中,主動性需求是大量存在的,這就呼喚著解決該問題的方案。所以,主動數據庫也就因運而生了。3.傳統(tǒng)的數據庫是被動的,被動的數據庫管理系統(tǒng)(DBMS)由用戶或程序驅動,它們僅當用戶或應用程序提出明確的要求時才執(zhí)行事務操作。主動數據庫是相對于傳統(tǒng)數據庫的被動性而言的,主動數據庫相對于傳統(tǒng)數據

34、庫有以下特點:(1)冗錯性:例外或錯誤的主動處理和自動恢復功能(2)實時性:靈活而方便的實時處理能力(3)交互性:更加方便的交互性和靈活的人機交互接口等等。(4)自適應性:它能根據周圍動態(tài)發(fā)生的“事件”或狀態(tài)的變化主動地做些別的什么,以適應相應事件的出現或環(huán)境的變化4.實現動數據庫系統(tǒng)可有以下幾種實現途徑:(1)改造的途徑最簡單的實現方案就是在原有數據庫管理系統(tǒng)的基礎上進行改造。為此只需在原有數據庫管理系統(tǒng)之外增加一個能經常有機會運行的事件監(jiān)視器即可。(2)嵌入主動程序設計語言的途徑這種方法把一般程序設計語言改造成一種主動程序設計語言,數據庫操作嵌入在其中執(zhí)行。(3)重新設計主動數據庫程序設計

35、語言的途徑重新設計主動數據庫程序設計語言來將數據的定義、操作、維護和管理功能與應用程序徹底融合在一起,這自然也是條可取的途徑。這就徹底地解決了所謂“阻抗不匹配”問題。5.現狀及前景主動數據庫的一個突出思想是讓數據庫系統(tǒng)具有各種主動進行服務的功能,并以一種統(tǒng)一而方便的機制來實現各種主動性需求,目前,這種機制主要通過將一些規(guī)則預先嵌入數據庫系統(tǒng)的方法來實現,不過,已經實現這些帶主動功能的數據庫管理系統(tǒng)中仍存在一些缺陷,目前還有一些技術問題等待解決:(1)觸發(fā)事件的指明方式局限性很大(2)這些主動性設施缺乏一般性和統(tǒng)一性(3)缺乏足夠的表達能力(4)缺乏簡單而標準的定義。(5)安全性、可靠性的問題。

36、(6)性能不高24. 什么是多媒體數據庫?為什么要研究多媒體數據庫?有哪些多媒體數據庫的結構?有哪些產品?現狀及前景1什么是多媒體數據庫 MMDB(Multimedia Database):多媒體數據庫是為了實現對多媒體數據的"存儲、存取、檢索和管理"而出現的一種新型數據庫技術,是數據庫技術與多媒體技術結合的產物。不是對現有的數據進行界面上的包裝,而是從多媒體數據與信息本身的特性出發(fā),考慮將其引入到數據庫中之后而帶來的有關問題。簡單地說,多媒體數據庫是按一定方式組織在一起的可以共享的相關多媒體數據(圖形、圖像、音頻、視頻等)的集合。2為什么要研究多媒體數據庫:傳統(tǒng)的數據庫技術只存在字符、數值,而多媒體信息中不僅存在含字符、數值等的文本,同時還有圖形、圖像、動畫、音頻和視頻等,因而就需要一種新的數據庫管理系統(tǒng)對多媒體數據進行管理。多媒體技術數據庫管理系統(tǒng)(

溫馨提示

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

評論

0/150

提交評論