版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫系統(tǒng)原理,第一章 數(shù)據(jù)庫概論,本課程解決的問題:如何有效的組織、管理計(jì)算機(jī)系統(tǒng)中的大量的數(shù)據(jù)? 引出: DB的概念 方法 理論 技術(shù) 本章的重點(diǎn): DB的體系結(jié)構(gòu) DBS結(jié)構(gòu),第一節(jié) 數(shù)據(jù)管理技術(shù)發(fā)展,經(jīng)歷三個階段: 人工管理階段(20世紀(jì)50年代中期以前) 文件系統(tǒng)管理階段(20世紀(jì)50年代后期至 60年代中期) 數(shù)據(jù)庫管理階段(20世紀(jì)60年代末開始),一 人工管理階段,存儲介質(zhì): 磁帶、卡片、紙帶(無磁盤)主要用于科學(xué)計(jì)算 特點(diǎn):數(shù)據(jù)量小、計(jì)算復(fù)雜。 數(shù)據(jù)管理的特點(diǎn): (1)數(shù)據(jù)不保存在計(jì)算機(jī)中。 (2)只有程序的概念,無文件的概念。 (3)沒有專用的軟件對數(shù)據(jù)進(jìn)行管理。 (4)數(shù)
2、據(jù)面向應(yīng)用,程序與數(shù)據(jù)不具有獨(dú)立性。,二 文件系統(tǒng)管理階段,存儲介質(zhì):出現(xiàn)了磁盤和磁鼓。 應(yīng)用:由科學(xué)計(jì)算轉(zhuǎn)向于信息管理。 特點(diǎn):計(jì)算簡單,數(shù)據(jù)量大。 數(shù)據(jù)管理的特點(diǎn): (1)數(shù)據(jù)要求長期保存在磁盤上。 (2)數(shù)據(jù)不再屬于某個特定的程序,可重復(fù)使用。 (3)數(shù)據(jù)邏輯結(jié)構(gòu)和物理結(jié)構(gòu)有區(qū)別;程序與數(shù)據(jù)之間具 有“設(shè)備獨(dú)立”。 (4)文件組織呈現(xiàn)多樣化:索引文件,鏈接文件和散列文 件等。,文件系統(tǒng)管理數(shù)據(jù)的缺點(diǎn): (1) 數(shù)據(jù)冗余大。 (2)數(shù)據(jù)操作具有不一致性。 (3) 數(shù)據(jù)缺乏獨(dú)立性。 (4)數(shù)據(jù)之間聯(lián)系弱。 (5)數(shù)據(jù)管理無法實(shí)施統(tǒng)一的標(biāo)準(zhǔn)。,三 數(shù)據(jù)庫管理階段,1、特點(diǎn): (1) 采用了復(fù)雜
3、的數(shù)據(jù)模型表示數(shù)據(jù)結(jié)構(gòu)。 (2) 有較高的數(shù)據(jù)獨(dú)立性。 數(shù)據(jù)的邏輯獨(dú)立:當(dāng)數(shù)據(jù)整體邏輯結(jié)構(gòu)改變時,盡量不影響用戶的 邏輯結(jié)構(gòu)和應(yīng)用程序 。 數(shù)據(jù)的物理獨(dú)立:當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)改變時,不影響整體的邏輯結(jié) 構(gòu)以及應(yīng)用程序 。 (3) 減少了數(shù)據(jù)的無控冗余。 (4) 數(shù)據(jù)庫系統(tǒng)為用戶提供了方便的用戶接口來使用數(shù)據(jù)庫。 (5) 數(shù)據(jù)操作的基本單位是數(shù)據(jù)項(xiàng)而不是記錄,增強(qiáng)了系統(tǒng)的靈活性。 (6) 系統(tǒng)提供了4個方面的數(shù)據(jù)控制功能:數(shù)據(jù)庫的恢復(fù)、并發(fā)控制、 數(shù)據(jù)完整性和數(shù)據(jù)的安全性。,2、4個重要的概念 (1)數(shù)據(jù)庫(Database):能為多個用戶所共享,具有最小冗余 度,數(shù)據(jù)間聯(lián)系密切,而又有較高數(shù)據(jù)獨(dú)
4、立性的數(shù)據(jù)存儲庫。 (2)數(shù)據(jù)庫管理系統(tǒng)(DBMS):位于用戶與OS之間的一層數(shù)據(jù)管 理軟件,它能為用戶或應(yīng)用程序提供訪問DB的方法,包括DB 的建立、查詢、更新及各種數(shù)據(jù)控制。 (3)數(shù)據(jù)庫系統(tǒng)(DBS):實(shí)現(xiàn)有組織地,動態(tài)地存儲大量關(guān)聯(lián)數(shù) 據(jù),方便多用戶訪問計(jì)算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng). (4)數(shù)據(jù)庫技術(shù):是一門研究數(shù)據(jù)庫的結(jié)構(gòu)、存儲、管理和使用的 軟件科學(xué)。,第二節(jié) 數(shù)據(jù)描述,一 三個領(lǐng)域的數(shù)據(jù)描述 從事物的特性到計(jì)算機(jī)中的數(shù)據(jù)表示要經(jīng)歷三個領(lǐng)域: 現(xiàn)實(shí)世界、信息世界和計(jì)算機(jī)世界。,(1)現(xiàn)實(shí)世界:人們頭腦之外的客觀世界用表格、報(bào)表、圖表記錄的數(shù)據(jù)。 (2)信息世界:用文字和符號
5、記載下來實(shí)現(xiàn)世界相關(guān)數(shù)據(jù)。 常用術(shù)語: 實(shí)體(entity):客觀存在并可相互區(qū)別的事物稱為實(shí)體。 實(shí)體集:同類、性質(zhì)相同的實(shí)體的集合。 屬性(attribute):實(shí)體的某種特性。 實(shí)體標(biāo)識符:能唯一標(biāo)識每一個實(shí)體的屬性或?qū)傩约?(3)計(jì)算機(jī)世界:信息世界的信息在機(jī)內(nèi)的數(shù)據(jù)存放形式。 常用術(shù)語: 字段(field):標(biāo)記實(shí)體屬性的命名單位。 記錄(record):字段的有序集合。 文件(file):同類記錄的匯集。 關(guān)鍵字(key):能唯一標(biāo)識文件中每個記錄的字段或字段集。,信息世界與計(jì)算機(jī)世界的術(shù)語對應(yīng)關(guān)系 信息世界 計(jì)算機(jī)世界 實(shí)體 記錄 實(shí)體集 文件 屬性 字段 實(shí)體標(biāo)識符 關(guān)鍵字,
6、二 數(shù)據(jù)聯(lián)系的描述,實(shí)體內(nèi)部的聯(lián)系:反映在數(shù)據(jù)上指記錄內(nèi)部字段間的聯(lián)系 實(shí)體聯(lián)系有兩類: 實(shí)體間的聯(lián)系:反映在數(shù)據(jù)上指記錄之間的聯(lián)系 同一實(shí)體集中各實(shí)體的聯(lián)系(簡單聯(lián)系) 實(shí)體間的聯(lián)系: 不同實(shí)體集中各實(shí)體的聯(lián)系(復(fù)雜聯(lián)系) 1對1聯(lián)系 不同實(shí)體集之間的聯(lián)系分為三類: 1對多聯(lián)系 多對多聯(lián)系,1、1對1聯(lián)系,如果實(shí)體集E1中每個實(shí)體至多與實(shí)體集E2中一個實(shí)體有聯(lián)系,反之亦然,則E1對E2稱為“1對1”的聯(lián)系 ,記為:1:1。,E1,E2,圖形表示為:,E1,E2,E1,E2,或,1:1,2、1對多的聯(lián)系,如果實(shí)體集E1中每個實(shí)體與實(shí)體集E2中任意個(零個或多個)實(shí)體有聯(lián)系,而E2中每個實(shí)體至多
7、和E1中一個實(shí)體有聯(lián)系,則稱E1與E2的聯(lián)系為“1對多”聯(lián)系, 記為:1:m。,E1,E2,圖形表示為:,E1,E1,E2,E2,或,1:m,3、多對多的聯(lián)系,如果實(shí)體集E1中每個實(shí)體與實(shí)體集E2中任意個(零個或多個)實(shí)體有聯(lián)系,反之亦然,則稱E1與E2的聯(lián)系是“多對多”的聯(lián)系,記為n:m。,E1,E2,圖形表示為:,E1,E2,E2,E1,或,n:m,注:,記錄中的字段之間(屬性之間)也存在這三種聯(lián)系。 三種聯(lián)系的聯(lián)系: 實(shí)體集之間的復(fù)雜聯(lián)系:,1:1,1:n,n:m,航班,駕駛員,飛機(jī),零件,一個零件由若干個子零件組成,而一個零件又是其他零件的子零件。,第三節(jié) 數(shù)據(jù)模型,表示實(shí)體類型及實(shí)體
8、間聯(lián)系的模型。 數(shù)據(jù)庫結(jié)構(gòu)是以數(shù)據(jù)模型為基礎(chǔ)構(gòu)建的。,一、數(shù)據(jù)模型的分類,(1) 概念模型(語義模型):獨(dú)立于計(jì)算機(jī),用來描述特定組織關(guān)心的信息結(jié)構(gòu),著重信息之間的語義表達(dá),如:實(shí)體聯(lián)系模型(ER模型)。 (2)結(jié)構(gòu)模型:面向DB邏輯結(jié)構(gòu)的模型,如:層次、網(wǎng)狀、關(guān)系和面向?qū)ο竽P汀?兩大類:,結(jié)構(gòu)模型的組成(模型3要素) 數(shù)據(jù)結(jié)構(gòu):實(shí)體類型和聯(lián)系表達(dá)與實(shí)現(xiàn); 數(shù)據(jù)操作:檢索與更新操作; 數(shù)據(jù)完整性約束:數(shù)據(jù)及聯(lián)系應(yīng)具有的約束和依賴規(guī)則。,1. 概念模型與結(jié)構(gòu)模型的關(guān)系:,2. 模型的特點(diǎn) (1)概念模型特點(diǎn): 表達(dá)了系統(tǒng)用戶對應(yīng)用項(xiàng)目所涉及數(shù)據(jù)的整體邏輯結(jié)構(gòu); 概念模型是從用戶需求的觀點(diǎn)出發(fā),
9、對數(shù)據(jù)的建模; 概念模型獨(dú)立于計(jì)算機(jī)硬件和軟件; 概念模型是DB設(shè)計(jì)人員與用戶進(jìn)行交流的工具。 (2)邏輯模型特點(diǎn): 邏輯模型表達(dá)了DB整體邏輯結(jié)構(gòu); 邏輯模型是從數(shù)據(jù)庫實(shí)現(xiàn)的觀點(diǎn)出發(fā),對數(shù)據(jù)的建模; 邏輯模型獨(dú)立于計(jì)算機(jī)硬件,依賴于軟件; 邏輯模型是DB設(shè)計(jì)人員與應(yīng)用程序員進(jìn)行交流的工具。 邏輯模型主要有三種:網(wǎng)狀、層次、關(guān)系。 (3)外部模型特點(diǎn): 外部模型是邏輯模型的邏輯子集;, 獨(dú)立于計(jì)算機(jī)硬件,依賴于軟件; 表達(dá)單個用戶使用數(shù)據(jù)庫的觀點(diǎn)。 劃分外部模型的優(yōu)點(diǎn): 簡化了用戶的觀點(diǎn); 有助于DB的安全和保護(hù); 外部模型是對概念模型的支持。 (4)內(nèi)部模型特點(diǎn): 內(nèi)部模型(物理模型)是DB
10、最低層的抽象。描述數(shù)據(jù)在磁盤或磁帶上的存儲方式。存儲設(shè)備。存取方法的細(xì)節(jié); 內(nèi)部模型依賴于軟件和硬件; 注意: 對于層次和網(wǎng)狀DB,需要精心設(shè)計(jì)內(nèi)部模型。對于關(guān)系DB不必考慮內(nèi)部模型的設(shè)計(jì)細(xì)節(jié),由DBMS自動完成。 物理DB是DB唯一的物理實(shí)體。,二、E-R模型,E-R模型:E-R圖表示現(xiàn)實(shí)世界中實(shí)體及實(shí)體間聯(lián)系的模型。 用途:用于DB概念設(shè)計(jì)階段,描述DB概念模式。 構(gòu)成: 矩形框:其內(nèi)寫上實(shí)體名,表示實(shí)體類型; 菱形框:其內(nèi)寫上聯(lián)系名,表示聯(lián)系類型; 橢圓框:其內(nèi)寫上屬性名,表示實(shí)體或聯(lián)系的屬性; 直線:連接實(shí)體,聯(lián)系及屬性框,傍邊可標(biāo)注聯(lián)系的種類(1:1,1:n或n:m)。,例:,有語義
11、:“一個部門擁有多個倉庫,倉庫中存放了多種零件,多種零件存放在不同的倉庫中。”畫出該語義的E-R圖。,部門號,部門名,電話號,倉庫名,地址,電話號碼,零件號,零件名,數(shù)量,型號,部門,擁有,儲存,倉庫,零件,1,n,n,m,例:某學(xué)生宿舍管理系統(tǒng),涉及的部分信息如下: 學(xué)生:學(xué)號,姓名,性別,專業(yè),班級。 寢室:寢室號,房間電話。 管理員:員工號,姓名,聯(lián)系電話。 其中:每個寢室可同時住宿多名學(xué)生,每名學(xué)生只分配一個寢室;每個寢室指定其中一名學(xué)生擔(dān)當(dāng)寢室長;每個管理員同時管理多個寢室,但每個寢室只有一名管理員。 建立一個反映上述局部應(yīng)用的E-R模型。 解: E-R模型如下:,實(shí)體間聯(lián)系的特殊情
12、況:,三元聯(lián)系: 回路表示的實(shí)體集內(nèi)部的聯(lián)系: 語義(概念)模型描述的優(yōu)點(diǎn): 在高層上直接表達(dá)實(shí)體間聯(lián)系的語義,容易理解; 不涉及數(shù)據(jù)組織的具體結(jié)構(gòu),與計(jì)算機(jī)無關(guān)。,供應(yīng)者,工程,零件,零件,M,組裝,m,n,k,m,n,三、結(jié)構(gòu)模型,層次模型 傳統(tǒng)的結(jié)構(gòu)模型: 網(wǎng)狀模型 關(guān)系模型,用樹型結(jié)構(gòu)或森林表表示實(shí)體及實(shí)體聯(lián)系的模型。 層次模型樹型結(jié)構(gòu): 樹的結(jié)點(diǎn)是記錄類型,有且僅有一個無父的結(jié)點(diǎn)(樹的根),其它結(jié)點(diǎn)僅有一個父結(jié)點(diǎn); 父子結(jié)點(diǎn)之間只能是1對多或則1對1的聯(lián)系,不能是多對多。,1、層次模型,例:,d# dname,t# tname,c# cname credit,s# sname,dep
13、t,teacher,student,course,特點(diǎn): 層次性:實(shí)體 之間的聯(lián)系是單向的樹任一結(jié)點(diǎn)只有唯一一條自根到達(dá) 它的路徑; 有序性:從左到右的順序規(guī)則了任一結(jié)點(diǎn)所有子樹的先后次序; 原子性:結(jié)點(diǎn)中記錄的任何屬性均不可再分的簡單類型數(shù)據(jù); 父子結(jié)點(diǎn)之間是1對多(或則1對1)的聯(lián)系。 優(yōu)點(diǎn):層次模型的DB中,結(jié)點(diǎn)記錄之間是通過指針聯(lián)系,查詢效率高。 缺點(diǎn): 結(jié)點(diǎn)之間的聯(lián)系只能是1對多,因此,對于多對多聯(lián)系需要轉(zhuǎn)變且轉(zhuǎn)換較為復(fù)雜。 由于樹的層次性和順序性的要求,引起數(shù)據(jù)查詢和更新操作較為復(fù)雜。 典型的層次DB系統(tǒng):IMS。,2、網(wǎng)狀模型,網(wǎng)狀模型DB的結(jié)構(gòu)(DBTG報(bào)告中的網(wǎng)狀模型,簡單模
14、型) 用記錄類型為結(jié)點(diǎn)的網(wǎng)狀來表示實(shí)體與實(shí)體間1對多聯(lián)系的模型。,例:,A,C,D,B,去掉層次模型中的下列限制: 最多只有一個無父的結(jié)點(diǎn)的根(有多個無父結(jié)點(diǎn)) 其它的所有結(jié)點(diǎn)只有一個父結(jié)點(diǎn)(可能有多個父結(jié)點(diǎn)) 所以,層次DB模型是DBTG中網(wǎng)狀模型的特殊形式。,優(yōu)點(diǎn):記錄之間用指針連接,聯(lián)系容易,查詢效率高. 缺點(diǎn):編寫應(yīng)用程序復(fù)雜,程序員必須熟知DB的邏輯結(jié)構(gòu)。,典型網(wǎng)狀DBS: TOTAL DMS1100 IDMS IDS/,3、關(guān)系模型,用二維表格結(jié)構(gòu)表達(dá)實(shí)體集,用外關(guān)鍵字表示實(shí)體間聯(lián)系的模型。 關(guān)系模型:關(guān)系模式組成的集合。,1、關(guān)系模型的物理概念 關(guān)系就是俗稱的二維表:,學(xué)生登記表
15、,屬性(字段),元組 (記錄值),屬性值集,表頭:稱為關(guān)系的框架,即為屬性集。 構(gòu)成模式:學(xué)生(學(xué)號,姓名,性別,系名,專業(yè)名),必須滿足下列條件的二維表: 表中的每一列是不可再分的基本數(shù)據(jù)項(xiàng)(初等項(xiàng))。 每列指定一個相異的名稱,類型相同。 各行相異不允許重復(fù)(無重元組)。 列行次序無關(guān)緊要。,例:,描述邊、點(diǎn)組成的空間封閉的多邊形的關(guān)系:,x,y,z,E3,E1,E2,V3(4,3,6),V2(5,2,1),V1(0,0,0),模式:s(s#,line) v(v#,x,y,z) sv(s#,v#),關(guān)系模型的數(shù)學(xué)概念:笛卡爾積中有意義的子集稱為關(guān)系。,邊/點(diǎn)關(guān)系,描述邊/點(diǎn)之間的多對多的聯(lián)系
16、,邊關(guān)系,點(diǎn)關(guān)系,2、關(guān)系模型與層次模型,網(wǎng)狀模型的差別: 用關(guān)鍵字而不是用指針導(dǎo)航數(shù)據(jù)(建立聯(lián)系); 關(guān)系模型具有嚴(yán)密的數(shù)學(xué)基礎(chǔ)和操作的代數(shù)性質(zhì),網(wǎng)狀、層次無; 簡單靈活地表達(dá)實(shí)體間的復(fù)雜關(guān)系; 表格簡單、易懂,編程方便,不涉及到存儲結(jié)構(gòu),訪問的細(xì)節(jié)。,主要的關(guān)系DBMS產(chǎn)品:DB2,ORACLE,F(xiàn)OXPRO,ACCESS等。,4、面向?qū)ο竽P停╫bject-oriented-model),對于復(fù)雜的數(shù)據(jù)對象,如CAD數(shù)據(jù),圖形數(shù)據(jù)等需要新的概念及方法描述。 面向?qū)ο竽P妥罨镜母拍钍牵簩ο蠛皖悺?對象(object) 對象是現(xiàn)實(shí)世界中實(shí)體的模型化。 組成:每個對象有唯一的標(biāo)識符,把狀態(tài)和
17、行為封裝在一起。 其中:狀態(tài)是對象的屬性值集;行為是在狀態(tài)上操作的方法集。,類(class) 類:將屬性集和方法集相同的所有對象組合在一起,構(gòu)成一個類。 其中:類的屬性值域可以是基本數(shù)據(jù)類型(整,實(shí),字符串),也可以是 記錄型或集合型(嵌套)。,類層次:系統(tǒng)中所有的類組成一個有根的有向無環(huán)圖。 一個類可以從類層次中直接或間接祖先那里繼承所有的屬性和方法。(實(shí)現(xiàn)軟件重用),例如:有E-R模型:,J#,jname,date,P#,pname,color,weight,saddr,sname,S#,total,project,part,supplier,pp,ps,quantity,m,n,m,n,
18、根據(jù)上面的E-R圖,設(shè)計(jì)如下面向?qū)ο竽P停?PR PA TOTAL,PA PS QUANTITY,j# Jname date,p# Pname Color weight,S# Sname saddr,類pp,類ps,類project,類part,類supplier,其中: PR取值為類project中的對象 PA取值為類part中的對象 PA取值為類part中的對象 PS取值為類supplier中的對象,類PP,類PS,5. E-R模型與結(jié)構(gòu)模型的轉(zhuǎn)換關(guān)系,E-R模型屬于語義模型,獨(dú)立于機(jī)器,用于信息世界描述試題及實(shí)體之間的聯(lián)系。 E-R模型用于DB設(shè)計(jì)階段的概念設(shè)計(jì)階段。 E-R模型很方便地
19、轉(zhuǎn)換成結(jié)構(gòu)模型中之一個模型:,E-R模型:,E1,E2,R,關(guān)系模型,層次模型,網(wǎng)狀模型,面向?qū)ο竽P?轉(zhuǎn)換規(guī)則,第四節(jié) DB的體系結(jié)構(gòu),一. 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu) 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)是指最終用戶所看到的數(shù)據(jù)庫系統(tǒng)使用方下的結(jié)構(gòu)形式,可分為:集中式、分布式、客戶機(jī)服務(wù)器等。 集中式數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu) 集中式數(shù)據(jù)庫系統(tǒng)可分為:單用戶和多用戶系統(tǒng) 。 (1)單用戶數(shù)據(jù)庫系統(tǒng) 在單用戶系統(tǒng)中,數(shù)據(jù)庫、DBMS和應(yīng)用程序都裝在一臺計(jì)算機(jī)上,由一個用戶獨(dú)占,并且系統(tǒng)一次只能處理一個用戶的請求。 (2)多用戶數(shù)據(jù)庫系統(tǒng) 多用戶數(shù)據(jù)庫系統(tǒng)指在一個主機(jī)中集中存放數(shù)據(jù)庫、DBMS和應(yīng)用程序,供多個與之相聯(lián)系的終端
20、用戶并發(fā)地共同使用數(shù)據(jù)庫,由一個處理機(jī)同時處理多個用戶事務(wù)的活動。,2. 分布式數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu) 分布式數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)是指數(shù)據(jù)庫被劃分邏輯關(guān)聯(lián)而物理分布在計(jì)算機(jī)網(wǎng)絡(luò) 中不同場地(又稱結(jié)點(diǎn))的計(jì)算機(jī)中,并具有整體操作與分布控制數(shù)據(jù)能力的 數(shù)據(jù)庫系統(tǒng),,計(jì)算機(jī) 系統(tǒng),計(jì)算機(jī) 系統(tǒng),計(jì)算機(jī) 系統(tǒng),在分布式數(shù)據(jù)庫系統(tǒng)中,一般每個場地是一個集中式數(shù)據(jù)庫系統(tǒng),它們都有獨(dú)立處理能力并能完成局部應(yīng)用;而每一個場地的系統(tǒng)也參與全局應(yīng)用程序的執(zhí)行,全局應(yīng)用程序可通過網(wǎng)絡(luò)訪問系統(tǒng)中多個場地的數(shù)據(jù)。,分布式數(shù)據(jù)庫系統(tǒng)的特點(diǎn): 分布性:數(shù)據(jù)庫中的數(shù)據(jù)分布地存儲在不同的場地。(有別于集中式數(shù)據(jù)庫) 自治性:每個場地是一個自
21、主獨(dú)立的數(shù)據(jù)庫系統(tǒng),即為集中式數(shù)據(jù)庫系統(tǒng)。(有別于分散式數(shù)據(jù)庫) 全局性:各自治站點(diǎn)協(xié)同工作使數(shù)據(jù)庫邏輯上成為一個整體,以支持各用戶的全局應(yīng)用。(有別于網(wǎng)絡(luò)的分散式數(shù)據(jù)庫),客戶機(jī)服務(wù)器數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu) 客戶機(jī)服務(wù)器(clientServer,簡稱CS)數(shù)據(jù)庫系統(tǒng)將DBMS功能管理程序單獨(dú)存放到網(wǎng)絡(luò)中某個或某些場地的計(jì)算機(jī)中,而將用戶應(yīng)用程序安裝到其余場地的計(jì)算機(jī)中。安裝DBMS功能管理程序系統(tǒng)的計(jì)算機(jī)稱為數(shù)據(jù)庫服務(wù)器,簡稱服務(wù)器;存儲用戶應(yīng)用程序的計(jì)算機(jī)稱為客戶機(jī)。,在客戶機(jī)服務(wù)器數(shù)據(jù)庫系統(tǒng)中,客戶機(jī)通過計(jì)算機(jī)網(wǎng)絡(luò)向服務(wù)器提出計(jì)算請求,服務(wù)器經(jīng)過計(jì)算,將結(jié)果返回客戶機(jī),減少了網(wǎng)上數(shù)據(jù)的傳輸量,
22、提高了系統(tǒng)的性能、吞吐量和負(fù)載能力。,三級模式和兩級變換結(jié)構(gòu) 模式是由結(jié)構(gòu)模型定義而來,對應(yīng)有:外模式、模式和內(nèi)模式。 兩級變換:外模式/模式、模式/內(nèi)模式。,DB系統(tǒng)結(jié)構(gòu),二.數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),1、三級模式結(jié)構(gòu) 外模式(子模式,用戶模式):由外部模型定義而來。 概念模式(模式):由邏輯模型定義而來。 內(nèi)模式(物理模式,存儲模式):由內(nèi)部模型定義而來。,外模式(external schema) 外模式:是用戶與DBS的接口,是單個用戶所使用的那一部分?jǐn)?shù)據(jù)視圖的描述。程序員 表現(xiàn)形式:DB局部數(shù)據(jù)的邏輯結(jié)構(gòu),由若干外部記錄類型組成。(I/O與視圖區(qū)別:數(shù)據(jù),命名,組合,次序,種類等不同) 外模式通
23、過“外模式DDL”定義,并通過數(shù)據(jù)庫操縱語言DML操縱。 一個DB由若干個子模式,為多個應(yīng)用程序共享。,概念模式(conceptual schema) 概念模式(conceptual schema): DB中全部的整體數(shù)據(jù)邏輯視圖的描述。DBA 表現(xiàn)形式:DB全局?jǐn)?shù)據(jù)邏輯描述:數(shù)據(jù)名、類型、記錄間的聯(lián)系,操作,完整性,安全性要求。 概念模式通過“模式DDL”定義: 子模式是模式的邏輯子集;DBS中只有一個模式它是子模式的合成。均不涉及存儲結(jié)構(gòu)及訪問技術(shù)等細(xì)節(jié)。 子模式與模式可能有若干差別:數(shù)據(jù)名,次序,數(shù)據(jù)的類型等。 模式/子模式之間映象由DBMS完成。,內(nèi)模式(internal schema
24、) 內(nèi)模式:DB在物理存儲方面的描述,是物理存儲數(shù)據(jù)視圖的描述。 表現(xiàn)形式:DB內(nèi)部記錄類型,索引和文件組織方式及控制的的描述細(xì)節(jié)。 內(nèi)模式通過“內(nèi)模式DDL”定義。 內(nèi)模式只有一個,內(nèi)模式/模式映象由DBMS完成。,2、兩級變換 外模式/模式映象:DBMS定義外模式與概念模式間的對應(yīng)性(內(nèi)部記錄與外 部記錄的對應(yīng)性) 外模式/模式映象都是在外模式中描述。 模式/內(nèi)模式映象:定義模式與內(nèi)模式之間的對應(yīng)性。由于數(shù)據(jù)中記錄類型, 字段類型,命名組成可能不一樣,需要說明概念記錄和內(nèi) 部記錄的對應(yīng)關(guān)系。 模式/內(nèi)模式映象一般在內(nèi)模式中描述。,二、數(shù)據(jù)兩級獨(dú)立性,數(shù)據(jù)的物理獨(dú)立性 數(shù)據(jù)的邏輯獨(dú)立性,分為
25、:,1、數(shù)據(jù)的物理獨(dú)立性 DBS中對DB的內(nèi)模式的修改盡量不影響概念模式的修改,稱數(shù)據(jù)具有物理獨(dú) 立性。 如:DB的存儲設(shè)備和存取方法有所變化,使模式/內(nèi)模式映象進(jìn)行相應(yīng)修改,但概念模式盡可能保持不變。 2、數(shù)據(jù)的邏輯獨(dú)立性 對DB 的概念模式的修改,盡量不影響外模式和應(yīng)用程序的變化,稱數(shù)據(jù)具有邏輯獨(dú)立性。 概念模式修改如增加記錄類型或數(shù)據(jù)項(xiàng),外模式/概念模式映象隨之相應(yīng)修改,但使外模式盡可能保持不變。,三、用戶界面,I/O視圖是用戶的界面,通過數(shù)據(jù)操縱語言(DML)編寫的程序而完成的圖表等數(shù)據(jù)顯示或打印形式。,自含型DML:編程語言本身含有DML語句, DML兩種方式: 如:FoxPro。
26、宿主型DML:DML嵌入到高級語言(如C等)中使用, 如:SQL語言。,第五節(jié) 數(shù)據(jù)庫系統(tǒng)(DBS) 一、DBS的構(gòu)成,數(shù)據(jù)庫(DB):存放在磁盤中的物理數(shù)據(jù)庫。 硬件: DBS的物理支持。 DBMS:DBS管理功能的體現(xiàn) 其它軟件(OS等):DBS的軟件支持 終端用戶:使用程序的非計(jì)算機(jī)人員。 人員:包括:專業(yè)人員:數(shù)據(jù)庫設(shè)計(jì)的上層人員如系統(tǒng)分析員 程序員:編寫應(yīng)用程序的人員。 數(shù)據(jù)庫管理員(DBA:database administrator): DBS責(zé)任的承擔(dān)者。,軟件:,DBS的構(gòu)成:,1、DB 一個組織中,與各項(xiàng)應(yīng)用有關(guān)的全部數(shù)據(jù)集合。 應(yīng)用數(shù)據(jù)的集合,稱為物理庫。 各項(xiàng)數(shù)據(jù)結(jié)構(gòu)的
27、描述,稱為描述庫,由DD系統(tǒng)管理。 磁盤中存儲的數(shù)據(jù)結(jié)構(gòu):5種: 數(shù)據(jù)文件:應(yīng)用數(shù)據(jù)的DB文件。 數(shù)據(jù)字典:存儲DB三級模式及數(shù)據(jù)完整性約束。 索引:優(yōu)化查詢提高速度而設(shè)置的排序文件。 統(tǒng)計(jì)數(shù)據(jù):存儲DBS運(yùn)行時統(tǒng)計(jì)分析的數(shù)據(jù)。供查詢分析器有效處理查詢。 日志:存儲DBS運(yùn)行時對DB的操作情況。供查詢DB使用情況和數(shù)據(jù)恢復(fù)。,組成:,2、硬件 包括:CPU、內(nèi)存、外存、I/O設(shè)備、數(shù)據(jù)通訊設(shè)備等。 DBS關(guān)注的是:內(nèi)存、外存、I/O存取速度,可支持終端數(shù)和性能穩(wěn)定 性等指標(biāo)。,3、軟件 OS:支持DBMS存取數(shù)據(jù)。 宿主語言及對應(yīng)的編譯系統(tǒng)。 數(shù)據(jù)通訊軟件。 用戶開發(fā)的應(yīng)用程序。 集成的DB管
28、理軟件:報(bào)表生成器,DB輔助設(shè)計(jì)工具軟件, 數(shù)據(jù)庫測試工具,圖形系統(tǒng),I/O交換設(shè)施等。 DBMS系統(tǒng)(下面介紹),包括:,關(guān)系:,DB及硬件,OS,DBMS/編譯系統(tǒng),集成的DB管理軟件,應(yīng)用程序,4、人員 (1)DBA 承擔(dān)創(chuàng)建,監(jiān)控和維護(hù)整個DB結(jié)構(gòu)的責(zé)任: 模式定義 內(nèi)模式定義 修改DB的模式和內(nèi)模式 對DB訪問的授權(quán) 完整性約束的說明,通過一系列使用程序完成:DBMS裝載、重組、日志、恢復(fù)、統(tǒng)計(jì)分析。 通過DD系統(tǒng),掌握系統(tǒng)的工作情況。 DBA與DBMS的界面是數(shù)據(jù)庫模式。,DBA:,(2)專業(yè)用戶:使用專用的DB查詢語言操作數(shù)據(jù)。 專業(yè)用戶與DBMS的界面是數(shù)據(jù)庫查詢工具。 (3)
29、應(yīng)用程序員:使用DML編寫應(yīng)用程序。 應(yīng)用程序語言:C,C+,JAVA等?;蛘哕浖_發(fā)工具:Delphi、PowerBuilder(PB)、VisualBasic(VB)或VC、NET等。 應(yīng)用程序員與DBMS的界面是應(yīng)用程序。 (4)終端用戶:使用程序人員。 終端用戶與DBMS的界面是應(yīng)用程序運(yùn)行后的I/O界面。,二、DBMS,1、DBMS的主要功能 DBMS是DBS中重要的核心軟件。 DBMS的主要功能:,(1)DB的定義功能: 定義DB的三級模式:外模式, DBMS提供的數(shù)據(jù)定義語言(DDL) 概念模式,內(nèi)模式及相互之間的映像。 定義數(shù)據(jù)完整性、安全性約束。 定義索引文件。,(2)DB的
30、操縱功能 DBMS提供數(shù)據(jù)操作語言DML,實(shí)現(xiàn)對DB中的數(shù)據(jù)操縱。(需要DML編譯程序或解釋程序) 查詢 更新(插入,刪除,修改) 過程性DML(指出“做什么”和“如何做”):層次和網(wǎng)狀DB中用。 非過程性DML(只指出“做什么”):關(guān)系DB中采用。 DML的使用方式分為:自含型和宿主型(嵌入型) (3)DB的保護(hù)功能 DB的恢復(fù):DB被破壞,則利用DBMS提供的恢復(fù)子系統(tǒng),將DB恢復(fù)到正確狀態(tài)。 DB的并發(fā)控制:解決多個用戶對DB中數(shù)據(jù)操作的共享問題。 DB的完整性控制:保證DB中數(shù)據(jù)及語義的正確性和有效性。 DB的安全性控制:防止未授權(quán)的用戶竊取數(shù)據(jù)。,基本操作分為:,DML分為:,(4)
31、DB的存取管理 把各種DML語句轉(zhuǎn)換成低層的文件系統(tǒng)命令,交OS存取磁盤中DB的數(shù)據(jù)。 (5)DB的維護(hù)和通信功能 數(shù)據(jù)的裝載 數(shù)據(jù)的備份 文件重組 性能的監(jiān)控 通信功能:實(shí)現(xiàn)用戶程序與DBMS之間的通信與OS協(xié)調(diào)完成。,維護(hù)功能:,2、DBMS組成 DBMS由一些功能程序組成。 查詢處理器 存儲管理器,DBMS分為兩大部分:,(1)查詢處理器組成 DDL翻譯程序:把源模式翻譯成目標(biāo)模式:即編譯或解釋DDL語句,并 把它們登錄到數(shù)據(jù)字典中。 DML處理程序 DML預(yù)編譯程序 查詢運(yùn)行的核心程序:執(zhí)行由DML編譯器產(chǎn)生的低層指令。,把程序中的DML語句翻譯成可執(zhí)行程序。,(2)存儲管理器的組成 授權(quán)和完整性管理器:測試訪問是否滿足完整性約束,檢查用戶訪問數(shù) 據(jù)是否合法。 事務(wù)管理器:負(fù)責(zé)并發(fā)事務(wù)的正確執(zhí)行,保證DB一致性。 文件管理器:負(fù)責(zé)磁盤空間的分配,管理物理文件的存儲結(jié)構(gòu)和存取方法。 緩沖區(qū)管理器:為應(yīng)用程序開辟DB的系統(tǒng)緩沖區(qū),負(fù)責(zé)從磁盤讀取數(shù)據(jù)通過 緩沖區(qū)進(jìn)入內(nèi)存。,3、用戶訪問數(shù)據(jù)的過程 例如:應(yīng)用程序從DB中讀取一個記錄。,系統(tǒng)緩沖區(qū),應(yīng)用程序A 子模式,模式,內(nèi)模式,DBMS,OS,DB,運(yùn)行日志,數(shù)據(jù)字典系統(tǒng),1,2,3,4,5,6,7,8,9,10,步驟: 應(yīng)用程序A向DBMS發(fā)出一個讀記錄命令(通過DML語句)。 DBMS分析程序
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企事業(yè)單位合同管理規(guī)范手冊(標(biāo)準(zhǔn)版)
- 辦公室員工培訓(xùn)效果跟蹤計(jì)劃制度
- 養(yǎng)老院老人健康信息管理規(guī)范制度
- 中國國際貨運(yùn)航空股份有限公司備考題庫技術(shù)工程師崗位2026屆高校畢業(yè)生校園招聘備考題庫及1套參考答案詳解
- 養(yǎng)老院醫(yī)療保健服務(wù)制度
- 2026年西安聯(lián)邦口腔醫(yī)院招聘6人備考題庫及一套參考答案詳解
- 2026年肇慶高新區(qū)中小學(xué)公開招聘教師備考題庫及一套參考答案詳解
- 2026年長沙市天心區(qū)教育局白沙幼教麗發(fā)新城幼兒園教職工招聘備考題庫含答案詳解
- 會議經(jīng)費(fèi)使用與審計(jì)監(jiān)督制度
- 2026年維西縣人民醫(yī)院勞務(wù)派遣人員招聘備考題庫及參考答案詳解
- 2025年鹽城中考?xì)v史試卷及答案
- 2026年孝昌縣供水有限公司公開招聘正式員工備考題庫完整參考答案詳解
- 2025年鄭州工業(yè)應(yīng)用技術(shù)學(xué)院馬克思主義基本原理概論期末考試模擬試卷
- 測繪資料檔案匯交制度
- 2026年孝昌縣供水有限公司公開招聘正式員工備考題庫及完整答案詳解
- 2025年六年級上冊道德與法治期末測試卷附答案(完整版)
- 附件二;吊斗安全計(jì)算書2.16
- 學(xué)校食堂改造工程施工組織設(shè)計(jì)方案
- 2025中國熱帶農(nóng)業(yè)科學(xué)院科技信息研究所第一批招聘4人備考題庫(第1號)附答案
- 腦出血診療指南2025
- 2025年開放大學(xué)化工原理試題庫及答案
評論
0/150
提交評論