版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、分布式數(shù)據(jù)庫系統(tǒng)概述,分布式數(shù)據(jù)庫系統(tǒng)的由來,數(shù)據(jù)庫應(yīng)用需求的拓展 計算機硬件環(huán)境的改變 計算機網(wǎng)絡(luò)與數(shù)字通信的飛速發(fā)展,衛(wèi)星通信,蜂窩通信,計算機局域網(wǎng),廣域網(wǎng),激增的Intranet及Internet得到了廣泛應(yīng)用,分布式數(shù)據(jù)庫系統(tǒng)的發(fā)展,數(shù)據(jù)庫系統(tǒng)與計算機網(wǎng)絡(luò)系統(tǒng)相結(jié)合的產(chǎn)物 20世紀(jì)70年代末進入成長階段 例如:德國斯圖加特大學(xué)研制的POREL系統(tǒng)等 20世紀(jì)90年代進入商品化應(yīng)用階段 一些商品化數(shù)據(jù)庫系統(tǒng)產(chǎn)品如:Oracle,Ingres,Sybase,Informix,IBM DB2 大都提供對分布式數(shù)據(jù)庫的支持,銀行的電子資金轉(zhuǎn)移系統(tǒng)。假定一個分布式系統(tǒng)由三個節(jié)點組成,分別分布在
2、北京,上海,成都 ,其中不同區(qū)域的帳戶記錄保存在各自地區(qū)的數(shù)據(jù)庫中,它們通過通信網(wǎng)絡(luò)連接在一起,構(gòu)成 個統(tǒng)一的分布式數(shù)據(jù)庫。在這樣的系統(tǒng)中任意一個節(jié)點可以存取該節(jié)點的帳戶,稱做局部查詢,同時也可以存取另一個節(jié)點的帳戶,稱做遠(yuǎn)程查詢。 分布式數(shù)據(jù)庫的一個主要的功能就是給用戶提供進行復(fù)雜查詢的操作,使用戶就像在一個單一的數(shù)據(jù)庫上操作一樣。,什么是分布式數(shù)據(jù)庫系統(tǒng)?,物理上分散而邏輯上集中的數(shù)據(jù)庫系統(tǒng) 使用計算機網(wǎng)絡(luò)將物理位置分散而管理和控制又需要不同程度集中的多個邏輯單位連接起來,共同組成一個統(tǒng)一的數(shù)據(jù)庫系統(tǒng) 站點,場地,結(jié)點,特點,物理分布性 分散存儲在多個站點,用戶感覺不到分散 邏輯整體性 分
3、散的數(shù)據(jù)邏輯上構(gòu)成一個整體,可被全局用戶共享 站點自治性 各個站點上的數(shù)據(jù)由本地DBMS管理,具有自治處理能力,完成本站點的應(yīng)用。,其他特點,數(shù)據(jù)分布透明性 集中與自治相結(jié)合的控制機制 存在適當(dāng)?shù)臄?shù)據(jù)冗余度 事務(wù)管理的分布性,分布式數(shù)據(jù)庫系統(tǒng)的示意圖,分布式數(shù)據(jù)庫系統(tǒng)分類,按局部數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)模型分類 同構(gòu)同質(zhì)型 同構(gòu)型DDBS 同構(gòu)異質(zhì)型 異構(gòu)型DDBS,按分布式數(shù)據(jù)庫系統(tǒng)的全局控制系統(tǒng)類型 全局控制集中型DDBS 全局控制分散型DDBS 全局控制可變型DDBS,分布式數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu),數(shù)據(jù)庫分為局部DB和全局DB 數(shù)據(jù)庫管理系統(tǒng)分為局部DBMS和全局DBMS 數(shù)據(jù)庫管理員分為局部
4、DBA和全局DBA,分布式數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu),組成成分,應(yīng)用數(shù)據(jù)庫:應(yīng)用所需要的數(shù)據(jù)的集合 描述數(shù)據(jù)庫:關(guān)于數(shù)據(jù)庫中數(shù)據(jù)結(jié)構(gòu)的定義及全局?jǐn)?shù)據(jù)的分片,分布的描述(數(shù)據(jù)字典,數(shù)據(jù)目錄,元數(shù)據(jù)),數(shù)據(jù)分片,將全局?jǐn)?shù)據(jù)庫進行邏輯分割 分片方法 (1)水平分片 (2)垂直分片 (3)混合分片,關(guān)系S(S#,SNAME,AGE,SEX),定義關(guān)系S的兩個水平分片 DEFINE FRAGMENT SHF1 AS SELECT * FROM S WHERE SEX=M DEFINE FRAGMENT SHF2 AS SELECT * FROM S WHERE SEX=F,關(guān)系S(S#,SNAME,AGE,S
5、EX),定義關(guān)系S的兩個垂直分片 DEFINE FRAGMENT SVF1 AS SELECT S#,AGE,SEX FROM S DEFINE FRAGMENT SVF2 AS SELECT S#,SNAME FROM S 全局關(guān)系的每個屬性至少影射到一個垂直片段中,且每個垂直片段都包含該全局關(guān)系的鍵,關(guān)系S(S#,SNAME,AGE,SEX),定義關(guān)系S的兩個混合分片 DEFINE FRAGMENT SF1 AS SELECT S#,SNAME FROM SHF1 DEFINE FRAGMENT SF2 AS SELECT * FROM SVF1 WHERE SEX,分片遵循規(guī)則,完備性條
6、件 可重構(gòu)條件 不相交條件,數(shù)據(jù)的分布,分布式數(shù)據(jù)庫中的數(shù)據(jù)不是存儲在一個站點的計算機存儲設(shè)備上,而是根據(jù)需要將數(shù)據(jù)劃分成邏輯片段,按某種策略將這些片段分散地存儲在各個站點上。 數(shù)據(jù)分布的策略有: 集中式 分割式 復(fù)制式 混合式,分布式數(shù)據(jù)庫的模式結(jié)構(gòu),四層模式結(jié)構(gòu),全局外層:全局外模式 全局概念層:全局概念模式,分片模式,分配模式 局部概念層:局部概念模式 局部內(nèi)層:局部內(nèi)模式,全局外模式,是全局應(yīng)用的用戶視圖,也稱全局視圖 是從一個由各局部數(shù)據(jù)庫組成的邏輯集合中抽取,即全局外模式是全局概念模式的子集。,全局概念模式,描述分布式數(shù)據(jù)庫中全局?jǐn)?shù)據(jù)的邏輯結(jié)構(gòu) 如果采用關(guān)系數(shù)據(jù)模型,則 包括一組全
7、局關(guān)系的定義(如關(guān)系名、關(guān)系中的屬性、每一屬性的數(shù)據(jù)類型和長度等等) 完整性定義(關(guān)系的主鍵、外鍵及完整性其他約束條件等),分片模式,描述全局?jǐn)?shù)據(jù)的邏輯劃分 描述數(shù)據(jù)分片或定義片段,以及全局關(guān)系與片段之間的映象 這種映象是一對多的。即一個全局關(guān)系可對應(yīng)多個片段,而一個片段只能來自一個全局關(guān)系。,分配模式,根據(jù)選定的數(shù)據(jù)分布策略,定義各片段的物理存放站點。即定義片段映象的類型,確定分布式數(shù)據(jù)庫是冗余的還是非冗余的,以及冗余的程度。 如果一個片段分配在多個站點上,則片段的映象是一對多的,分布式數(shù)據(jù)庫是冗余的。,局部概念模式,一個全局概念模式經(jīng)邏輯劃分成一個或多個邏輯片段,每個邏輯片段被分配在一個或
8、多個站點上,稱為該邏輯片段在某站點上的物理映象或稱物理片段 對每個站點來說,在該站點上全部物理映象的集合稱為該站點上的局部概念模式,局部內(nèi)模式,分布式數(shù)據(jù)庫中關(guān)于物理數(shù)據(jù)庫的描述 描述的內(nèi)容不僅包含只局部于本站點的數(shù)據(jù)的存儲描述,還包括全局?jǐn)?shù)據(jù)在本站點的存儲描述,DDBMS的功能結(jié)構(gòu),除提供集中式DBMS提供的功能還有: 數(shù)據(jù)跟蹤 分布式查詢處理 分布式事務(wù)管理 復(fù)制數(shù)據(jù)的管理 安全性 分布式目錄管理,DDBMS的功能模塊,查詢處理模塊 完整性處理模塊 調(diào)度處理模塊 可靠性處理模塊,分布式數(shù)據(jù)庫管理系統(tǒng)的一般功能結(jié)構(gòu),介紹DDBMS的一種參考模型,主要成分是處理器和模式 處理器 模式,參考模型
9、,用戶處理器,它把數(shù)據(jù)操縱語言中的用戶命令,翻譯成為規(guī)范化命令 它把來自數(shù)據(jù)處理器的數(shù)據(jù),翻譯成用戶理解的格式,用戶處理器的組成,用戶處理器提供的功能,數(shù)據(jù)模型獨立性 語義完整性約束,數(shù)據(jù)處理器,數(shù)據(jù)處理器負(fù)責(zé)存取數(shù)據(jù)庫的數(shù)據(jù),它主要包括規(guī)范化命令翻譯器、規(guī)范化結(jié)果格式器和運行時支持處理器,數(shù)據(jù)處理器的組成,數(shù)據(jù)處理器提供的功能,數(shù)據(jù)處理器支持集中式和分布式DBMS共同要求: 程序與數(shù)據(jù)的獨立性 并發(fā)獨立性 事務(wù)的原子性,運行時支持處理器,模式層次,數(shù)據(jù)庫的三級模式 一個或幾個外部模式:每個外部模式包含了數(shù)據(jù)庫的一部分的描述,供用戶使用 概念模式:包含了整個數(shù)據(jù)庫的邏輯描述,供數(shù)據(jù)庫管理員和用
10、戶使用 內(nèi)部模式:包含了物理數(shù)據(jù)結(jié)構(gòu)的描述,表示物理數(shù)據(jù)的存放位置和格式 數(shù)據(jù)庫管理員使用內(nèi)部模式來調(diào)整數(shù)據(jù)庫以提高其執(zhí)行效率 這三個模式以及它們之間的映射,指導(dǎo)著各個處理器執(zhí)行各自的任務(wù),全局?jǐn)?shù)據(jù)庫控制及通信子系統(tǒng),負(fù)責(zé)通信和控制分布式的執(zhí)行 分解器(分布式執(zhí)行策略) 合并器 分布式執(zhí)行監(jiān)視器(事務(wù)原子性,復(fù)制獨立性,分布式并發(fā)控制) 通信子系統(tǒng) 本地執(zhí)行監(jiān)視器,全局?jǐn)?shù)據(jù)庫控制及通信子系統(tǒng)的組成,本地模式 全局模式,要與其他站點共享數(shù)據(jù)的每個站點具有一個或幾個本地模式。本地模式描述了站點中可由某類用戶訪問的數(shù)據(jù)子集,每個站點的DBA通過建立本地模式來控制誰可以訪問本地的數(shù)據(jù)。不同類型的用戶使
11、用同一數(shù)據(jù)的不同子集可以用不同的本地模式來描述。 允許用戶訪問數(shù)據(jù)的每個站點包含一個或多個全局模式。全局模式描述了用戶可從一個或多個站點訪問的數(shù)據(jù)。在一個站點中,可以存在幾個不同的全局模式,每個對應(yīng)于一類用戶 這種方法非常靈活,因為它可以允許一類用戶訪問全部數(shù)據(jù),也可以允許幾類用戶訪問數(shù)據(jù)的不同子集。 還提供了高度的可靠性,這就是說,如果某個站點出了故障只有該站點的本地模式所描述的數(shù)據(jù)不可使用,不會影響其他站點的繼續(xù)使用。,全局模式與本地模式,分布式數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)的獨立性,用戶或用戶程序使用分布式數(shù)據(jù)庫,不必關(guān)心全局?jǐn)?shù)據(jù)的分布情況包括全局?jǐn)?shù)據(jù)的邏輯分片情況、邏輯片段的站點位置分配情況。也稱為分
12、布透明性。 分布透明性包括三個層次: 分片透明性 位置透明性 局部數(shù)據(jù)模型透明性,三個層次的比較,三個層次的比較,分布式數(shù)據(jù)庫簡單查詢與分布透明性,例子:全局關(guān)系SUPPLIER(SNO,SNAME,CITY)被劃分為兩個邏輯片段1和2,,1存放在站點1上。片斷2有一個副本,分別存放在站點2和站點3上?,F(xiàn)編寫一個名為SUPQUIRY的簡單查詢應(yīng)用程序它將從終端接受一個供應(yīng)商號,查詢該供應(yīng)商號相應(yīng)的供應(yīng)商名,將它顯示在屏幕上,分片透明性不同級別下的只讀應(yīng)用I,Read(teminal,$SNO); Select SNAME into $SNAME From SUPQUIRY Where SNO=
13、 $SNO; Write(terminal, $SNAME ); (a)分段透明性(級別1),站點,站點,站點,分片透明性不同級別下的只讀應(yīng)用II,Read(teminal,$SNO); Select SNAME into $SNAME From SUPQUIRY1 Where SNO= $SNO; If not #FOUND then Select SNAME into $SNAME From SUPQUIRY2 Where SNO= $SNO; Write(terminal, $SNAME ); (b)位置透明性(級別),站點,站點,站點,分片透明性不同級別下的只讀應(yīng)用III,Read(t
14、eminal,$SNO); Select SNAME into $SNAME From SUPQUIRY1 AT SITE1 Where SNO= $SNO; If not #FOUND then Select SNAME into $SNAME From SUPQUIRY2 AT SITE3 Where SNO= $SNO; Write(terminal, $SNAME ); (c) 本地映射透明性(級別),站點,站點,分片透明性不同級別下的只讀應(yīng)用IV,問題:假定DDBMS不提供任何級別的分布透明性,用戶如何編寫應(yīng)用程序SUPQUIRY呢? 設(shè)站點1上的本地DBMS為IMS,站點3上的本地
15、DBMS為codasy1。此時,應(yīng)用程序員必須編寫實現(xiàn)所需功能的IMS程序和codasy1程序,并把這些輔助程序安裝在相應(yīng)的站點上如下圖所示,分片透明性不同級別下的只讀應(yīng)用IV,(d)無分布透明性,分布式數(shù)據(jù)庫復(fù)雜查詢與分布透明性,例子:考慮應(yīng)用SUPOFPART,該應(yīng)用根據(jù)用戶輸入的零件號查詢供應(yīng)該零件的供應(yīng)商姓名,若全局關(guān)系SUPPLIER(SNO,SNAME,SADDR)被劃分為兩個邏輯片段S1和S,全局關(guān)系SUPPLIER(SNO,NO,QUANTITY)也被劃分為兩個邏輯片段SP1和SP2.它們的站點位置分配如下: S1存放在站點L1上, S存放在站點L上, SP1存放在站點L上,
16、SP存放在站點L上 這里假設(shè):每種零件僅由一家供應(yīng)商供給;SUPPLY的分片模式基于這樣的事實:由S1中供應(yīng)商供應(yīng)的零件號在SP1中,由S中供應(yīng)的零件號在SP中,最高級別:分片透明性,: Read(terminal,$pno); Select sname into $sname from supplier s,supply sp where s.no=sp.no and sp.pno=$pno ; Write(terminal,$sname);,2.中等級別:位置透明性,: Read(terminal,$pno); Select sname into $sname from s1,sp1 wh
17、ere s1.no=sp1.no and sp1.pno=$pno ; If not #found then Select sname into $sname from s2,sp2 where s2.no=sp2.no and sp2.pno=$pno ; Write(terminal,$sname);,3.最低級別:局部數(shù)據(jù)模型透明性,: Read(terminal,$pno); Select sno into $sno from sp1 at l3 where pno=$pno; If #found then begin send $sno from l3 to l1; select s
18、name into $sname from s1 at l1 where sno=$sno; end Else begin Select sno into $sno from sp2 at l4 where pno=$pno; send $sno from l4 to l2; select sname into $sname from s2 at l2 where sno=$sno; end Write(terminal,$sname);,分布式數(shù)據(jù)庫更新應(yīng)用與分布透明性,注意:查詢操作只對數(shù)據(jù)片段或任一副本進行而更新操作必須最數(shù)據(jù)片段及其全部副本進行 位置透明性對更新應(yīng)用很重要若DDBMS不
19、提供位置透明性,就由應(yīng)用程序來完成片段及全部副本的更新 當(dāng)更新屬性恰好是作為分片模式定義中使用的屬性值時,可能引起元組從一個片段移到另一個片段,這會產(chǎn)生相當(dāng)復(fù)雜的影響,例子,全局關(guān)系EMP(ENO,ENAME,DNO,SAL,TAX,MGRNO)經(jīng)混合分片:先按DNO的值小于10來進行水平分片,分為兩個片段Ea和b,后又經(jīng)垂直分片,劃分為如下四個邏輯片段: EMP1=Ea(ENO,ENAME,SAL,TAX) EMP2=Ea (ENO,MGRNO,DNO) EMP3=Eb(ENO,ENAME,DNO) EMP4=Eb (ENO,SAL,TAX,MGRNO),全局關(guān)系EMP的分片樹,EMP,h,
20、Ea,Eb,V,V,EMP1,EMP2,EMP3,EMP4,例子-更新操作,對EMP2片段做如下更新:將ENO=100的元組中屬性DNO=3改變?yōu)?5.這個更新結(jié)果將上邊EMP1和EMP2片段的元組ENO=100重新組合后,移到了下邊EMP3和EMP4片段中如下圖所示,圖表,EMP1,EMP,更新前,更新后,EMP,EMP4,級別1:分片透明性,Update emp set dno=15 where eno=100 應(yīng)用程序如同數(shù)據(jù)庫不是分布的那樣來執(zhí)行更新操作,編程人員不必知道被更新的屬性是否是分片模式的定義中使用的屬性,級別:位置透明性,Select ename,sal,tax,into
21、$ename,$sal,$tax from emp1 where eno=100; Select mgrno into $mgrno from emp2 where eno=100; Insert into emp3 (eno,ename,dno)values(100,$ename,15); Insert into emp4(eno,sal,tax,mgrno)values(100, $sal,$tax,$mgrno); Delete emp1 where eno=100; Delete emp2 where eno=100;,級別:本地映象透明性,若EMP的各片段的分布如下: EMP1:站點L1和站點5; EMP2:站點L2和站點6 EMP3:站點L3和站點7; EMP1:站點L4和站點8 編程如下: Select ename,sal,tax,into $ename,$sal,$tax from emp1 at l1 where eno=100; Select mgrno into $m
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 衛(wèi)生院出車申請制度
- 衛(wèi)生院首診負(fù)責(zé)制制度
- 學(xué)校愛國衛(wèi)生眾參與制度
- 校園衛(wèi)生制度格
- 文化室院內(nèi)衛(wèi)生管理制度
- 鄉(xiāng)鎮(zhèn)衛(wèi)生院公車使用制度
- 衛(wèi)生健康與管理制度
- 讓5項基本醫(yī)療衛(wèi)生制度
- 鄉(xiāng)鎮(zhèn)衛(wèi)生院藥物制度
- 學(xué)生辦公室衛(wèi)生評比制度
- 云南省2026年普通高中學(xué)業(yè)水平選擇性考試調(diào)研測試歷史試題(含答案詳解)
- 廣東省花都亞熱帶型巖溶地區(qū)地基處理與樁基礎(chǔ)施工技術(shù):難題破解與方案優(yōu)化
- 家里辦公制度規(guī)范
- 基于知識圖譜的高校學(xué)生崗位智能匹配平臺設(shè)計研究
- GB 4053.3-2025固定式金屬梯及平臺安全要求第3部分:工業(yè)防護欄桿及平臺
- 環(huán)氧拋砂防滑坡道施工組織設(shè)計
- 2025年下屬輔導(dǎo)技巧課件2025年
- 2026中央廣播電視總臺招聘124人參考筆試題庫及答案解析
- JG/T 3030-1995建筑裝飾用不銹鋼焊接管材
- GA 1016-2012槍支(彈藥)庫室風(fēng)險等級劃分與安全防范要求
- 學(xué)生傷害事故處理辦法及案例分析
評論
0/150
提交評論