數(shù)據(jù)庫應(yīng)用第1章Introdu
《數(shù)據(jù)庫應(yīng)用第1章Introdu》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫應(yīng)用第1章Introdu(132頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、School of Transportation Science and Engineering, Harbin Institute of Technology 數(shù)據(jù)庫原理及其在土木工程中的應(yīng)用 主要教材:薩師煊、王珊編著,數(shù)據(jù)庫系統(tǒng)概論(第三版),高等教育出版社,2000參考教材:李建中, 王珊. 數(shù)據(jù)庫基本原理. 電子工業(yè)出版社, 2008.Avi Silberschatz, etc. Database System Concepts, 6th Edition. McGraw-Hill, 2003.Hector Garcia-Molina, Jeffrey D.Ullman, Jennif
2、er Widom. Database Systems: The Complete Book (2nd Edition). Prentice Hall, 2010. School of Transportation Science and Engineering, HIT 2 教材 1.緒論2.關(guān)系模型3.數(shù)據(jù)庫設(shè)計4. SQL5. E-R設(shè)計6.數(shù)據(jù)庫系統(tǒng)原理(查詢優(yōu)化、并發(fā)控制、災(zāi)難恢復(fù))7.實例 School of Transportation Science and Engineering, HIT 3 數(shù)據(jù)庫系統(tǒng)與應(yīng)用 1.1 概述1.2 數(shù)據(jù)模型1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.4 數(shù)據(jù)庫系
3、統(tǒng)外部的體系結(jié)構(gòu)1.5 數(shù)據(jù)庫系統(tǒng)的組成1.6 數(shù)據(jù)庫技術(shù)的研究領(lǐng)域1.7 數(shù)據(jù)庫技術(shù)的進展1.8 新一代數(shù)據(jù)庫 School of Transportation Science and Engineering, HIT 4 第一章 緒論 1.1.1 數(shù)據(jù)庫的地位1.1.2 五個基本概念1.1.3 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展 School of Transportation Science and Engineering, HIT 5 1.1 概述 數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計算機科學(xué)的重要分支。數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進了計算機應(yīng)用向各行各業(yè)
4、的滲透。數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標(biāo)志。1.1.1數(shù)據(jù)庫的地位 School of Transportation Science and Engineering, HIT 6 1.數(shù)據(jù)(Data)2.數(shù)據(jù)庫(Database)3.數(shù)據(jù)庫管理系統(tǒng)(DBMS)4.數(shù)據(jù)庫系統(tǒng)(DBS)5.數(shù)據(jù)庫管理員(DBA) School of Transportation Science and Engineering, HIT 7 1.1.2 五個基本概念 數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲的基本對象數(shù)據(jù)的定義描述事物的符號記錄數(shù)據(jù)的種類文字、圖形、圖象、聲音
5、數(shù)據(jù)的特點數(shù)據(jù)與其語義是不可分的一、數(shù)據(jù) School of Transportation Science and Engineering, HIT 8 學(xué)生檔案中的學(xué)生記錄(李明,男,1992,江蘇,交通信息系,2010)數(shù)據(jù)的形式不能完全表達其內(nèi)容數(shù)據(jù)的解釋語義:學(xué)生姓名、性別、出生年月、籍貫、所在系別、入學(xué)時間解釋:李明是個大學(xué)生,1992年出生,江蘇人,2010年考入交通信息系 School of Transportation Science and Engineering, HIT 9 示例 二、數(shù)據(jù)庫學(xué)生登記表 School of Transportation Science an
6、d Engineering, HIT 10學(xué)號姓名年齡性別所在系年級10004王小明19女信息201010006黃大鵬20男橋梁201010008張文斌18女道路2010 數(shù)據(jù)庫是數(shù)據(jù)管理的工具。數(shù)據(jù)管理經(jīng)歷了從手工管理階段、文件管理階段到數(shù)據(jù)庫管理階段的變遷。數(shù)據(jù)庫是長期儲存在計算機內(nèi)的、有組織的、可共享的、互相關(guān)聯(lián)的、持久的數(shù)據(jù)的集合。 11 二、數(shù)據(jù)庫管理數(shù)據(jù)的目的人們收集并抽取出一個應(yīng)用所需要的大量數(shù)據(jù)之后,應(yīng)將其保存起來以供進一步加 工處理,進一步抽取有用信息。 數(shù)據(jù)庫應(yīng)具備的特征/定義:(1)數(shù)據(jù)庫是相互關(guān)聯(lián)的數(shù)據(jù)的集合數(shù)據(jù)庫中的數(shù)據(jù)不是孤立的,數(shù)據(jù)與數(shù)據(jù)之間是相互關(guān)聯(lián)的,在數(shù)據(jù)庫
7、中不僅要能夠表示數(shù)據(jù)本身,還要能夠表示數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系。如:學(xué)籍管理學(xué)生、課程兩類數(shù)據(jù)。(2)用綜合的方法組織數(shù)據(jù)順序、索引、聚簇Cluster School of Transportation Science and Engineering, HIT 12 二、數(shù)據(jù)庫 (3)具有較小的數(shù)據(jù)冗余,可供多個用戶共享低冗余與數(shù)據(jù)共享:在數(shù)據(jù)庫技術(shù)之前,數(shù)據(jù)文件都是獨立的,任何數(shù)據(jù)文件都必須含有滿足某一應(yīng)用的全部數(shù)據(jù)。例:人事部門有一個職工文件: School of Transportation Science and Engineering, HIT 13 二、數(shù)據(jù)庫職工基本情況有關(guān)人事管理的
8、數(shù)據(jù) 教育部門也有一個職工文件:職工基本情況有關(guān)教育培訓(xùn)的數(shù)據(jù) 其中,“職工基本情況”重復(fù)存儲,浪費空間。可共享存儲類似這樣的共同數(shù)據(jù),以降低數(shù)據(jù)的冗余度 (4)具有較高的數(shù)據(jù)獨立性數(shù)據(jù)獨立性:包括物理獨立性、數(shù)據(jù)獨立性。指數(shù)據(jù)的組織和存儲方法與應(yīng)用程序互不依賴,彼此獨立的特性??山档蛻?yīng)用程序的開發(fā)代價和維護代價。 School of Transportation Science and Engineering, HIT 14 二、數(shù)據(jù)庫在數(shù)據(jù)庫技術(shù)形成之前,數(shù)據(jù)文件的組織方式和應(yīng)用程序是密切相關(guān)的。數(shù)據(jù)結(jié)構(gòu)改變,相應(yīng)的應(yīng)用程序也必須隨之修改 =開發(fā)/維護代價 (5)具有安全控制機制,能夠保證
9、數(shù)據(jù)的安全、可靠數(shù)據(jù)庫要有一套安全機制,以便有效地防止數(shù)據(jù)庫中的數(shù)據(jù)被非法使用/修改;數(shù)據(jù)庫還要有一套備份/恢復(fù)機制,以保證當(dāng)數(shù)據(jù)遭到破壞時將數(shù)據(jù)立刻完全恢復(fù) =繼續(xù)、可靠地運行。 School of Transportation Science and Engineering, HIT 15 二、數(shù)據(jù)庫 (6)允許并發(fā)地使用數(shù)據(jù)庫,能有效、及時地處理數(shù)據(jù),并能保證數(shù)據(jù)的一致性和完整性一致性:數(shù)據(jù)庫中的數(shù)據(jù)是共享的,并且允許多個用戶同時使用相同的數(shù)據(jù)。這就要求數(shù)據(jù)庫能夠協(xié)議一致,保證各個用戶之間對數(shù)據(jù)的操作不發(fā)生矛盾和沖突。正確性、完整性: 保證數(shù)據(jù)正確的特性數(shù)據(jù)完整性可通過建立一些約束條件保
10、證數(shù)據(jù)庫中的數(shù)據(jù)是正確的。如:學(xué)生年齡20(2或100則錯誤) School of Transportation Science and Engineering, HIT 16 二、數(shù)據(jù)庫 什么是數(shù)據(jù)庫管理系統(tǒng)(Database Management System, DBMS)?DBMS是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,數(shù)據(jù)庫的功能/特性不是數(shù)據(jù)庫中的數(shù)據(jù)固有的,是靠管理或支持數(shù)據(jù)庫的系統(tǒng)軟件DBMS提供的。DBMS任務(wù):對數(shù)據(jù)資源進行管理,使之能為多個用戶共享。保證數(shù)據(jù)的安全性/可靠性/完整性/一致性/獨立性。 School of Transportation Science an
11、d Engineering, HIT 17 三、數(shù)據(jù)庫管理系統(tǒng) 數(shù)據(jù)庫定義功能:提供數(shù)據(jù)定義語言(DDL)定義數(shù)據(jù)庫結(jié)構(gòu)和存儲結(jié)構(gòu);定義數(shù)據(jù)庫中數(shù)據(jù)之間的聯(lián)系;定義數(shù)據(jù)完整性約束條件和保證完整性的觸發(fā)機制等。數(shù)據(jù)庫操縱功能:提供數(shù)據(jù)操縱語言(DML)完成對數(shù)據(jù)庫中數(shù)據(jù)的操作:插入、刪除、修改;重新組織數(shù)據(jù)庫的存儲結(jié)構(gòu);完成對數(shù)據(jù)庫的備份/恢復(fù)等。 School of Transportation Science and Engineering, HIT 18 DBMS主要功能 數(shù)據(jù)庫查詢功能以各種方式提供靈活的查詢功能,以便方便使用數(shù)據(jù)。數(shù)據(jù)庫控制功能完成對數(shù)據(jù)庫的安全性控制/完整性控制/并發(fā)
12、控制。數(shù)據(jù)庫通信功能在分布式數(shù)據(jù)庫或提供網(wǎng)絡(luò)操作功能的數(shù)據(jù)庫中還必須提供通信功能。 School of Transportation Science and Engineering, HIT 19 DBMS主要功能 什么是數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(Database System,簡稱DBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。在不引起混淆的情況下常常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。它主要包括:1.以數(shù)據(jù)為主體的數(shù)據(jù)庫。2.管理數(shù)據(jù)庫的系統(tǒng)軟件DBMS。3.支持數(shù)據(jù)庫系統(tǒng)的計算機硬件環(huán)境和操作系統(tǒng)環(huán)境。4.管理和使用數(shù)據(jù)庫系統(tǒng)的人,特別是DBA。5.方便使用和管理系統(tǒng)的技術(shù)說明書和使用說明書。 Sc
13、hool of Transportation Science and Engineering, HIT 20 四、數(shù)據(jù)庫系統(tǒng) 21 數(shù)據(jù)庫系統(tǒng)示意圖數(shù)據(jù)庫最終用戶應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具DBMS操作系統(tǒng)數(shù)據(jù)庫管理員DBA應(yīng)用程序員 數(shù)據(jù)庫管理員 (DataBase Administrator,DBA)從事數(shù)據(jù)庫管理工作的人員,負責(zé)數(shù)據(jù)庫的全面管理工作(維護、設(shè)計)數(shù)據(jù)庫的使用會改變企事業(yè)單位的管理方式,但因為要把眾多部門或用戶的數(shù)據(jù)放在同一數(shù)據(jù)庫中,會帶來一些問題,如:數(shù)據(jù)沖突;越權(quán)使用數(shù)據(jù);重要數(shù)據(jù)丟失 因此需要管理部門:負責(zé)和數(shù)據(jù)管理有關(guān)的工作。 School of Transportatio
14、n Science and Engineering, HIT 22 五、數(shù)據(jù)庫管理員 注: DBA工作繁重、重要、關(guān)鍵:除了要掌握一定的數(shù)據(jù)處理、數(shù)據(jù)庫技術(shù)之外,還應(yīng)有處理好人際關(guān)系的素質(zhì)、能力。在一個企事業(yè)中,特別是一個規(guī)模較大的數(shù)據(jù)庫,不能指望一兩個人來完成管理工作,所以DBA常指數(shù)據(jù)庫管理部門。開發(fā)DBS時,一開始就應(yīng)設(shè)置DBA的職位或相應(yīng)的機構(gòu),以明確DBA職責(zé)、權(quán)限。 School of Transportation Science and Engineering, HIT 23 五、數(shù)據(jù)庫管理員 School of Transportation Science and Engine
15、ering, HIT 24 1.1.3 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展人工管理階段數(shù)據(jù)庫系統(tǒng)階段文件系統(tǒng)階段 在50年代中期以前計算機采用的是批處理方式,主要用于科學(xué)計算產(chǎn)生的背景應(yīng)用需求科學(xué)計算硬件:無直接存取存儲設(shè)備軟件:沒有操作系統(tǒng)處理方式:批處理 School of Transportation Science and Engineering, HIT 25 一、人工管理階段 特點數(shù)據(jù)的管理者:用戶(程序員),數(shù)據(jù)不保存。數(shù)據(jù)面向的對象:某一應(yīng)用程序 數(shù)據(jù)的共享程度:無共享、冗余度極大數(shù)據(jù)的獨立性:不獨立,完全依賴于程序數(shù)據(jù)的結(jié)構(gòu)化:無結(jié)構(gòu)數(shù)據(jù)控制能力:應(yīng)用程序自己控制 School of
16、Transportation Science and Engineering, HIT 26 一、人工管理階段 應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系 School of Transportation Science and Engineering, HIT 27 一、人工管理階段應(yīng)用程序數(shù)據(jù)集應(yīng)用程序數(shù)據(jù)集應(yīng)用程序數(shù)據(jù)集n. . 50年代后期60年代中期特點:計算機技術(shù)有了很大的發(fā)展,開始廣泛應(yīng)用于信息處理存儲設(shè)備有了磁盤、磁鼓等可直接存取的設(shè)備計算機有了操作系統(tǒng),包括文件管理系統(tǒng),用戶可將數(shù) 據(jù)組織成文件體交給系統(tǒng)進行自動管理。數(shù)據(jù)可長期保存在磁盤等存儲設(shè)備上 程序和數(shù)據(jù)有了一定的獨立性,且文件有多種形
17、式的組織結(jié)構(gòu):順序、鏈接、索引 School of Transportation Science and Engineering, HIT 28 二、文件系統(tǒng)階段 缺點:(1)數(shù)據(jù)冗余較大每個文件都是為特定的用途設(shè)計的,因此,同樣數(shù)據(jù)在多個文件中重復(fù)存儲只能提供以文件為單位的數(shù)據(jù)共享。(2)程序和數(shù)據(jù)之間的獨立性較差應(yīng)用程序依賴于文件的存儲結(jié)構(gòu),修改文件存儲結(jié)構(gòu)就要修改程序 School of Transportation Science and Engineering, HIT 29 二、文件系統(tǒng)階段 缺點:(3)對數(shù)據(jù)的表示和處理能力較差文件的結(jié)構(gòu)和操作比較單一,不夠豐富。(4)數(shù)據(jù)不一致
18、由(1)造成,更新時會造成同一數(shù)據(jù)在不同文件中的不一致。(5)數(shù)據(jù)聯(lián)系弱文件與文件之間是獨立的,文件之間的聯(lián)系必須通過程序來構(gòu)造。盡管如此,文件系統(tǒng)在數(shù)據(jù)管理技術(shù)的發(fā)展中仍起著很重要的作用。 School of Transportation Science and Engineering, HIT 30 二、文件系統(tǒng)階段 應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系 School of Transportation Science and Engineering, HIT 31 二、文件系統(tǒng)階段應(yīng)用程序文件應(yīng)用程序文件2 應(yīng)用程序文件n存取方法. . 從60年代后期開始,計算機用于信息處理的規(guī)模越來越大,對數(shù)據(jù)管
19、理的技術(shù)提出了更高的要求,此時開始提出計算機網(wǎng)絡(luò)系統(tǒng)和分布式系統(tǒng),出現(xiàn)了大容量的磁盤,文件系統(tǒng)已不再能勝任多用戶環(huán)境下的數(shù)據(jù)共享和處理。一個新的數(shù)據(jù)庫管理技術(shù)DBMS由此而形成,它對所有用戶數(shù)據(jù)實行統(tǒng)一的、集中的管理、操作和維護。 School of Transportation Science and Engineering, HIT 32 三、數(shù)據(jù)庫系統(tǒng)階段 特點數(shù)據(jù)的管理者:DBMS數(shù)據(jù)面向的對象:現(xiàn)實世界數(shù)據(jù)的共享程度:高共享性數(shù)據(jù)的獨立性:高度的物理獨立性和一定的邏輯獨立性數(shù)據(jù)的結(jié)構(gòu)化:整體結(jié)構(gòu)化數(shù)據(jù)控制能力:由DBMS統(tǒng)一管理和控制 School of Transportation
20、 Science and Engineering, HIT 33 三、數(shù)據(jù)庫系統(tǒng)階段 應(yīng)用程序與數(shù)據(jù)的對應(yīng)關(guān)系 School of Transportation Science and Engineering, HIT 34 三、數(shù)據(jù)庫系統(tǒng)階段DBMS應(yīng)用程序1應(yīng)用程序2數(shù)據(jù)庫 降低數(shù)據(jù)的冗余度,節(jié)省存儲空間避免數(shù)據(jù)間的不一致性使系統(tǒng)易于擴充 School of Transportation Science and Engineering, HIT 35 數(shù)據(jù)的高共享性的好處 物理獨立性指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當(dāng)數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變。邏輯獨立
21、性指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。 School of Transportation Science and Engineering, HIT 36 數(shù)據(jù)的獨立性 整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一。數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型描述,無需程序定義和解釋。數(shù)據(jù)可以變長。數(shù)據(jù)的最小存取單位是數(shù)據(jù)項。 School of Transportation Science and Engineering, HIT 37 數(shù)據(jù)結(jié)構(gòu)化 數(shù)據(jù)的安全性(Security)保護使每個用戶只能按指定方式使用和處理指定數(shù)據(jù),保護數(shù)據(jù)以
22、防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。數(shù)據(jù)的完整性(Integrity)檢查將數(shù)據(jù)控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關(guān)系。 School of Transportation Science and Engineering, HIT 38 DBMS對數(shù)據(jù)的控制功能 并發(fā)(Concurrency)控制對多用戶的并發(fā)操作加以控制和協(xié)調(diào),防止相互干擾而得到錯誤的結(jié)果。數(shù)據(jù)庫恢復(fù)(Recovery)將數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)。DBMS對數(shù)據(jù)的控制功能 School of Transportation Science and Engineering, HIT 39 按照數(shù)據(jù)模型
23、的進展情況,數(shù)據(jù)庫系統(tǒng)的發(fā)展可劃分為三代:第一代:層次數(shù)據(jù)庫系統(tǒng)和網(wǎng)狀數(shù)據(jù)庫系統(tǒng)主要支持層次和網(wǎng)狀數(shù)據(jù)模型第二代:關(guān)系數(shù)據(jù)庫系統(tǒng)支持關(guān)系數(shù)據(jù)模型,該模型有嚴格的理論基礎(chǔ),概念簡單、清晰,易于用戶理解和使用。因此一經(jīng)提出便迅速發(fā)展,成為實力性最強的產(chǎn)品。 School of Transportation Science and Engineering, HIT 40 四、數(shù)據(jù)庫系統(tǒng)的發(fā)展 第三代:新一代數(shù)據(jù)庫系統(tǒng)面向?qū)ο髷?shù)據(jù)庫系統(tǒng)基于擴展的關(guān)系數(shù)據(jù)模型或面向?qū)ο髷?shù)據(jù)模型的尚未完全成熟的一代數(shù)據(jù)庫系統(tǒng) 。特點:支持包括數(shù)據(jù)、對象和知識的管理在保持和繼承第二代技術(shù)的基礎(chǔ)上引進新技術(shù)(如OO)對其他系
24、統(tǒng)開放,具有良好的可移植性、可連結(jié)性、可擴充性、互操作性。 School of Transportation Science and Engineering, HIT 41 四、數(shù)據(jù)庫系統(tǒng)的發(fā)展 模型對客觀事物、現(xiàn)象、過程或系統(tǒng)的簡化描述所有的數(shù)據(jù)庫系統(tǒng)都為它所要描述的世界建立了模型:數(shù)據(jù)建模:描述了組織數(shù)據(jù)的框架結(jié)構(gòu)。如:樓房住戶-數(shù)據(jù);房間規(guī)格-數(shù)據(jù)模型數(shù)據(jù)建模 數(shù)據(jù)的存儲方式(數(shù)據(jù)字典中的定義)業(yè)務(wù)功能建模:用戶的最終需求。業(yè)務(wù)功能建模最后發(fā)展成為應(yīng)用程序產(chǎn)生高效的應(yīng)用程序的前提是良好的數(shù)據(jù)模型。正如10 平米的房間無法成為會議廳一樣,一個糟糕的數(shù)據(jù)模型也無法產(chǎn)生高質(zhì)量的應(yīng)用。 Scho
25、ol of Transportation Science and Engineering, HIT 42 1.2 數(shù)據(jù)模型 為什么要建立數(shù)據(jù)模型(Data Model):象蓋大樓的設(shè)計圖一樣,DM可使所有的項目參與者都有一個共同的數(shù)據(jù)標(biāo)準(zhǔn)。避免出現(xiàn)問題再解決(邊干邊改的方式)??杉霸绨l(fā)現(xiàn)問題。加快應(yīng)用開發(fā)速度。 School of Transportation Science and Engineering, HIT 43 1.2 數(shù)據(jù)模型 在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬,現(xiàn)實世界數(shù)據(jù)特征的抽象,是用來描述數(shù)據(jù)的一組概念
26、和定義。數(shù)據(jù)模型應(yīng)滿足三方面要求:能比較真實地模擬現(xiàn)實世界容易為人所理解便于在計算機上實現(xiàn) School of Transportation Science and Engineering, HIT 44 數(shù)據(jù)模型的概念 1.概念數(shù)據(jù)模型。也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模。面向用戶、面向現(xiàn)實世界的數(shù)據(jù)模型,反映現(xiàn)實世界的對象及其聯(lián)系。2.邏輯數(shù)據(jù)模型。它是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模。主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等。3.物理數(shù)據(jù)模型(DBMS/OS相關(guān))。反映數(shù)據(jù)的存儲結(jié)構(gòu)。 School of Transportation Science and Engineerin
27、g, HIT 45 數(shù)據(jù)模型的三個層次 認識抽象現(xiàn)實世界信息世界機器世界計算機世界轉(zhuǎn)換概 念 模 型( 信 息 模 型)DBMS支 持的 數(shù) 據(jù) 模 型 它 是 按 用 戶 的 觀 點 來對 數(shù) 據(jù) 和 信 息 建 模 ,主 要 用 于 數(shù) 據(jù) 庫 設(shè) 計 。不 依 賴 于 具 體 的 計 算機 系 統(tǒng) 它 是 按 計 算 機 的 觀 點 對 數(shù) 據(jù) 進行 建 模 , 主 要 用 于 DBMS的 實 現(xiàn) 。有 網(wǎng) 狀 、 層 次 、 關(guān) 系 、 面 向 對 象 等 。School of Transportation Science and Engineering, HIT 46 數(shù)據(jù)模型間的聯(lián)
28、系 1.數(shù)據(jù)結(jié)構(gòu)描述數(shù)據(jù)的靜態(tài)特征,包括對數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)建聯(lián)系的描述。通常按照數(shù)據(jù)結(jié)構(gòu)的類型來命名數(shù)據(jù)模型:層次結(jié)構(gòu)層次模型網(wǎng)狀結(jié)構(gòu)網(wǎng)狀模型關(guān)系結(jié)構(gòu)關(guān)系模型2.數(shù)據(jù)操作描述數(shù)據(jù)的動態(tài)特征:一組定義在數(shù)據(jù)上的操作(包括操作的含義、操作符、運算規(guī)則及其語言等)主要操作:檢索與更新(插入、刪除、修改) School of Transportation Science and Engineering, HIT 47 1.2.1 數(shù)據(jù)模型的三要素 3.數(shù)據(jù)的約束條件完整性規(guī)則的集合,數(shù)據(jù)庫中的數(shù)據(jù)必須滿足這組規(guī)則。約束條件的主要目的是使數(shù)據(jù)庫與它所描述的現(xiàn)實系統(tǒng)相符合。約束條件作用:設(shè)計時:數(shù)據(jù)模型正確
29、、真實、有效地反映現(xiàn)實。運行時:保證數(shù)據(jù)庫中的數(shù)據(jù)值真實地體現(xiàn)現(xiàn)實世界的狀態(tài)。 School of Transportation Science and Engineering, HIT 48 1.2.1 數(shù)據(jù)模型的三要素 根據(jù)數(shù)據(jù)模型應(yīng)用目的不同,數(shù)據(jù)模型有以下幾種:1.概念(數(shù)據(jù))模型(Conceptual Data Model)面向現(xiàn)實世界建模。主要用來描述現(xiàn)實世界的概念化結(jié)構(gòu),與具體的DBMS無關(guān)?,F(xiàn)實世界的事物經(jīng)過人腦的抽象加工,提取出對用戶有用的信息,經(jīng)過組織整理加工形成現(xiàn)實世界和計算機世界之間的中間模型。CDM只關(guān)心現(xiàn)實世界中的事物、事務(wù)特征、聯(lián)系,完全沒有與具體及其相關(guān)的任何概
30、念。 School of Transportation Science and Engineering, HIT 49 1.2.2常見數(shù)據(jù)模型 概念模型是系統(tǒng)分析員、程序設(shè)計員、維護人員、用戶之間相互理解的共同語言。能時數(shù)據(jù)庫的設(shè)計人員在設(shè)計的初始階段擺脫計算機系統(tǒng)及DBMS的具體技術(shù)問題,集中精力分析 數(shù)據(jù)、數(shù)據(jù)之間的聯(lián)系概念模型必須轉(zhuǎn)換成邏輯模型,才能在DBMS中實現(xiàn)。最常用的概念模型是E-R模型。 School of Transportation Science and Engineering, HIT 50 1.2.2常見數(shù)據(jù)模型 2.邏輯(數(shù)據(jù))模型(Logical Data Mod
31、el)面向用戶建模用戶從數(shù)據(jù)庫所看到的數(shù)據(jù)模型; 是具體的DBMS所支持的數(shù)據(jù)模型(網(wǎng)狀/層次/關(guān)系/面向?qū)ο螅?;既要面向用戶,也要面向系統(tǒng);LDM表示數(shù)據(jù)建聯(lián)系的方法一般的DBMS支持一種LDM(特殊的DBMS支持多種LDM) School of Transportation Science and Engineering, HIT 51 1.2.2常見數(shù)據(jù)模型 3.物理(數(shù)據(jù))模型(Physical Data Model)面向具體的DBMS,面向機器描述數(shù)據(jù)在存儲介質(zhì)上的組織結(jié)構(gòu)PDM不僅與具體的DBMS有關(guān),還與操作系統(tǒng)和硬件有關(guān)每一種邏輯模型在實現(xiàn)時都有其對應(yīng)的物理模型PDM加入了概念
32、模型中為考慮的因素:觸發(fā)器、 存儲過程、主鍵、外鍵、索引等DBMS為保證其獨立性和可以執(zhí)行,大部分PDM 的實現(xiàn)工作由系統(tǒng)自動完成,而設(shè)計者只設(shè)計 索引、聚簇等特殊結(jié)構(gòu) School of Transportation Science and Engineering, HIT 52 1.2.2常見數(shù)據(jù)模型 實體-聯(lián)系(Entity-Relationship)1.實體、實體型、實體集實體(Entity)客觀存在并能相互區(qū)分的事物,如:人,數(shù)據(jù)庫課程,正使用的計算機等。一場足球賽不能嚴格地定義實體,正如幾何中“點”,“線”一樣。關(guān)鍵之處:一個實體能和別的實體區(qū)分開。 School of Trans
33、portation Science and Engineering, HIT 53 1.2.3概念模型 實體型(Entity Type)用實體名及屬性名集合來抽象刻畫同類實體實體集(Entity Set)同型的實體組成的集合。2.屬性(Attribute)指實體所具有的某一方面的特性,一個實體可 由若干個屬性來刻劃。屬性取值在一定的范圍,稱為該屬性的值域/域Domain)唯一標(biāo)識實體的屬性集稱為碼(Key) School of Transportation Science and Engineering, HIT 54 1.2.3概念模型 3.聯(lián)系(Relationship)實體集合間存在的相
34、互關(guān)系為了建立現(xiàn)實世界的完整模型,常常需要對聯(lián)系分 類,根據(jù)一個實體集合的實體可以和多少個另一類實體集合的實體相聯(lián)系,可將聯(lián)系分為如下幾種: (1) 一 對 一 聯(lián) 系 ( 1: 1) 系 系 主 任 (2) 一 對 多 聯(lián) 系 ( 1: n) 班 級 學(xué) 生 (3) 一 對 一 聯(lián) 系 ( m: n) 課 程 學(xué) 生 School of Transportation Science and Engineering, HIT 55 1.2.3概念模型 4.實體-聯(lián)系圖確定所有實體集合用矩形方框表示實體集合,方框內(nèi)標(biāo)明實體集合名稱;選擇實體集應(yīng)包含的屬性用橢圓框表示屬性,通過無向邊連接到實體集。
35、只有一個屬性的實體集可用屬性代替,附加到它參加的聯(lián)系上;確定實體集之間的聯(lián)系 用菱形框表示,框內(nèi)標(biāo)明聯(lián)系的名稱,通過無向邊(或有向邊)連接到參加聯(lián)系的每個實體集合。 School of Transportation Science and Engineering, HIT 56 1.2.3概念模型 概念數(shù)據(jù)模型是“概念上”的,是抽象的,它與具體的數(shù)據(jù)庫管理系統(tǒng)無關(guān)。邏輯數(shù)據(jù)模型將與具體的DBMS有關(guān),與DBMS支持的數(shù)據(jù)和聯(lián)系的表示或存儲有關(guān)。數(shù)據(jù)庫中不僅要存放數(shù)據(jù)本身,還要存放數(shù)據(jù)間的聯(lián)系,可用不同的方法表示數(shù)據(jù)與數(shù)據(jù)之間的聯(lián)系。把表示數(shù)據(jù)與數(shù)據(jù)之間聯(lián)系的方法稱為邏輯(數(shù)據(jù))模型。 Scho
36、ol of Transportation Science and Engineering, HIT 57 1.2.4 三種主要的邏輯數(shù)據(jù)模型 非關(guān)系模型層次模型(Hierarchical Model)網(wǎng)狀模型(Network Model )數(shù)據(jù)結(jié)構(gòu):以基本層次聯(lián)系為基本單位基本層次聯(lián)系:兩個記錄以及它們之間的一對多(包括一對一)的聯(lián)系關(guān)系模型(Relational Model)數(shù)據(jù)結(jié)構(gòu):表面向?qū)ο竽P?Object Oriented Model)數(shù)據(jù)結(jié)構(gòu):對象 School of Transportation Science and Engineering, HIT 58 1.2.4 三種主要
37、的邏輯數(shù)據(jù)模型 用樹型結(jié)構(gòu)來表示實體之間聯(lián)系的模型。支持層次模型的典型系統(tǒng)誕生于1970年前后,是IBM公司的IMS(Information Management System)系統(tǒng)。滿足下面兩個條件的基本層次聯(lián)系的集合為層次模型。用樹型結(jié)構(gòu)來表示各類實體間的聯(lián)系1.有且只有一個結(jié)點沒有雙親結(jié)點,這個結(jié)點稱為根結(jié)點。2.根以外的其它結(jié)點有且只有一個雙親結(jié)點。 School of Transportation Science and Engineering, HIT 59 一、層次模型(Hierarchical Data Model) School of Transportation Scien
38、ce and Engineering, HIT 60 實例:學(xué)校的領(lǐng)導(dǎo)層數(shù)據(jù)模型R1 R3R2 R5R4根節(jié)點兄弟節(jié)點兄弟節(jié)點葉節(jié)點葉節(jié)點葉節(jié)點 節(jié)點的雙親是唯一的;只能直接處理一對多的實體聯(lián)系;每個記錄類型定義一個排序字段,也稱為碼字段;任何記錄值只有按其路徑查看時,才能顯出它的全部意義;沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在。 School of Transportation Science and Engineering, HIT 61 層次數(shù)據(jù)模型的特點 優(yōu)點層次數(shù)據(jù)模型簡單,對具有一對多的層次關(guān)系的部門描述自然、直觀,容易理解性能優(yōu)于關(guān)系模型,不低于網(wǎng)狀模型層次數(shù)據(jù)模型提供了
39、良好的完整性支持缺點多對多聯(lián)系表示不自然對插入和刪除操作的限制多查詢子女結(jié)點必須通過雙親結(jié)點層次命令趨于程序化 School of Transportation Science and Engineering, HIT 62 層次模型的優(yōu)缺點 滿足下面兩個條件的基本層次聯(lián)系的集合為網(wǎng)狀模型。用圖型結(jié)構(gòu)來表示各類實體間的聯(lián)系1.允許一個以上的結(jié)點無雙親;2.一個結(jié)點可以有多于一個的雙親。 School of Transportation Science and Engineering, HIT 63 二、網(wǎng)狀數(shù)據(jù)模型 實例:學(xué)生-選課-課程數(shù)據(jù)模型R1 R2R3L1 L2 R1 R2R4 R5R
40、3L1 L2 L3L4 優(yōu)點能夠更為直接地描述現(xiàn)實世界,如一個結(jié)點可以有多個雙親具有良好的性能,存取效率較高缺點結(jié)構(gòu)比較復(fù)雜,而且隨著應(yīng)用環(huán)境的擴大,數(shù)據(jù)庫的結(jié)構(gòu)就變得越來越復(fù)雜,不利于最終用戶掌握DDL、DML語言復(fù)雜,用戶不容易使用 School of Transportation Science and Engineering, HIT 64 網(wǎng)狀模型的優(yōu)缺點 最重要的一種數(shù)據(jù)模型,也是目前主要采用的數(shù)據(jù)模型。1970年由美國IBM公司San Jose研究室的研究員E.F.Codd提出。關(guān)系模型源于數(shù)學(xué),它把數(shù)據(jù)看成是二維表(關(guān)系)中的元素。用關(guān)系表示(不需用指針)實體和實體之間聯(lián)系的模
41、 型稱為關(guān)系模型。對于用戶,關(guān)系方法應(yīng)該是很簡單的,但RDBMS很復(fù)雜,因為將大量工作都轉(zhuǎn)嫁給了RDBMS。 School of Transportation Science and Engineering, HIT 65 三、關(guān)系模型RDBMS的設(shè)想與層次、網(wǎng)狀數(shù)據(jù)庫同時產(chǎn)生,但研制開發(fā)RDBMS卻花費了比人們想象的要長得多的時間,所以成為商品并投入使用比層次、網(wǎng)狀數(shù)據(jù)庫晚了十幾年。但一投入使用就顯示了旺盛的活力,并逐步取代層次、網(wǎng)狀數(shù)據(jù)庫。 1.3.1 數(shù)據(jù)庫系統(tǒng)內(nèi)部的模式結(jié)構(gòu) 從數(shù)據(jù)庫管理系統(tǒng)角度看1.3.2 數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu)從數(shù)據(jù)庫最終用戶角度看 School of Trans
42、portation Science and Engineering, HIT 66 1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu) 數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)獨立性 School of Transportation Science and Engineering, HIT 67 1.3.1 數(shù)據(jù)庫系統(tǒng)的模式結(jié)構(gòu)美國國家標(biāo)準(zhǔn)學(xué)會(ANSI)所屬標(biāo)準(zhǔn)計劃和要求委員會在1975年公布的研究報告中提出的。“三級模式”,“兩層映射” “型” 和“值” 的概念型(Type)對某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明值(Value)是型的一個具體賦值例如:學(xué)生記錄記錄型: (學(xué)號,姓名,性別,系別,
43、年齡,籍貫)該記錄型的一個記錄值: (900201,李明,男,計算機,22,江蘇) School of Transportation Science and Engineering, HIT 68 幾個基本概念“型”和“值” 當(dāng)設(shè)計數(shù)據(jù)庫時,對數(shù)據(jù)庫的結(jié)構(gòu)感興趣,即模式(Schema):數(shù)據(jù)庫中數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。模式(Schema)數(shù)據(jù)庫邏輯結(jié)構(gòu)和特征的描述是型的描述反映的是數(shù)據(jù)的結(jié)構(gòu)及其聯(lián)系模式是相對穩(wěn)定的 School of Transportation Science and Engineering, HIT 69 幾個基本概念“模式” 當(dāng)應(yīng)用數(shù)據(jù)庫時,關(guān)心的是數(shù)據(jù)庫中存在的數(shù)
44、據(jù)實例(Instance)模式的一個實例(Instance)模式的一個具體值反映數(shù)據(jù)庫某一時刻的狀態(tài)同一個模式可以有很多實例實例隨數(shù)據(jù)庫中的數(shù)據(jù)的更新而變動 School of Transportation Science and Engineering, HIT 70 幾個基本概念“實例” 數(shù)據(jù)庫中的數(shù)據(jù)經(jīng)常變化,而數(shù)據(jù)庫的結(jié)構(gòu)在一定時間范圍內(nèi)不會改變。數(shù)據(jù)庫中結(jié)構(gòu)的定義可以在多個抽象級別進行,形成多個級別的數(shù)據(jù)庫模式。 數(shù)據(jù)庫系統(tǒng)的三級模式不僅可以使數(shù)據(jù)具有獨立性,而且還可以使數(shù)據(jù)達到共享,使同一數(shù)據(jù)滿足更多用戶的不同要求。 School of Transportation Science
45、 and Engineering, HIT 71 數(shù)據(jù)庫的三級模式 是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式,即對數(shù)據(jù)的物理結(jié)構(gòu)/存儲方式的描述,是低級描述,一般由DBMS提供的語言或工具完成記錄的存儲方式(順序存儲,按照B樹結(jié)構(gòu)存儲,按hash方法存儲)索引的組織方式數(shù)據(jù)是否壓縮存儲數(shù)據(jù)是否加密數(shù)據(jù)存儲記錄結(jié)構(gòu)的規(guī)定 School of Transportation Science and Engineering, HIT 72 一、內(nèi)模式(Internal Schema) 要修改存儲數(shù)據(jù)庫的結(jié)構(gòu)(例如,用倒排文件代替多鏈表),那么僅僅需要把這些修改反映在存儲模式中;通常我
46、們不關(guān)心內(nèi)模式的具體技術(shù)實現(xiàn),而是從一般組織的觀點(即概念模式)或用戶的觀點(外模式)來討論數(shù)據(jù)庫的描述。但我們必須意識到基本的內(nèi)模式和存儲數(shù)據(jù)庫的存在。一個數(shù)據(jù)庫只有一個內(nèi)模式 School of Transportation Science and Engineering, HIT 73 一、內(nèi)模式(Internal Schema) 模式(也稱邏輯模式)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求一個數(shù)據(jù)庫只有一個模式模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)的中間層與數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境無關(guān)與具體的應(yīng)用程序、開發(fā)工具及高級程序設(shè)計語言無關(guān) School
47、 of Transportation Science and Engineering, HIT 74 二、(邏輯)模式(Schema) 模式的定義,DBMS提供數(shù)據(jù)定義語言DDL來描述邏輯模式,嚴格定義:數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)項的名字、類型、取值范圍等);數(shù)據(jù)之間的聯(lián)系;數(shù)據(jù)有關(guān)的安全性、完整性要求。 School of Transportation Science and Engineering, HIT 75 二、(邏輯)模式(Schema) 外模式(也稱子模式或用戶模式)數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是模式的子集或變形,是與
48、某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示不同用戶需求不同,看待數(shù)據(jù)的方式也可以不同,對數(shù)據(jù)保密的要求也可以不同,使用的程序設(shè)計語言也可以不同,因此不同用戶的外模式的描述可以使不同的。 School of Transportation Science and Engineering, HIT 76 三、外模式(External Schema) 外模式的地位:介于模式與應(yīng)用之間模式與外模式的關(guān)系:一對多外模式通常是模式的子集一個數(shù)據(jù)庫可以有多個外模式。反映了不同的用戶的應(yīng)用需求、看待數(shù)據(jù)的方式、對數(shù)據(jù)保密的要求對模式中同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長度、保密級別等都可以不同外模式與應(yīng)用的關(guān)系:一對多同一外
49、模式也可以為某一用戶的多個應(yīng)用系統(tǒng)所使用,但一個應(yīng)用程序只能使用一個外模式。 School of Transportation Science and Engineering, HIT 77 三、外模式(External Schema) 外模式的用途保證數(shù)據(jù)庫安全性的一個有力措施。每個用戶只能看見和訪問所對應(yīng)的外模式中的數(shù)據(jù) School of Transportation Science and Engineering, HIT 78 三、外模式(External Schema) 民航售票系統(tǒng)包括處理航班程序和處理旅客程序。程序的使用人員不必知道關(guān)于人事檔案、丟失的行 李、飛行員的航行分配等
50、信息;調(diào)度員可能需要知道關(guān)于航班、飛機和人事檔案等 信息(如那些飛行員有資格駕駛747),但不必知道雇員的工資、旅客等信息。所以可以為訂票部門建立一個數(shù)據(jù)庫視圖,為調(diào)度部門建立另一個完全不同的部門。 School of Transportation Science and Engineering, HIT 79 舉例 Note:視圖處理的數(shù)據(jù)并不實際存儲在數(shù)據(jù)庫中,而僅可以從邏輯數(shù)據(jù)庫中構(gòu)造出來。視圖比(邏輯)模式的抽象級別更高。舉例:“年齡”在人事部門數(shù)據(jù)庫中,但(邏輯)模式僅包含出生年月。當(dāng)用戶希望通過訪問視圖得到年齡時,DBMS翻譯這個要求,在從物理數(shù)據(jù)庫上取出的數(shù)據(jù)完成計算。 Scho
51、ol of Transportation Science and Engineering, HIT 80 1.3.2 數(shù)據(jù)庫系統(tǒng)的模式結(jié)構(gòu)注:一個數(shù)據(jù)庫只有一個模式,一個內(nèi)模式,但可以有多個外模式。 School of Transportation Science and Engineering, HIT 81 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)內(nèi)模式模式外模式外模式外模式應(yīng)用A應(yīng)用A應(yīng)用A應(yīng)用A應(yīng)用A模式/內(nèi)模式映象外模式/模式映象 三級模式是對數(shù)據(jù)的三個抽象級別二級映象在DBMS內(nèi)部實現(xiàn)這三個抽象層次的聯(lián)系和轉(zhuǎn)換 School of Transportation Science and Engine
52、ering, HIT 82 三級模式與二級映象 School of Transportation Science and Engineering, HIT 83 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)內(nèi)模式模式外模式外模式外模式應(yīng)用A應(yīng)用A應(yīng)用A應(yīng)用A應(yīng)用A模式/內(nèi)模式映象外模式/模式映象 在三級模式中提供了兩級映象,保證了數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨立性,既物理獨立性與邏輯獨立性。1.外模式模式映象定義外模式與模式之間的對應(yīng)關(guān)系每一個外模式都對應(yīng)一個外模式模式映象映象定義通常包含在各自外模式的描述中 School of Transportation Science and Engineering, HIT 84 1
53、.3.3 數(shù)據(jù)庫的二級映象 數(shù)據(jù)庫系統(tǒng)投入使用后,可能有必要修改模式(如增加新關(guān)系、屬性、改變類型),這時:重新定義外模式/模式映象 =現(xiàn)存外模式不變 =應(yīng)用程序不變 School of Transportation Science and Engineering, HIT 85 1.3.3 數(shù)據(jù)庫的二級映象 DBA職責(zé) 保證數(shù)據(jù)的邏輯獨立性當(dāng)模式改變時,數(shù)據(jù)庫管理員修改有關(guān)的外模式模式映象,使外模式保持不變應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性。 School of Transportation Science and En
54、gineering, HIT 86 外模式模式映象用途 模式內(nèi)模式映象定義了數(shù)據(jù)全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。例如,說明邏輯記錄和字段在內(nèi)部是如何表示的數(shù)據(jù)庫中模式內(nèi)模式映象是唯一的該映象定義通常包含在模式描述中 School of Transportation Science and Engineering, HIT 87 二、模式/內(nèi)模式映象 保證數(shù)據(jù)的物理獨立性當(dāng)數(shù)據(jù)庫的存儲結(jié)構(gòu)改變了(例如選用了另一種存儲結(jié)構(gòu)),數(shù)據(jù)庫管理員修改模式內(nèi)模式映象,使模式保持不變應(yīng)用程序不受影響。保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)據(jù)的物理獨立性。 School of Transportation
55、Science and Engineering, HIT 88 模式內(nèi)模式映象的用途 模式是數(shù)據(jù)庫的中心與關(guān)鍵獨立于數(shù)據(jù)庫的其它層次設(shè)計數(shù)據(jù)庫模式結(jié)構(gòu)時應(yīng)首先確定數(shù)據(jù)庫的邏輯結(jié)構(gòu) School of Transportation Science and Engineering, HIT 89 小結(jié) 內(nèi)模式依賴于全局邏輯結(jié)構(gòu),但獨立于數(shù)據(jù)庫的用戶視圖即外模式,也獨立于具體的存儲設(shè)備。它將全局邏輯結(jié)構(gòu)中所定義的數(shù)據(jù)結(jié)構(gòu)及其聯(lián)系按照一定的物理存儲策略進行組織,以達到較好的時間與空間效率。 School of Transportation Science and Engineering, HIT 90
56、 小結(jié)(續(xù)) 外模式面向具體的應(yīng)用程序,定義在邏輯模式之上,但獨立于存儲模式和存儲設(shè)備設(shè)計外模式時應(yīng)充分考慮到應(yīng)用的擴充性。當(dāng)應(yīng)用需求發(fā)生較大變化,相應(yīng)外模式不能滿足其視圖要求時,該外模式就得做相應(yīng)改動 School of Transportation Science and Engineering, HIT 91 小結(jié)(續(xù)) 應(yīng)用程序在外模式描述的數(shù)據(jù)結(jié)構(gòu)上編制的,它依賴于特定的外模式,與數(shù)據(jù)庫的模式和存儲結(jié)構(gòu)獨立。不同的應(yīng)用程序有時可以共用同一個外模式。 School of Transportation Science and Engineering, HIT 92 小結(jié)(續(xù)) 二級映象保
57、證了數(shù)據(jù)庫外模式的穩(wěn)定性,從而從底層保證了應(yīng)用程序的穩(wěn)定性,除非應(yīng)用需求本身發(fā)生變化,否則應(yīng)用程序一般不需要修改。數(shù)據(jù)與程序之間的獨立性,使得數(shù)據(jù)的定義和描述可以從應(yīng)用程序中分離出去。 School of Transportation Science and Engineering, HIT 93 小結(jié)(續(xù)) 1.單用戶結(jié)構(gòu)2.主從式結(jié)構(gòu)3.分布式結(jié)構(gòu)4.客戶/服務(wù)器結(jié)構(gòu)5.瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器結(jié)構(gòu) School of Transportation Science and Engineering, HIT 94 1.4 數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu) 整個數(shù)據(jù)庫系統(tǒng)(應(yīng)用程序、DBMS、
58、數(shù)據(jù))裝在一臺計算機上,為一個用戶獨占,不同機器之間不能共享數(shù)據(jù)。早期的最簡單的數(shù)據(jù)庫系統(tǒng) School of Transportation Science and Engineering, HIT 95 1. 單用戶數(shù)據(jù)庫系統(tǒng) 一個主機帶多個終端的多用戶結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng),包括應(yīng)用程序、DBMS、數(shù)據(jù),都集中存放在主機上,所有處理任務(wù)都由主機來完成各個用戶通過主機的終端并發(fā)地存取數(shù)據(jù)庫,共享數(shù)據(jù)資源 School of Transportation Science and Engineering, HIT 96 2. 主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) School of Transportation Sc
59、ience and Engineering, HIT 97 主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)主 機 終 端 優(yōu)點易于管理、控制與維護。缺點當(dāng)終端用戶數(shù)目增加到一定程度后,主機的任務(wù)會過分繁重,成為瓶頸,從而使系統(tǒng)性能下降。系統(tǒng)的可靠性依賴主機,當(dāng)主機出現(xiàn)故障時,整個系統(tǒng)都不能使用。 School of Transportation Science and Engineering, HIT 98 主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)(續(xù)) 數(shù)據(jù)庫中的數(shù)據(jù)在邏輯上是一個整體,但物理地分布在計算機網(wǎng)絡(luò)的不同結(jié)點上。網(wǎng)絡(luò)中的每個結(jié)點都可以獨立處理本地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行局部應(yīng)用同時也可以同時存取和處理多個異地數(shù)據(jù)庫中的數(shù)據(jù),
60、執(zhí)行全局應(yīng)用 School of Transportation Science and Engineering, HIT 99 3. 分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 優(yōu)點適應(yīng)了地理上分散的公司、團體和組織對于數(shù)據(jù)庫應(yīng)用的需求。缺點數(shù)據(jù)的分布存放給數(shù)據(jù)的處理、管理與維護帶來困難。當(dāng)用戶需要經(jīng)常訪問遠程數(shù)據(jù)時,系統(tǒng)效率會明顯地受到網(wǎng)絡(luò)傳輸?shù)闹萍s。 School of Transportation Science and Engineering, HIT 100 分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)(續(xù)) 把DBMS功能和應(yīng)用分開網(wǎng)絡(luò)中某個(些)結(jié)點上的計算機專門用于執(zhí)行DBMS功能,稱為數(shù)據(jù)庫服務(wù)器,簡稱服務(wù)器其他結(jié)點
61、上的計算機安裝DBMS的外圍應(yīng)用開發(fā)工具,用戶的應(yīng)用系統(tǒng),稱為客戶機 School of Transportation Science and Engineering, HIT 101 4客戶服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 集中的服務(wù)器結(jié)構(gòu)一臺數(shù)據(jù)庫服務(wù)器,多臺客戶機分布的服務(wù)器結(jié)構(gòu)在網(wǎng)絡(luò)中有多臺數(shù)據(jù)庫服務(wù)器分布的服務(wù)器結(jié)構(gòu)是客戶服務(wù)器與 分布式數(shù)據(jù)庫的結(jié)合 School of Transportation Science and Engineering, HIT 102 客戶服務(wù)器數(shù)據(jù)庫系統(tǒng)的種類 客戶端的用戶請求被傳送到數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫服務(wù)器進行處理后,只將結(jié)果返回給用戶,從而顯著減少了數(shù)據(jù)傳
62、輸量數(shù)據(jù)庫更加開放客戶與服務(wù)器一般都能在多種不同的硬件和軟件平臺上運行可以使用不同廠商的數(shù)據(jù)庫應(yīng)用開發(fā)工具 School of Transportation Science and Engineering, HIT 103 客戶服務(wù)器結(jié)構(gòu)的優(yōu)點 “胖客戶”問題:系統(tǒng)安裝復(fù)雜,工作量大。應(yīng)用維護困難,難于保密,造成安全性差。相同的應(yīng)用程序要重復(fù)安裝在每一臺客戶機上,從系統(tǒng)總體來看,大大浪費了系統(tǒng)資源。系統(tǒng)規(guī)模達到數(shù)百數(shù)千臺客戶機,它們的硬件配置、操作系統(tǒng)又常常不同,要為每一個客戶機安裝應(yīng)用程序和相應(yīng)的工具模塊,其安裝維護代價便不可接受了。 School of Transportation Sci
63、ence and Engineering, HIT 104 客戶服務(wù)器結(jié)構(gòu)的缺點 客戶端:瀏覽器軟件、用戶界面瀏覽器的界面統(tǒng)一,廣大用戶容易掌握大大減少了培訓(xùn)時間與費用。服務(wù)器端分為兩部分:Web服務(wù)器、應(yīng)用服務(wù)器數(shù)據(jù)庫服務(wù)器等大大減少了系統(tǒng)開發(fā)和維護代價能夠支持數(shù)萬甚至更多的用戶 School of Transportation Science and Engineering, HIT 105 瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器結(jié)構(gòu) 數(shù)據(jù)庫/應(yīng)用系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)計算機軟/硬件系統(tǒng)數(shù)據(jù)庫管理員用戶文檔 School of Transportation Science and E
64、ngineering, HIT 106 1.5 數(shù)據(jù)庫系統(tǒng)的組成 數(shù)據(jù)庫系統(tǒng)對硬件資源的要求1.足夠大的內(nèi)存操作系統(tǒng) DBMS的核心模塊數(shù)據(jù)緩沖區(qū)應(yīng)用程序 School of Transportation Science and Engineering, HIT 107 一、硬件平臺及數(shù)據(jù)庫 2.足夠大的外存 磁盤操作系統(tǒng) DBMS應(yīng)用程序數(shù)據(jù)庫及其備份 光盤、磁帶、軟盤數(shù)據(jù)備份3.較高的通道能力,提高數(shù)據(jù)傳送率 School of Transportation Science and Engineering, HIT 108 數(shù)據(jù)庫系統(tǒng)對硬件資源的要求 DBMS操作系統(tǒng)與數(shù)據(jù)庫接口的高級語言
65、及其編譯系統(tǒng)以DBMS為核心的應(yīng)用開發(fā)工具為特定應(yīng)用環(huán)境開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng) School of Transportation Science and Engineering, HIT 109 二、軟件 數(shù)據(jù)庫管理員系統(tǒng)分析員數(shù)據(jù)庫設(shè)計人員應(yīng)用程序員(最終用戶) School of Transportation Science and Engineering, HIT 110 三、人員 決定數(shù)據(jù)庫中的信息內(nèi)容和結(jié)構(gòu)決定數(shù)據(jù)庫的存儲結(jié)構(gòu)和存取策略定義數(shù)據(jù)的安全性要求和完整性約束條件 School of Transportation Science and Engineering, HIT 111
66、 1. 數(shù)據(jù)庫管理員(DBA) 監(jiān)控數(shù)據(jù)庫的使用和運行周期性轉(zhuǎn)儲數(shù)據(jù)庫數(shù)據(jù)文件日志文件系統(tǒng)故障恢復(fù)介質(zhì)故障恢復(fù)監(jiān)視審計文件 School of Transportation Science and Engineering, HIT 112 數(shù)據(jù)庫管理員(續(xù)) 數(shù)據(jù)庫的改進和重組性能監(jiān)控和調(diào)優(yōu)數(shù)據(jù)重組數(shù)據(jù)庫重構(gòu) School of Transportation Science and Engineering, HIT 113 數(shù)據(jù)庫管理員(續(xù)) 負責(zé)應(yīng)用系統(tǒng)的需求分析和規(guī)范說明與用戶及DBA協(xié)商,確定系統(tǒng)的硬軟件配置參與數(shù)據(jù)庫系統(tǒng)的概要設(shè)計 School of Transportation Science and Engineering, HIT 114 2. 系統(tǒng)分析員 參加用戶需求調(diào)查和系統(tǒng)分析確定數(shù)據(jù)庫中的數(shù)據(jù)設(shè)計數(shù)據(jù)庫各級模式 School of Transportation Science and Engineering, HIT 115 3. 數(shù)據(jù)庫設(shè)計人員 設(shè)計和編寫應(yīng)用系統(tǒng)的程序模塊進行調(diào)試和安裝 School of Transportation Science and
- 溫馨提示:
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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。