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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

7、來的位置,因而會覆蓋被修改數(shù)據(jù)項在磁盤上的舊值,基于原位更新的恢復必須使用日志。鏡像更新(Shadow update):將緩沖區(qū)寫到磁盤不同的位置,可保存數(shù)據(jù)項的多個版本。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):當一個事務更新數(shù)據(jù)時,所涉及的物理塊在更新前的映像稱為該事務的前像,可以據(jù)此使數(shù)據(jù)庫恢復到更新前的狀態(tài)(撤消更新undo)。2 .后像(After Image)當一個事務更新數(shù)據(jù)時,所涉及的物理塊在更新后的映像稱為該事務的后像,可以據(jù)此使數(shù)據(jù)庫恢復到更新后的狀態(tài)(重做redo)。3 .事務狀態(tài)成功(committed)/失?。╮ollback,abort);輔助的結構有活動事務表和提交事務表WAL規(guī)則(The Write-Ahead Logging Protocol)1. 先寫日

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

10、錄在日志中)。9. 理解ARIES恢復管理算法(PDF db04 page30)ARIES簡介:它試圖以概念上相對簡單且系統(tǒng)化的方式,提供一套能確保事務原子性和持性的、具有良好性能的恢復管理算法。它能與絕大多數(shù)并發(fā)控制機制很好協(xié)調工作的。這里使用并發(fā)封鎖控制默認時都假定使用基于strict-2PL協(xié)議的封鎖調度器,并假設主要基于頁級封鎖。少數(shù)場合,如邏輯日志中,也可能涉及元組級封鎖。算法流程:采用基于“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ā)性 如何最小化日志開銷,以及不必要的數(shù)據(jù)轉儲 如何優(yōu)化緩存區(qū)的大小,以及進程的進度 如何對磁盤、RAM和進程之類的資源進行分配使其利用效率最高 這些問題大都可以通過設置合適的物理DBMS參數(shù)、改變設備的配置、修改操作系統(tǒng)的參數(shù) 參數(shù)、改變設備的配置、修改操作系統(tǒng)的參數(shù)和其他類似的動作得以解決。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. 如何考慮數(shù)據(jù)庫設計的調優(yōu)? 如果由于需要頻繁使用兩個或多個表中的某些屬性,可能需要逆規(guī)范化現(xiàn)有的表 必要的時候對表進行垂直劃分.(垂直劃分,即按照功能劃分,把數(shù)據(jù)分別放到不同的數(shù)據(jù)庫和服務器) 必要的時候對表進行水平劃分.(水平劃分,即把一個表的數(shù)據(jù)劃分到不同的數(shù)據(jù)庫,兩個數(shù)據(jù)庫的表結構一樣。怎么劃分,應該根據(jù)一定的規(guī)則,可以根據(jù)數(shù)據(jù)的產生者來做

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

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

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

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

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

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

20、生成,數(shù)據(jù)挖掘,災難恢復甚至低質量負載均衡。分同步和異步兩種。異步主動復制數(shù)據(jù)集:先把事務處理交給主服務器來完成,然后事務處理再被串行地交給備份服務器以執(zhí)行同樣操作來保證數(shù)據(jù)一致性。所有的商用數(shù)據(jù)庫都支持異步主動復制技術。同步主動復制數(shù)據(jù)集:要求所有并發(fā)事務處理在所有數(shù)據(jù)庫服務器上同時完成。直接好處就是解決了隊列管理問題,同時通過負載均衡實現(xiàn)更高性能和可用性。RAC, UDB, MSCS 和 ASE是用完全串行化并結合兩階段提交協(xié)議來實現(xiàn)的,設計目標就是為了獲得一份可用于快速災難恢復的數(shù)據(jù)集。(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)等非數(shù)據(jù)庫引擎的集群 (8) 現(xiàn)狀: 一、集群系統(tǒng)成為構建高性能計算系統(tǒng)的主流方式 二、64 位CPU 正在高性能計算系統(tǒng)中日益普及 三、高性能存儲系統(tǒng) 四、互連網(wǎng)絡 (9)前景 集群在商業(yè)應用領域前景廣闊:在傳統(tǒng)

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

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

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

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

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

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

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

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

31、系數(shù)據(jù)庫和SQL為擴展關系模型,以面向對象的程序設計語言為基礎的新型數(shù)據(jù)庫模式。 2.傳統(tǒng)的關系數(shù)據(jù)庫存在種種缺點: 數(shù)據(jù)類型表達能力差 復雜查詢功能差 支持長事務能力差 環(huán)境應變能力差 而對象關系數(shù)據(jù)庫很好地解決了這些問題,所以研究它。 3.面向對象關系數(shù)據(jù)庫和對象-關系數(shù)據(jù)庫不一樣,面向對象數(shù)據(jù)庫是數(shù)據(jù)庫技術和面向對象程序設計方法相結合的產物,與關系數(shù)據(jù)庫不相關。而對象關系數(shù)據(jù)庫是基于關系數(shù)據(jù)庫進行改進的。 4.目前支持對象-關系數(shù)據(jù)庫的主流產品有:db2,oracle,PostgreSQL對象關系數(shù)據(jù)庫支持的對象特征:對象標識,封裝,繼承,多態(tài)。使用對象-關系數(shù)據(jù)庫的實例: 創(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.什么是主動數(shù)據(jù)庫?為什么要研究主動數(shù)據(jù)庫?它與傳統(tǒng)的關系數(shù)據(jù)庫有什么不同?如何實現(xiàn)主動數(shù)據(jù)庫?主動數(shù)據(jù)庫現(xiàn)狀及前景1.主動數(shù)據(jù)庫 是指在沒有用戶干預的情況下,能夠主動地對系統(tǒng)內部或外部所產生的事件作出反應的數(shù)據(jù)庫。主動數(shù)據(jù)庫的一個突出的思想是讓數(shù)據(jù)庫系統(tǒng)具有各種主動進

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

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

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

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

溫馨提示

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

評論

0/150

提交評論