數(shù)據(jù)庫基本概念_第1頁
數(shù)據(jù)庫基本概念_第2頁
數(shù)據(jù)庫基本概念_第3頁
數(shù)據(jù)庫基本概念_第4頁
數(shù)據(jù)庫基本概念_第5頁
已閱讀5頁,還剩60頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章 數(shù)據(jù)庫基本概念 數(shù)據(jù)庫的應(yīng)用 超市購物 手機話費 飛機、火車訂票 數(shù)據(jù)庫的地位 數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),數(shù)據(jù)庫技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計算機科學(xué)的重要分支是計算機科學(xué)的重要分支 數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促數(shù)據(jù)庫技術(shù)是信息系統(tǒng)的核心和基礎(chǔ),它的出現(xiàn)極大地促進了計算機應(yīng)用向各行各業(yè)的滲透進了計算機應(yīng)用向各行各業(yè)的滲透 數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成數(shù)據(jù)庫的建設(shè)規(guī)模、數(shù)據(jù)庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標(biāo)志為衡量一個國家信息化程度的重要標(biāo)志1.1 數(shù)據(jù)庫系統(tǒng)概述1.1.1 數(shù)

2、據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)一、數(shù)據(jù)(Data) 數(shù)據(jù)是描述事物的符號記錄,是信息的載體。 例如,學(xué)校為了管理學(xué)生信息,可能會將學(xué)生的學(xué)號、姓名、性別、年齡、出生年月、籍貫、所在系、入學(xué)時間等數(shù)據(jù)組織起來,下面就是一個學(xué)生有關(guān)這些方面的數(shù)據(jù)集:(20012502033,李明李明,男男,19,1982,江蘇江蘇,計算機系計算機系,2001)二、數(shù)據(jù)庫(DataBase,簡稱DB) 數(shù)據(jù)庫是指長期存儲在計算機內(nèi)的、有組織的、數(shù)據(jù)庫是指長期存儲在計算機內(nèi)的、有組織的、有結(jié)構(gòu)的、可共享的數(shù)據(jù)集合。有結(jié)構(gòu)的、可共享的數(shù)據(jù)集合。 三、數(shù)據(jù)庫管理系統(tǒng)(DataBase Management Sys

3、tem,簡稱DBMS) 對數(shù)據(jù)進行定義、組織、使用、管理和維護的一個專用對數(shù)據(jù)進行定義、組織、使用、管理和維護的一個專用系統(tǒng)軟件。系統(tǒng)軟件。DBMSDBMS主要提供如下幾方面功能:主要提供如下幾方面功能: 1.1.數(shù)據(jù)定義功能數(shù)據(jù)定義功能( (Data Definition Language DDL) ) 2. 2.數(shù)據(jù)操縱功能數(shù)據(jù)操縱功能( (Data Manipulation Language DML) ) 3. 3.數(shù)據(jù)控制功能數(shù)據(jù)控制功能( (Data Control Language DCL) ) 當(dāng)前主流的數(shù)據(jù)庫管理系統(tǒng) 大型數(shù)據(jù)庫管理系統(tǒng): oracle,db2,Sybase,s

4、ql server 中小型數(shù)據(jù)庫: access,foxpro,dbase,mysql四、數(shù)據(jù)庫系統(tǒng)(DataBase System,簡稱DBS) 數(shù)據(jù)庫系統(tǒng)指采用數(shù)據(jù)庫技術(shù)進行數(shù)據(jù)處理的計算機系統(tǒng),由計算機硬件、操作系統(tǒng)、DB、DBMS(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員(DBADataBase Administrator)和用戶組成。 數(shù)據(jù)庫系統(tǒng)(DBS)結(jié)構(gòu)示意圖用戶用戶用戶應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具數(shù)據(jù)庫管理系統(tǒng)操作系統(tǒng)硬件數(shù)據(jù)庫管理員 數(shù)據(jù)庫系統(tǒng)(DBS) 數(shù)據(jù)庫技術(shù):對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護的技術(shù)。 數(shù)據(jù)管理技術(shù)的發(fā)展是和計算機技術(shù)及其應(yīng)用的發(fā)展聯(lián)系在一起的,經(jīng)歷

5、了由低級到高級的過程。1.1.2 數(shù)據(jù)庫管理技術(shù)的產(chǎn)生和發(fā)展一、人工管理階段(20世紀(jì)50年代中期前)計算機的用途:主要是科學(xué)計算典型外存儲設(shè)備:磁帶、卡片等順序設(shè)備管理軟件:無操作系統(tǒng)和管理軟件工作方式:批處理結(jié)論:無法由計算機管理數(shù)據(jù)應(yīng)用程序1應(yīng)用程序2應(yīng)用程序n數(shù)據(jù)集1數(shù)據(jù)集2數(shù)據(jù)集n人工管理階段人工管理具有如下一些特點:(1)數(shù)據(jù)不保存,用完即撤走。(2)數(shù)據(jù)管理工作由程序員通過應(yīng)用程序完成,程序員負(fù)擔(dān)極重。(3)沒有文件概念,數(shù)據(jù)面向應(yīng)用程序,不共享。(4)數(shù)據(jù)與程序間不具有獨立性。二、文件系統(tǒng)階段(20世紀(jì)50年代后期到60年代中期)計算機用途:開始大量用于事務(wù)管理典型外存儲設(shè)備:

6、磁盤、磁鼓等直接存取存儲設(shè)備管理軟件:操作系統(tǒng)包含的文件系統(tǒng)工作方式:聯(lián)機實時處理結(jié)論:數(shù)據(jù)可以交給管理軟件管理應(yīng)用程序1應(yīng)用程序2應(yīng)用程序n文件系統(tǒng)數(shù)據(jù)集1數(shù)據(jù)集2數(shù)據(jù)集n文件系統(tǒng)管理階段這一階段具有如下特點:(1)數(shù)據(jù)以文件形式長期保留于外存,以便反復(fù)處理。(2)由文件系統(tǒng)管理數(shù)據(jù)。(3)數(shù)據(jù)與程序間有了一定獨立性,但獨立性不夠高。(4)數(shù)據(jù)基本上還是面向應(yīng)用程序,共享性差,冗余度大。三、數(shù)據(jù)庫系統(tǒng)階段(20世紀(jì)60年代后期開始)計算機用途:數(shù)據(jù)處理規(guī)模越來越大,應(yīng)用廣泛典型外存儲設(shè)備:大容量磁盤管理軟件:專用數(shù)據(jù)管理軟件工作方式:聯(lián)機實時處理和分布式處理結(jié)論:文件系統(tǒng)無法承擔(dān),出現(xiàn)數(shù)據(jù)庫

7、系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)應(yīng)用程序1應(yīng)用程序2應(yīng)用程序n數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)的特點:一、數(shù)據(jù)結(jié)構(gòu)化 在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)被集中統(tǒng)一管理,數(shù)據(jù)之間的各種復(fù)雜聯(lián)系均有良好體現(xiàn),因此具有十分復(fù)雜的數(shù)據(jù)結(jié)構(gòu),且這種數(shù)據(jù)是面向全組織的,而不是面向單個應(yīng)用的。二、數(shù)據(jù)的共享性高,冗余度低,易擴充 在數(shù)據(jù)庫中,同樣的數(shù)據(jù),可以被多個用戶使用。數(shù)據(jù)共享提高了數(shù)據(jù)利用率,同時也節(jié)約了空間,減少了數(shù)據(jù)存取時間。由于數(shù)據(jù)庫從整體觀點來看待和描述數(shù)據(jù),數(shù)據(jù)面向整個系統(tǒng),因此任何數(shù)據(jù)都可以不重復(fù)存儲,從理論上講,可以完全消除數(shù)據(jù)冗余。同時由于數(shù)據(jù)的高度共享,可以避免數(shù)據(jù)間的不相容和不一致。 數(shù)據(jù)庫系統(tǒng)的擴充性能也非常

8、好,在統(tǒng)一的數(shù)據(jù)集合上,可以根據(jù)應(yīng)用需要增加新的應(yīng)用,并且不會對已有應(yīng)用造成不良影響。三、數(shù)據(jù)獨立性高 由于數(shù)據(jù)庫系統(tǒng)將數(shù)據(jù)管理與程序設(shè)計徹底分離開來,使得DBS中數(shù)據(jù)與程序間具有非常高的獨立性。這種獨立性還因為DBS采用三級模式的體系結(jié)構(gòu)而分為兩個級別: 物理獨立性 用戶的應(yīng)用程序與存儲介質(zhì)上物理數(shù)據(jù)庫中的數(shù)據(jù)是獨立的。在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)的存儲結(jié)構(gòu)與邏輯結(jié)構(gòu)之間由DBMS提供一種映象,當(dāng)數(shù)據(jù)的存儲結(jié)構(gòu)發(fā)生變化時,可以調(diào)整映象使數(shù)據(jù)的邏輯結(jié)構(gòu)保持不變,由于應(yīng)用程序是建立在數(shù)據(jù)的邏輯結(jié)構(gòu)上的,因而應(yīng)用程序不受數(shù)據(jù)物理存儲變化的影響。邏輯獨立性 用戶的應(yīng)用程序與數(shù)據(jù)庫的全局邏輯結(jié)構(gòu)是互相獨立的。

9、數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的邏輯結(jié)構(gòu)由一個全局邏輯結(jié)構(gòu)和若干局部邏輯結(jié)構(gòu)組成,它們之間仍然由DBMS提供映象,應(yīng)用程序是建立在局部邏輯結(jié)構(gòu)之上的,如果數(shù)據(jù)的全局邏輯結(jié)構(gòu)發(fā)生變化,可以通過調(diào)整映象使局部邏輯結(jié)構(gòu)不改變,從而不必修改應(yīng)用程序。四、數(shù)據(jù)由DBMS統(tǒng)一管理和控制 DBMS提供了統(tǒng)一的數(shù)據(jù)控制功能。包括: (1)數(shù)據(jù)的安全性(Security)保護 此項控制保證數(shù)據(jù)被合法使用,防止非法使用和破壞數(shù)據(jù),控制方法如:設(shè)置用戶密碼、規(guī)定用戶權(quán)限等。 (2)數(shù)據(jù)的完整性(Integrity)檢查 此項控制維護數(shù)據(jù)的正確性、有效性和相容性。 (3)并發(fā)(Concurrency)控制 此項控制在多用戶對數(shù)據(jù)庫

10、中的數(shù)據(jù)同時進行存取操作時,防止數(shù)據(jù)發(fā)生錯誤和混亂。 (4)數(shù)據(jù)庫恢復(fù)(Recovery) 此項控制保證在發(fā)生意外造成數(shù)據(jù)破壞時,DBS能進行應(yīng)急處理,把數(shù)據(jù)庫恢復(fù)到某一時刻的正確狀態(tài)。1.2 數(shù)據(jù)模型 數(shù)據(jù)庫中的數(shù)據(jù)不是孤立的,而是互相聯(lián)系的,因為這些數(shù)據(jù)來源于現(xiàn)實世界中相互關(guān)聯(lián)的信息。數(shù)據(jù)模型即是對數(shù)據(jù)(信息)進行抽象、表示和處理的一個工具。對信息進行抽象的模型分為兩個層次:一個是概念數(shù)據(jù)模型(也稱信息模型),另一個是面向機器的結(jié)構(gòu)數(shù)據(jù)模型(如層次模型、網(wǎng)狀模型、關(guān)系模型)。概念數(shù)據(jù)模型是按照用戶觀點對數(shù)據(jù)和信息建模,結(jié)構(gòu)數(shù)據(jù)模型則是按照機器觀點對數(shù)據(jù)建模. 應(yīng)用概念數(shù)據(jù)模型結(jié)構(gòu)數(shù)據(jù)模型現(xiàn)

11、實世界信息世界計算機世界數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)中用于提供信息表示和操作手段的形式構(gòu)架概念模型是現(xiàn)實世界到信息世界的第一層抽象1.2.2 概念模型一、信息世界中的基本概念(1)實體(Entity) 實體是指被認(rèn)識的可區(qū)分的客觀存在。(2)屬性(Attribute) 實體所擁有的某一特性稱為實體的屬性。(3)碼(Key) 唯一標(biāo)識實體的屬性或?qū)傩越M合。(4)域(Domain) 屬性取值的范圍稱為域。(5)實體型(Entity Type) 具有相同屬性的實體所具有的共同特征和性質(zhì)稱為實體型。(6)實體集(Entity Set) 同型實體的集合稱為實體集。(7)聯(lián)系(Relationship) 實體內(nèi)部

12、及實體集之間的相互關(guān)系稱為聯(lián)系。實體內(nèi)部的聯(lián)系發(fā)生在組成實體的各個屬性之間,包括函數(shù)依賴和多值依賴等數(shù)據(jù)依賴。實體集之間的聯(lián)系則分為三類: 一對一聯(lián)系 對于實體集A中的每一個實體,實體集B中有且只有一個實體與之聯(lián)系,則稱為一對一聯(lián)系。記為1:1。 一對多聯(lián)系 對于實體集A中的每一個實體,實體集B中有若干實體與之對應(yīng),反之對于實體集B中的每一個實體,實體集A中只有一個實體與之對應(yīng),則稱A與B有一對多的聯(lián)系,記為1:n。 多對多聯(lián)系 對于實體集A中的每一個實體,實體集B中有若干實體與之對應(yīng),反之對于實體集B中的每一個實體,實體集A中也有若干實體與之對應(yīng),則稱A與B有多對多的聯(lián)系,記為m:n。二、概

13、念模型的表示方法 表示概念模型一般采用實體聯(lián)系方法(EntityRelationship Approach),簡稱ER方法。此方法將現(xiàn)實世界的事物及聯(lián)系抽象成信息結(jié)構(gòu)模型,不考慮數(shù)據(jù)的存儲及效率問題。這種方法的表現(xiàn)形式是用ER圖。 ER圖中包括三種基本成分: 實體型:用方框表示,并在框內(nèi)寫上實體名。 屬性:用橢圓框表示,并在框內(nèi)寫上屬性名,一個實體和它的屬性框間用無向邊連接。 實體間聯(lián)系:用菱形框表示,框內(nèi)寫上聯(lián)系名,并用無向邊將菱形框與有關(guān)實體相連接,在連線邊上標(biāo)出聯(lián)系名稱。有時候聯(lián)系也有屬性,這種聯(lián)系仍然用橢圓框表示,并且也將屬性與聯(lián)系框連接起來?;净? -圖要點圖要點 學(xué)生選修課程E

14、-R圖學(xué)生學(xué)生課程課程選修選修姓名姓名學(xué)號學(xué)號系別系別課程名課程名先修課先修課學(xué)分學(xué)分成績成績用矩形表示實用矩形表示實體集,在框內(nèi)體集,在框內(nèi)寫上實體名寫上實體名用橢圓表示實用橢圓表示實體的屬性體的屬性用無向邊用無向邊把實體與把實體與其屬性連其屬性連接起來接起來用菱形表示實用菱形表示實體間的聯(lián)系體間的聯(lián)系將參與聯(lián)系的實將參與聯(lián)系的實體用線段連接體用線段連接mn聯(lián)系的聯(lián)系的數(shù)量數(shù)量1.2.3 結(jié)構(gòu)數(shù)據(jù)模型 從數(shù)據(jù)庫技術(shù)應(yīng)用于數(shù)據(jù)處理以來,被普遍采用的結(jié)構(gòu)數(shù)據(jù)模型有四種: 層次模型(Hierarchical Model) 網(wǎng)狀模型(Network Model) 關(guān)系模型(Relational Mo

15、del) 面向?qū)ο竽P?Object Oriented Model)1.2.4 層次模型一、層次模型的數(shù)據(jù)結(jié)構(gòu) 層次模型是以各記錄型為結(jié)點的樹,它滿足下面兩個條件:(1)有且只有一個結(jié)點無雙親結(jié)點,稱為父結(jié)點;(2)其他結(jié)點有且只有一個雙親結(jié)點。二、多對多聯(lián)系在層次模型中的表示 非關(guān)系模型(包括層次模型)只能表示一對一和一對多聯(lián)系,多對多聯(lián)系須通過分解轉(zhuǎn)換為多個一對多聯(lián)系。 三、層次模型的數(shù)據(jù)操縱與完整性約束 層次模型的數(shù)據(jù)操縱包含數(shù)據(jù)查詢、插入、刪除和修改等。這些操縱都從模型的根結(jié)點出發(fā)通過各個父子關(guān)系找到相應(yīng)的記錄型和記錄值,然后完成處理。 對于更新操作(插入、刪除和修改),DBMS提供自

16、動的完整性約束。包括插入操作時,缺少雙親結(jié)點的記錄值禁止插入;刪除操作時,如果被刪結(jié)點是一個雙親結(jié)點,則它的子女結(jié)點將自動被刪除;修改操作時,所有副本數(shù)據(jù)(由于冗余結(jié)點造成)也自動同步修改。四、層次模型的優(yōu)缺點 層次模型層次清楚,各結(jié)點間的聯(lián)系簡單,只要知道除根結(jié)點之外的每個結(jié)點的雙親結(jié)點,就能描繪出整個模型的結(jié)構(gòu);采用層次模型的應(yīng)用系統(tǒng)效率高,性能比關(guān)系模型好,同時具有較好的完整性支持。 但是層次模型不能表示兩個以上實體間的復(fù)雜聯(lián)系和非層次聯(lián)系,通過引入冗余數(shù)據(jù)來解決時會造成維護困難;數(shù)據(jù)訪問始終從根結(jié)點出發(fā);對數(shù)據(jù)的更新操作存在較多限制。1.2.5 網(wǎng)狀模型一、一、網(wǎng)狀模型的數(shù)據(jù)結(jié)構(gòu) 網(wǎng)狀

17、模型是以記錄型為結(jié)點的網(wǎng)狀結(jié)構(gòu)(連通圖)。它滿足如下兩個條件: (1)可以有一個以上的結(jié)點無雙親結(jié)點; (2)一個結(jié)點可以有一個以上的雙親結(jié)點。二、網(wǎng)狀模型的操縱與完整性約束 網(wǎng)狀模型和層次模型的數(shù)據(jù)訪問均采用“導(dǎo)航式”,即詳細指明數(shù)據(jù)訪問的存取路徑,不過層次模型中的存取路徑始終從根結(jié)點開始,網(wǎng)狀模型中沒有根結(jié)點,存取路徑可以從任一結(jié)點出發(fā),只要最終能夠到達要訪問的數(shù)據(jù)對象。因此,網(wǎng)狀模型中對一個數(shù)據(jù)進行訪問的存取路徑可能非常多,對數(shù)據(jù)進行操縱時,需要選擇出效率高的一條路徑。 網(wǎng)狀模型沒有一般性的完整性約束條件。但在具體的網(wǎng)狀數(shù)據(jù)庫系統(tǒng)中,會有一些約束和限制。三、網(wǎng)狀模型的存儲結(jié)構(gòu) 網(wǎng)狀模型的

18、結(jié)構(gòu)遠遠復(fù)雜于層次模型,其存儲結(jié)構(gòu)一般采用鏈接法。四、網(wǎng)狀模型的優(yōu)缺點 網(wǎng)狀模型中可以表達實體間的各種復(fù)雜聯(lián)系,其建模能力強于層次模型,能夠更好地描述現(xiàn)實世界;同時由于網(wǎng)狀模型中可以靈活地確定數(shù)據(jù)存儲路徑,數(shù)據(jù)存取效率比較高。 但網(wǎng)狀模型結(jié)構(gòu)復(fù)雜,聯(lián)系數(shù)目可能非常大,增大了用戶負(fù)擔(dān);其次網(wǎng)狀模型的數(shù)據(jù)語言復(fù)雜,用戶不易使用,在設(shè)計應(yīng)用程序時,用戶必須確定存儲路徑。這使得程序設(shè)計的難度加大。1.2.6 關(guān)系模型一、關(guān)系模型的數(shù)據(jù)結(jié)構(gòu) 關(guān)系模型是建立在數(shù)學(xué)概念基礎(chǔ)之上的。此模型是關(guān)系的集合,所有關(guān)系均采用二維表格來表示,即是把所有數(shù)據(jù)及其它們之間的聯(lián)系均設(shè)計成二維表。關(guān)系模型示例學(xué)生登記表關(guān)系模型

19、中的常用術(shù)語 關(guān)系(Relation):由行和列構(gòu)成的二維表。 元組(Tuple):關(guān)系中的一行稱為一個元組。 屬性(Attribute):關(guān)系中的一列稱為一個屬性,每個屬性有一個名稱即屬性名。 主碼(Key):能唯一標(biāo)識關(guān)系中一個元組的屬性或?qū)傩越M合。 域(Domain):屬性的取值范圍。 分量:元組中的一個屬性值。 關(guān)系模式:對關(guān)系所作的描述 關(guān)系模式的形式為: 關(guān)系名(屬性名1,屬性名2,屬性名n) 例如登記學(xué)生信息的關(guān)系可用這樣一個關(guān)系模式表達: 學(xué)生(學(xué)號,姓名,年齡,性別,系,年級)二、關(guān)系模型的操縱與完整性約束 關(guān)系模型的數(shù)據(jù)操縱主要包括查詢、插入、刪除和修改關(guān)系模型的數(shù)據(jù)操縱主

20、要包括查詢、插入、刪除和修改,這些操作在一張表內(nèi)部或多個表之間進行,而且均為集合操這些操作在一張表內(nèi)部或多個表之間進行,而且均為集合操作。關(guān)系模型中的數(shù)據(jù)訪問不是采用作。關(guān)系模型中的數(shù)據(jù)訪問不是采用“導(dǎo)航式導(dǎo)航式”,而是采用,而是采用“說明式說明式”,即用戶只需說明要做什么,而不指出怎么做,即用戶只需說明要做什么,而不指出怎么做,因此用戶不用關(guān)心數(shù)據(jù)訪問的存取路徑,這個工作由因此用戶不用關(guān)心數(shù)據(jù)訪問的存取路徑,這個工作由DBMS去完成。去完成。 在關(guān)系模型中作數(shù)據(jù)操縱時,必須滿足若干完整性約束條在關(guān)系模型中作數(shù)據(jù)操縱時,必須滿足若干完整性約束條件。這些條件分為三大類,它們是:件。這些條件分為三

21、大類,它們是:實體完整性、參照完整實體完整性、參照完整性和用戶定義的完整性性和用戶定義的完整性。三、關(guān)系模型的存儲結(jié)構(gòu) 關(guān)系模型中的實體以及實體之間的聯(lián)系都用表格表示,而表格則以文件的形式存儲。四、關(guān)系模型的優(yōu)缺點 關(guān)系模型具有嚴(yán)密的數(shù)學(xué)基礎(chǔ),可以保證數(shù)據(jù)庫系統(tǒng)在理論上的正確性;關(guān)系模型概念單一,基本的數(shù)據(jù)組織方式是表格,結(jié)構(gòu)簡單、清晰、易于理解;關(guān)系模型中的操作對象和結(jié)果都是關(guān)系,且存取路徑對用戶透明,減少了用戶的負(fù)擔(dān),提高了數(shù)據(jù)獨立性。 關(guān)系模型存在一個嚴(yán)重問題,就是數(shù)據(jù)的查詢效率非常低,關(guān)系這種數(shù)據(jù)結(jié)構(gòu)使得數(shù)據(jù)間的聯(lián)系是隱蔽的,關(guān)系模型中在通過聯(lián)系訪問數(shù)據(jù)時會出現(xiàn)大量無價值的中間數(shù)據(jù)。在

22、采用關(guān)系模型的數(shù)據(jù)庫系統(tǒng)中,通常使用查詢優(yōu)化技術(shù)來改善查詢效率,但這會增加DBMS的開發(fā)難度。1.2.6 對象模型 對象模型:對象模型: 使用面向?qū)ο蠹夹g(shù)(使用面向?qū)ο蠹夹g(shù)(Object-Oriented,簡稱,簡稱OO)來表示信息世界的實體類型及實體之間聯(lián)系的模型稱來表示信息世界的實體類型及實體之間聯(lián)系的模型稱為對象模型。為對象模型。狀態(tài): 屬性屬性集合 行為: 操作方法集合 對象對象封裝封裝消息消息對象示意圖 1.3.1 數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu) 單用戶結(jié)構(gòu) 主從式結(jié)構(gòu) 分布式結(jié)構(gòu) 客戶/服務(wù)器結(jié)構(gòu) 瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器結(jié)構(gòu) 并行結(jié)構(gòu)1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.3.1.1 單用戶

23、數(shù)據(jù)庫系統(tǒng) 整個數(shù)據(jù)庫系統(tǒng)(應(yīng)用程序、DBMS、數(shù)據(jù))裝在一臺計算機上,為一個用戶獨占,不同機器之間不能共享數(shù)據(jù)。 早期的最簡單的數(shù)據(jù)庫系統(tǒng)1.3.1.2 主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 一個主機帶多個終端的多用戶結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng),包括應(yīng)用程序、DBMS、數(shù)據(jù),都集中存放在主機上,所有處理任務(wù)都由主機來完成。各個用戶通過主機的終端并發(fā)地存取數(shù)據(jù)庫,共享數(shù)據(jù)資源。主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)主機主機終終端端主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 優(yōu)點易于管理、控制與維護。 缺點當(dāng)終端用戶數(shù)目增加到一定程度后,主機的任務(wù)會過分繁重,成為瓶頸,從而使系統(tǒng)性能下降。系統(tǒng)的可靠性依賴主機,當(dāng)主機出現(xiàn)故障時,整個系

24、統(tǒng)都不能使用。1.3.1.3 分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫中的數(shù)據(jù)在邏輯上是一個整體,但物理地分布在計算機網(wǎng)絡(luò)的不同結(jié)點上。網(wǎng)絡(luò)中的每個結(jié)點都可以獨立處理本地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行局部應(yīng)用??梢酝瑫r存取和處理多個異地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行全局應(yīng)用。分布式結(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。1.3.1.4 客戶服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 把DBMS功能和應(yīng)用分開網(wǎng)絡(luò)中某個(些)結(jié)點上的計算機專門用于執(zhí)行DBMS功能,稱為數(shù)據(jù)庫服務(wù)器,簡

25、稱服務(wù)器。其他結(jié)點上的計算機安裝DBMS的外圍應(yīng)用開發(fā)工具,用戶的應(yīng)用系統(tǒng),稱為客戶機??蛻舴?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é)合??蛻舴?wù)器結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 優(yōu)點: 客戶端的用戶請求被傳送到數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫服務(wù)器進行處理后,只將結(jié)果返回給用戶,從而顯著減少了數(shù)據(jù)傳輸量。 數(shù)據(jù)庫更加開放: 客戶與服務(wù)器一般都能在多種不同的硬件和軟件平臺上運行。 可以使用不同廠商的數(shù)據(jù)庫應(yīng)用開發(fā)工具。 客戶服務(wù)器結(jié)構(gòu)的缺點: 系統(tǒng)安裝復(fù)雜,工作量大。 應(yīng)用維護困難,難于保密,造成安全

26、性差。 相同的應(yīng)用程序要重復(fù)安裝在每一臺客戶機上,從系統(tǒng)總體來看,大大浪費了系統(tǒng)資源。 系統(tǒng)規(guī)模達到數(shù)百數(shù)千臺客戶機,它們的硬件配置、操作系統(tǒng)又常常不同,要為每一個客戶機安裝應(yīng)用程序和相應(yīng)的工具模塊,其安裝維護代價便不可接受了。1.3.1.5 并行數(shù)據(jù)庫系統(tǒng) 利用并行計算機系統(tǒng)提供的并行處理能力,通過并行地使用多個CPU和硬盤來提高處理速度和I/O速度,從而加速數(shù)據(jù)庫的活動。1.3 數(shù)據(jù)庫系統(tǒng)模式1.3.2.1 數(shù)據(jù)庫系統(tǒng)模式的概念 對數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征所作的描述就稱為是數(shù)據(jù)庫系統(tǒng)的模式(Schema)。這種描述只刻畫了數(shù)據(jù)集合的“型”,不涉及到具體的數(shù)據(jù)“值”。和型相對應(yīng)的值有若干,每一個值稱為模式的一個實例(Instance)。 模式反映了數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的結(jié)構(gòu)和相互聯(lián)系,是一種相對穩(wěn)定的描述;實例反映了數(shù)據(jù)庫系統(tǒng)在某一時刻的狀態(tài),是一種動態(tài)的數(shù)據(jù)集。 數(shù)據(jù)庫系統(tǒng)的典型模式結(jié)構(gòu)是三級模式、兩級映象結(jié)構(gòu)。1.3.2.2 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu) 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)由外模式、模式、內(nèi)模式以及外模式/模式映象、模式/內(nèi)模式映象組成。數(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

提交評論