6系大三下學(xué)期學(xué)習(xí)數(shù)據(jù)庫講義_第1頁
6系大三下學(xué)期學(xué)習(xí)數(shù)據(jù)庫講義_第2頁
6系大三下學(xué)期學(xué)習(xí)數(shù)據(jù)庫講義_第3頁
6系大三下學(xué)期學(xué)習(xí)數(shù)據(jù)庫講義_第4頁
6系大三下學(xué)期學(xué)習(xí)數(shù)據(jù)庫講義_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫系統(tǒng)原理袁平波 2013.2第一章 緒 論1.1引言1.2數(shù)據(jù)模型 1.3數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)及功能 1.4數(shù)據(jù)庫管理系統(tǒng) 1.5數(shù)據(jù)庫工程與應(yīng)用 1.1引言 數(shù)據(jù)庫技術(shù)產(chǎn)生于20世紀(jì)60年代中期 是數(shù)據(jù)管理的最新技術(shù)計算機科學(xué)的重要分支計算機應(yīng)用的三個方面:科學(xué)計算、數(shù)據(jù)管理、過程控制 1.1.1數(shù)據(jù)庫系統(tǒng)等相關(guān)概念數(shù)據(jù)(Data)數(shù)據(jù)是信息的符號記錄。數(shù)據(jù)是數(shù)據(jù)庫處理和研究的對象。數(shù)據(jù)庫(Database)長期存儲在計算機內(nèi),有組織的、可共享的相關(guān)數(shù)據(jù)的集合 數(shù)據(jù)庫管理系統(tǒng)(DBMS)位于用戶和操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 數(shù)據(jù)庫系統(tǒng)(DBS)計算機硬件為基礎(chǔ)的記錄保持系統(tǒng)。包括數(shù)據(jù)

2、庫、數(shù)據(jù)庫管理系統(tǒng)、應(yīng)用系統(tǒng)、管理員和用戶,有時還包括計算機硬件。1.1.2數(shù)據(jù)管理技術(shù)的發(fā)展 數(shù)據(jù)管理是指對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護分為三個階段 :人工管理階段 文件系統(tǒng)階段 數(shù)據(jù)庫系統(tǒng)階段 三個階段的對比階段人工文件系統(tǒng)數(shù)據(jù)庫系統(tǒng)背景時間20世紀(jì)50年代末60年代中期60年代末應(yīng)用背景科學(xué)計算科學(xué)計算、管理大規(guī)模管理硬件背景無直接存儲設(shè)備磁盤、磁鼓大容量磁盤軟件背景無OS有文件系統(tǒng)有DBMS處理方式批處理聯(lián)機和批處理聯(lián)機和批處理特點數(shù)據(jù)管理者人文件系統(tǒng)DBMS數(shù)據(jù)面向?qū)ο竽骋粦?yīng)用程序某一應(yīng)用程序現(xiàn)實世界數(shù)據(jù)共享程度無,冗余大共享性差,冗余較大共享性高冗余小數(shù)據(jù)獨立性無獨立

3、性差(有邏輯)有高度獨立性數(shù)據(jù)結(jié)構(gòu)化無記錄有結(jié)構(gòu),整體無數(shù)據(jù)模型描述數(shù)據(jù)控制能力應(yīng)用程序控制應(yīng)用程序控制DBMS保護:安全性、完整性、并發(fā)控制、數(shù)據(jù)恢復(fù)1.1.3數(shù)據(jù)庫技術(shù)的研究領(lǐng)域 數(shù)據(jù)庫管理系統(tǒng)軟件的研制(面向?qū)ο?、多媒體數(shù)據(jù)庫等)數(shù)據(jù)庫設(shè)計(設(shè)計方法學(xué)和設(shè)計工具、數(shù)據(jù)模型與建模、設(shè)計規(guī)范與標(biāo)準(zhǔn))數(shù)據(jù)庫理論(規(guī)范化理論) 1.1.4*數(shù)據(jù)庫系統(tǒng)的特點 數(shù)據(jù)的結(jié)構(gòu)化數(shù)據(jù)的共享性好、冗余度低數(shù)據(jù)的獨立性高:物理、邏輯數(shù)據(jù)由DBMS統(tǒng)一管理數(shù)據(jù)的安全性(Security)數(shù)據(jù)的完整性(Integrity)并發(fā)控制(Concuurency)數(shù)據(jù)庫恢復(fù)(Recovery)良好的用戶接口 1.1.5*

4、數(shù)據(jù)庫在信息科學(xué)中的應(yīng)用 三個世界現(xiàn)實世界信息世界計算機世界實體(Entity)實體集實體記錄(Record)記錄集數(shù)據(jù)(Data)數(shù)據(jù)集特征特征值特征取值范圍屬性(Attribute)屬性值屬性值域數(shù)據(jù)項(屬性)數(shù)據(jù)項值數(shù)據(jù)項值域1.2數(shù)據(jù)模型 數(shù)據(jù)的組織是數(shù)據(jù)庫技術(shù)的核心問題數(shù)據(jù)庫的數(shù)據(jù)組織是通過數(shù)據(jù)模型來實現(xiàn)的數(shù)據(jù)模型是創(chuàng)建數(shù)據(jù)庫維護數(shù)據(jù)庫的方式,是數(shù)據(jù)庫系統(tǒng)定義數(shù)據(jù)內(nèi)容和數(shù)據(jù)間聯(lián)系的方法數(shù)據(jù)模型的定義:表示實體類型和實體間聯(lián)系的模型稱數(shù)據(jù)模型數(shù)據(jù)模型的兩個層次: 概念(數(shù)據(jù))模型:也稱信息模型。用來描述信息結(jié)構(gòu),又稱實體聯(lián)系模型(ER)按照用戶觀點對信息建模(結(jié)構(gòu))數(shù)據(jù)模型:面向數(shù)據(jù)庫

5、的邏輯結(jié)構(gòu),直接涉及到計算機系統(tǒng)和DBMS,又稱為(基本)數(shù)據(jù)模型按照計算機系統(tǒng)的觀點對數(shù)據(jù)建模數(shù)據(jù)模型的三個方面要求:比較真實模擬真實世界容易為人所理解便于計算機實現(xiàn)1.2.1數(shù)據(jù)模型的要素 數(shù)據(jù)結(jié)構(gòu):用于描述系統(tǒng)的靜態(tài)特征。是對實體類型和實體間聯(lián)系的表達和實現(xiàn),命名依據(jù)。數(shù)據(jù)操作:是用于描述系統(tǒng)的動態(tài)特征。是對數(shù)據(jù)庫檢索和更新(插入、修改、刪除)兩類操作 數(shù)據(jù)的約束條件:一組完整性規(guī)則的集合。給出數(shù)據(jù)及其聯(lián)系所具有的制約和依賴原則。1.2.2概念模型 現(xiàn)實世界認(rèn)識、抽象信息世界概念模型 轉(zhuǎn)換機器世界DBMS支持的數(shù)據(jù)模型概念模型的表示方法實體聯(lián)系模型(Entity Relationship

6、 Model,簡記ER模型) 直接從現(xiàn)實世界中抽象出實體和實體間聯(lián)系,然后用實體聯(lián)系圖(ER圖)表示信息模型ER模型實際是信息世界的模型。ER圖的四個組成部分 矩形框:實體型菱形框:聯(lián)系橢圓框:實體型和聯(lián)系的屬性直線:連接實體類型和聯(lián)系類型,表示聯(lián)系的種類班級班長ER圖舉例班級班長11組成班級學(xué)生1n選修學(xué)生課程mn領(lǐng)導(dǎo)學(xué)生n1選修課程教師1m參考書n兩個實體1:1兩個實體1:n兩個實體m:n同一實體1:n三個實體1:n1.2.3數(shù)據(jù)模型 結(jié)構(gòu)數(shù)據(jù)模型主要有三種層次模型、網(wǎng)狀模型、關(guān)系模型未來的發(fā)展有:對象模型、語義模型非關(guān)系模型中的數(shù)據(jù)結(jié)構(gòu)的單位是基本層次聯(lián)系。所謂基本層次聯(lián)系是指的兩個記錄

7、以及它們之間的一對多(包括一對多)的聯(lián)系 1.2.3.1層次模型 典型代表:IBM1968年的IMS 定義用樹型(層次)結(jié)構(gòu)表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型 數(shù)據(jù)結(jié)構(gòu)特點有且僅有一個結(jié)點無雙親,該結(jié)點是根結(jié)點其他結(jié)點有且僅有一個雙親層次模型中每個結(jié)點(片斷)表示一個記錄類型每個記錄類型包含若干個字段,字段有字段名、數(shù)據(jù)類型和長度等數(shù)據(jù)操縱與完整性約束插入時,沒有雙親結(jié)點不能插入子女結(jié)點刪除時,刪除雙親結(jié)點要同時刪除子女結(jié)點更新時,要更新所有相應(yīng)的記錄 存儲結(jié)構(gòu) 鄰接法鏈接法優(yōu)點模型本身簡單實體間聯(lián)系是固定的,預(yù)先設(shè)計好的應(yīng)用系統(tǒng),性能優(yōu)于關(guān)系型,不低于網(wǎng)狀模型層次模型提供了良好的完整性支持。

8、缺點實現(xiàn)多對多關(guān)系時,需要采用冗余或虛結(jié)點方式,易形成不一致性對插入和刪除操作限制較多。查詢子結(jié)點需通過雙親結(jié)點。結(jié)構(gòu)嚴(yán)謹(jǐn),層次命令趨于程序化。1.2.3.2網(wǎng)狀模型典型代表:DBTG(DataBase Task Group)開發(fā)系統(tǒng) HP公司的IMAGE/3000 Honeywll 公司的IDS/II Univac公司的DMS1100 等定義用有向圖(網(wǎng)絡(luò))結(jié)構(gòu)表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型。(network model)數(shù)據(jù)結(jié)構(gòu)特征 允許一個以上的結(jié)點無雙親至少一個結(jié)點不止一個雙親數(shù)據(jù)操縱與完整性約束 插入時,允許插入未確定雙親結(jié)點的子女結(jié)點值刪除時,允許只刪除雙親結(jié)點值更新時,只需更

9、新指定記錄 存儲結(jié)構(gòu) 常用鏈接法其它如引元陣列法、二進制陣列法、索引法等 優(yōu)點更加直接描述現(xiàn)實世界存取效率高,性能好缺點結(jié)構(gòu)復(fù)雜,不利于用戶掌握,DDL、DML語言復(fù)雜數(shù)據(jù)獨立性差 1.2.3.3關(guān)系模型 定義用表格表示實體集和實體間聯(lián)系,用外鍵來實現(xiàn)關(guān)系間的聯(lián)系 (Relation model)數(shù)據(jù)結(jié)構(gòu)特征 在用戶看來,一個關(guān)系模型的邏輯結(jié)構(gòu)就是一張二維表;必須使用規(guī)范化的關(guān)系,如分量是原子的;不僅實體用關(guān)系表示,實體間的聯(lián)系也用關(guān)系表示 術(shù)語 關(guān)系(relation):一個關(guān)系對應(yīng)通常一張表 記做R元組(Tuple):表中的一行 (V1,V2Vn)字段(field):表中的一列 A1,A2

10、An域(Domain):屬性的取值范圍分量:元組中的一個屬性關(guān)系模式:是記錄型。對關(guān)系的描述,關(guān)系模式的實例是一個關(guān)系。關(guān)系模式的描述包括:關(guān)系名、屬性名、屬性類型、屬性長度、主鍵包含的屬性等,記做:R(U,D,DOM,F(xiàn))關(guān)系數(shù)據(jù)庫模式:一組關(guān)系模式的總稱即關(guān)系數(shù)據(jù)庫模式,簡稱模式。候選鍵(Condidate Key):在給定的關(guān)系中,有這樣的屬性或最小屬性組,它在不同的元組中的值是不同的,利用這個(些)值可以唯一地標(biāo)示關(guān)系中地元組,則稱該屬性(組)為候選鍵。主碼(鍵)(Primary key):候選鍵可能不止一個,被指定正在使用地候選鍵稱主鍵。 超鍵(Super Key):能唯一標(biāo)識元組的

11、屬性集。超鍵包括所有候選鍵。組合鍵與全鍵:當(dāng)主鍵不是單一的屬性時稱組合鍵,組合鍵包括所有屬性時稱全鍵。外部鍵(Foreign Key):關(guān)系模式R中的屬性集是其它關(guān)系模式的主鍵,那么該屬性集對關(guān)系模式R而言是外鍵。主屬性和非主屬性:包含在任一候選鍵中的屬性叫主屬性,否則稱非主屬性 操縱與完整性約束插入、刪除和更新操作必須滿足關(guān)系的完整性約束;關(guān)系的完整性約束包括:實體完整性、參照完整性和自定義完整性 存儲結(jié)構(gòu) 實體和實體間的聯(lián)系都用表來表示 表通常以文件形式存儲優(yōu)點:建立在嚴(yán)格的數(shù)學(xué)概念基礎(chǔ)上概念單一,實體、聯(lián)系均用關(guān)系來表示存取路徑對用戶透明,數(shù)據(jù)獨立性更高,保密性更好。簡化程序員工作和數(shù)據(jù)

12、庫開發(fā)建立工作。 缺點:存取路徑對用戶透明,查詢效率不高因存取路徑對用戶透明,必須對用戶查詢進行優(yōu)化,增加了開發(fā)DBMS的難度 1.3數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)及功能 1.3.1數(shù)據(jù)庫系統(tǒng)的模式結(jié)構(gòu)(從管理系統(tǒng)角度看)SPARC接口分三級結(jié)構(gòu)schemaviewlevelExternal外模式子模式用戶視圖外視圖外部級局部邏輯級conceptual模式概念模式概念視圖DBA視圖概念級全局邏輯級internal內(nèi)模式存儲模式內(nèi)部視圖內(nèi)部級物理級存儲級數(shù)據(jù)庫的二級映象功能與數(shù)據(jù)獨立性 概念模式/內(nèi)模式的映象概念模式/外模式的映象物理獨立性:當(dāng)存儲結(jié)構(gòu)改變時,可以通過修改概念模式/內(nèi)模式的映象使概念級保持不便

13、,這樣外部級和應(yīng)用程序也不會改變。邏輯獨立性:當(dāng)概念級發(fā)生改變時,可以通過修改概念模式/外模式的映象使外部級盡量保持不變,應(yīng)用也就不需改變。 數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)應(yīng)用A應(yīng)用B外模式1應(yīng)用C應(yīng)用D外模式2外模式3模式內(nèi)模式數(shù)據(jù)庫外模式/模式映象模式/內(nèi)模式映象DBMS1.3.2數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)(從最終用戶角度來看) 單用戶DBS 主從式結(jié)構(gòu)DBS(終端方式) 客戶/服務(wù)器結(jié)構(gòu)DBS 分布式結(jié)構(gòu)DBS 1.3.3*數(shù)據(jù)庫系統(tǒng)的組成 計算機硬件 CPU、內(nèi)存、硬盤計算機軟件 OS、DBMS、應(yīng)用軟件包、應(yīng)用程序數(shù)據(jù)(庫)管理員、用戶 1.4數(shù)據(jù)庫管理系統(tǒng) 1.4.1數(shù)據(jù)庫管理系統(tǒng)的功能與組成 DB

14、MS功能 數(shù)據(jù)定義 數(shù)據(jù)操縱數(shù)據(jù)庫運行管理安全性檢查/完整性檢查/并發(fā)控制/索引、數(shù)據(jù)字典等內(nèi)部維護 數(shù)據(jù)組織、存儲、管理 數(shù)據(jù)庫建立與維護功能 數(shù)據(jù)通信接口功能 DBMS組成 數(shù)據(jù)定義語言DDL Data Definition/Description Language 數(shù)據(jù)操縱語言DML Data Manipulation Language 數(shù)據(jù)庫運行控制語言DCL Data Control Language 實用程序 1.4.2數(shù)據(jù)庫管理系統(tǒng)的工作過程 用戶存取數(shù)據(jù)庫數(shù)據(jù)的過程 用戶在程序中嵌入DML的一個讀記錄語句??刂妻D(zhuǎn)向DBMSDBMS檢查合法性,查找子模式表,確定對應(yīng)的存取權(quán)限D(zhuǎn)B

15、MS依據(jù)子模式/模式映象的定義,確定應(yīng)讀入的模式記錄DBMS依據(jù)模式/內(nèi)模式映象的定義,確定應(yīng)讀入的物理記錄DBMS向OS發(fā)送讀取所需物理記錄的命令OS啟動IO程序,執(zhí)行讀操作OS將數(shù)據(jù)從數(shù)據(jù)庫的存儲區(qū)送到系統(tǒng)緩沖區(qū)DBMS依據(jù)子模式/模式映象定義,導(dǎo)出用戶所要讀取的記錄格式DBMS將數(shù)據(jù)記錄從系統(tǒng)緩沖區(qū)傳送到程序的用戶工作區(qū)DBMS向應(yīng)用程序返回命令執(zhí)行情況和狀態(tài)信息 應(yīng)用程序A用戶工作區(qū)系統(tǒng)緩沖區(qū)數(shù)據(jù)庫管理系統(tǒng)DBMSOS應(yīng)用程序B用戶工作區(qū)應(yīng)用程序X用戶工作區(qū)用戶A用戶B用戶X子模式A子模式B子模式X子模式A模式物理模式從數(shù)據(jù)庫中讀取記錄的過程1.4.3數(shù)據(jù)庫管理系統(tǒng)的實現(xiàn)方法 N方案

16、DBMS模塊加入到用戶進程,DBMS代碼出現(xiàn)多副本,性能大幅下降 2N方案每個用戶有一個DBMSshdow進程和一個后臺負(fù)責(zé)讀寫和日值的進程 MN方案 2N方案的改進方案,N用戶,M個DBMS進程(MN) N1方案 1個DBMS進程(可設(shè)計成多線程的),N個用戶進程,消息開銷大 1.5數(shù)據(jù)庫工程與應(yīng)用 1.5.1數(shù)據(jù)庫設(shè)計的目標(biāo)和特點 數(shù)據(jù)庫設(shè)計的任務(wù)是:在DBMS的支持下,按照應(yīng)用的要求,為某一部門或組織設(shè)計一個結(jié)構(gòu)合理、使用方便、效率較高的數(shù)據(jù)庫及其應(yīng)用系統(tǒng) 數(shù)據(jù)庫設(shè)計包含兩方面內(nèi)容結(jié)構(gòu)(數(shù)據(jù))設(shè)計行為(處理)設(shè)計 1.5.2數(shù)據(jù)庫設(shè)計方法 核心是:邏輯設(shè)計和物理設(shè)計 著名設(shè)計方法 新奧爾良設(shè)計:需求分析、概念設(shè)計、邏輯設(shè)計、物理設(shè)計 S.B.Yao設(shè)計:需求分析

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論