數(shù)據(jù)庫原理與設(shè)計(jì)-第一章_第1頁
數(shù)據(jù)庫原理與設(shè)計(jì)-第一章_第2頁
數(shù)據(jù)庫原理與設(shè)計(jì)-第一章_第3頁
數(shù)據(jù)庫原理與設(shè)計(jì)-第一章_第4頁
數(shù)據(jù)庫原理與設(shè)計(jì)-第一章_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)據(jù)庫原理及設(shè)計(jì)

PrincipleandDesignofDatabases課程目的掌握數(shù)據(jù)庫管理系統(tǒng)的基本原理;學(xué)習(xí)作為系統(tǒng)管理員應(yīng)用、操作和管理數(shù)據(jù)庫管理系統(tǒng)的方法和技能;設(shè)計(jì)開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)。內(nèi)容提要數(shù)據(jù)庫管理系統(tǒng)基本原理基本概念:數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、視圖、數(shù)據(jù)模型及抽象等基本內(nèi)容:關(guān)系數(shù)據(jù)庫與理論、SQL語言、數(shù)據(jù)庫安全性、數(shù)據(jù)庫完整性、數(shù)據(jù)庫并發(fā)控制、數(shù)據(jù)庫故障恢復(fù)等DBMS的基本原理在SQLServer中的體現(xiàn);數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計(jì)與開發(fā)。講授方式首先講解數(shù)據(jù)庫系統(tǒng)的整體框架,了解其各部分組成及地位作用、所涉及的概念及內(nèi)容;重視英文術(shù)語;根據(jù)整體框架,分別講授各個(gè)組成部分;各個(gè)部分的講解,基本上先講其基本概念及理論,緊接著將以SQLServerDBMS為例,對(duì)應(yīng)講解該理論在實(shí)際的DBMS中的運(yùn)用及體現(xiàn);利用上機(jī)實(shí)驗(yàn)條件和課內(nèi)外課時(shí),實(shí)際上機(jī)實(shí)習(xí),加深理論,掌握有代表性的SQLServerDBMS;教材:陶宏才主編,<<數(shù)據(jù)庫原理及設(shè)計(jì)>>,第二版,清華大學(xué)出版社,2007.9學(xué)習(xí)方式好消息:課程內(nèi)容是很多技術(shù)的基礎(chǔ)

非常重要;幾乎所有計(jì)算機(jī)應(yīng)用領(lǐng)域都需要數(shù)據(jù)庫–

非常有用。警鐘:要把自己放到虛擬工作環(huán)境中,帶著問題來學(xué)。課程內(nèi)容多,需要深入理解;學(xué)習(xí)不努力,考試徒傷悲!如何在本課程中獲得事半功倍的效果?積極主動(dòng)地學(xué)習(xí);記筆記;上課時(shí)腦細(xì)胞要活躍,多問為什么;按時(shí)、優(yōu)質(zhì)地完成作業(yè);同學(xué)間討論問題;自己動(dòng)手練習(xí)。成績(jī)?cè)u(píng)估方法平時(shí)成績(jī)占30%作業(yè)占15%課堂討論,測(cè)驗(yàn)占15%(考勤)上機(jī)(完成并提交上機(jī)報(bào)告)期末考試成績(jī)占70%內(nèi)容以課堂講授及教材為準(zhǔn)。主要參考書王珊、薩師煊等編著.數(shù)據(jù)庫系統(tǒng)概論(第4版).高等教育出版社,2006鄭阿奇.SQLServer實(shí)用教程(第3版).電子工業(yè)出版社,2013年施伯樂等編著.數(shù)據(jù)庫系統(tǒng)教程.第2版.高等教育出版社,2003.8李建中,王珊編著.數(shù)據(jù)庫系統(tǒng)原理.電子工業(yè)出版社,1999.4王珊,陳紅編著.數(shù)據(jù)庫系統(tǒng)原理教程.清華大學(xué)出版社,1998.7RamezElmasri,ShamkantB.Navathe著.數(shù)據(jù)庫系統(tǒng)基礎(chǔ).第3版.邵佩英,張坤龍等譯.人民郵電出版社,2002.11學(xué)習(xí)目的和要求數(shù)據(jù)庫管理系統(tǒng)出現(xiàn)的背景數(shù)據(jù)庫管理系統(tǒng)基本功能、抽象層次數(shù)據(jù)庫系統(tǒng)總體結(jié)構(gòu)理解數(shù)據(jù)庫原理、應(yīng)用及設(shè)計(jì)三部分間的關(guān)系數(shù)據(jù)庫系統(tǒng)中的術(shù)語與基本概念第一章數(shù)據(jù)庫系統(tǒng)概述思考一下

在數(shù)據(jù)庫系統(tǒng)還沒有出現(xiàn)的時(shí)候,你在大學(xué)學(xué)生處工作。有1000名新生需要登記信息,可能還會(huì)有1000人后續(xù)而來,你采用什么方法管理他們?一個(gè)完成數(shù)據(jù)輸入、存儲(chǔ)、修改、輸出、持久有效的系統(tǒng)存儲(chǔ)數(shù)據(jù)——使用一種數(shù)據(jù)結(jié)構(gòu)易于修改數(shù)據(jù)——這種數(shù)據(jù)結(jié)構(gòu)便于查找數(shù)據(jù)和修改數(shù)據(jù)持久有效——系統(tǒng)有安全保護(hù)措施走向數(shù)據(jù)庫之一:“史前時(shí)期”數(shù)據(jù)庫的“史前時(shí)期”是文件系統(tǒng)(FileSystem)時(shí)期。文件系統(tǒng)怎樣開發(fā)管理應(yīng)用呢?開發(fā)任務(wù)簡(jiǎn)單學(xué)生管理系統(tǒng),學(xué)生注冊(cè)、選課、學(xué)籍和成績(jī)管理。開發(fā)工具及環(huán)境程序設(shè)計(jì)語言如C/C++,Windows下的文件系統(tǒng)。數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)確定管理對(duì)象;抽取對(duì)象主要特征;將特征組織起來。利用C/C++語言中的“結(jié)構(gòu)”數(shù)據(jù)類型存放數(shù)據(jù)。文件系統(tǒng)實(shí)現(xiàn)過程(1)-數(shù)據(jù)結(jié)構(gòu)定義structStudent{ int nStudNo; charszStudName[20]; char cGender; int nAge; char szDept[30];};structEnrollment{ int nStudNo; int nWhichTerm; char cEnrolled; char szMem[30];};structCourse{int nCourseNo;charszCourseName[20];char szDept[30];};structScore{ int nStudNo; int nCourseNo; int nScore;};注:sz-數(shù)組(Array),n–整數(shù)(Number),c-字符(Char)文件系統(tǒng)實(shí)現(xiàn)過程(2)構(gòu)造鏈表為了管理學(xué)生的信息,常常以班級(jí)為單位。如果對(duì)集合數(shù)據(jù)進(jìn)行添加、修改、排序等操作,一個(gè)辦法是構(gòu)造鏈表。在我們的例子中,至少需要構(gòu)造四個(gè)這樣的鏈表。以學(xué)生基本信息鏈表為例:StudentInfoStudentInfoΛStudentInfo鏈表操作對(duì)班級(jí)的學(xué)生進(jìn)行增加、刪除、修改、查詢與排序工作。相對(duì)于鏈表是對(duì)結(jié)點(diǎn)進(jìn)行insert,delete,update,query,sort。文件系統(tǒng)實(shí)現(xiàn)過程(3)-用戶界面設(shè)計(jì)文件系統(tǒng)實(shí)現(xiàn)過程(4)創(chuàng)建數(shù)據(jù)存儲(chǔ)文件將鏈表中的數(shù)據(jù)以文件形式存盤。使用文件I/O操作函數(shù)完成對(duì)文件中數(shù)據(jù)的讀寫,上例中需要四個(gè)數(shù)據(jù)文件。程序運(yùn)行前,需將數(shù)據(jù)文件中的數(shù)據(jù)讀出,放入程序中的對(duì)應(yīng)鏈表中,以方便數(shù)據(jù)的操作。程序結(jié)束運(yùn)行之前,將鏈表中的數(shù)據(jù)存入到對(duì)應(yīng)的數(shù)據(jù)文件中。數(shù)據(jù)管理操作最基本的數(shù)據(jù)操作:增加、刪除、修改和查詢,簡(jiǎn)稱:增刪改查詢。其他操作或功能由這四個(gè)基本操作組合而來文件系統(tǒng)的缺陷(1)無法處理超大量數(shù)據(jù)(如GB級(jí),TB級(jí),PB級(jí))證券、銀行、保險(xiǎn)等領(lǐng)域擁有超大量級(jí)數(shù)據(jù)。內(nèi)寸不夠,不能一次讀入大量數(shù)據(jù)。32位計(jì)算機(jī)直接訪問的地址為4GB;在32位機(jī)上Linux、WindowsNT、Windows2000等操作系統(tǒng)不允許硬盤上單個(gè)文件超過232=4GB大小。大數(shù)據(jù)量下的查詢速度存在問題多用戶并發(fā)訪問(ConcurrentAccess)前面的學(xué)生管理系統(tǒng)只能單機(jī)或單用戶使用。多用戶的并發(fā)訪問可能導(dǎo)致多個(gè)用戶同時(shí)存取同一數(shù)據(jù)(Conflict)。數(shù)據(jù)訪問沖突導(dǎo)致數(shù)據(jù)不一致。多用戶并發(fā)訪問的透明度。文件系統(tǒng)的缺陷(2)故障情況下的恢復(fù)(CrashRecovery)文件系統(tǒng)需要增加大量代碼安全性(Security)文件系統(tǒng)必需做很大改進(jìn),以滿足數(shù)據(jù)安全的要求,例如:不同用戶的授權(quán)問題。數(shù)據(jù)的完整性(Integrity)同一數(shù)據(jù)可能會(huì)出現(xiàn)在多個(gè)數(shù)據(jù)結(jié)構(gòu)中,同時(shí)對(duì)應(yīng)地出現(xiàn)在多個(gè)數(shù)據(jù)文件中。修改一個(gè)文件的一個(gè)數(shù)據(jù),必須同時(shí)修改其他文件中的相同的數(shù)據(jù),否則就會(huì)產(chǎn)生數(shù)據(jù)的不一致。走向數(shù)據(jù)庫之二:“數(shù)據(jù)庫誕生”文件系統(tǒng)管理應(yīng)用系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(DBMS)大容量數(shù)據(jù)并發(fā)訪問故障恢復(fù)安全性完整性文件系統(tǒng)大容量數(shù)據(jù)并發(fā)訪問故障恢復(fù)安全性完整性抽出五個(gè)基本公共功能形成數(shù)據(jù)庫管理系統(tǒng)引起的術(shù)語變化:

結(jié)構(gòu)類型?數(shù)據(jù)模型(datamodel)具體的某個(gè)結(jié)構(gòu)?數(shù)據(jù)模式(dataschema)數(shù)據(jù)文件?數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)文件開發(fā)支持?jǐn)?shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)整體數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一整體結(jié)構(gòu)化不再僅僅針對(duì)某一個(gè)應(yīng)用,而是面向全組織不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體是結(jié)構(gòu)化的,數(shù)據(jù)之間具有聯(lián)系數(shù)據(jù)庫中實(shí)現(xiàn)的是數(shù)據(jù)的真正結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)用數(shù)據(jù)模型描述,無需程序定義和解釋數(shù)據(jù)可以變長(zhǎng)數(shù)據(jù)的最小存取單位是數(shù)據(jù)項(xiàng)數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)學(xué)號(hào)姓名性別年齡所在系家庭住址聯(lián)系電話學(xué)生記錄結(jié)構(gòu)課程號(hào)課程名學(xué)時(shí)教材名稱學(xué)號(hào)課程號(hào)學(xué)期成績(jī)課程記錄結(jié)構(gòu)選課記錄結(jié)構(gòu)整體數(shù)據(jù)的結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)數(shù)據(jù)獨(dú)立性(DataIndependence)將數(shù)據(jù)如何表示的(如:是數(shù)組還是整數(shù)?)和如何存儲(chǔ)的(如:一個(gè)記錄的長(zhǎng)度)與應(yīng)用程序分離數(shù)據(jù)結(jié)構(gòu)和存儲(chǔ)方式發(fā)生變化不需修改和編譯應(yīng)用程序。數(shù)據(jù)的邏輯獨(dú)立性:當(dāng)模式改變時(shí),數(shù)據(jù)庫管理員修改有關(guān)的外模式/模式映象,使外模式保持不變;應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡(jiǎn)稱數(shù)據(jù)的邏輯獨(dú)立性。數(shù)據(jù)的物理獨(dú)立性:當(dāng)數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)改變了(例如選用了另一種存儲(chǔ)結(jié)構(gòu)),數(shù)據(jù)庫管理員修改模式/內(nèi)模式映象,使模式保持不變;應(yīng)用程序不受影響。保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡(jiǎn)稱數(shù)據(jù)的物理獨(dú)立性。數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個(gè)系統(tǒng),可以被多個(gè)用戶、多個(gè)應(yīng)用共享使用。數(shù)據(jù)共享的好處減少數(shù)據(jù)冗余,節(jié)約存儲(chǔ)空間避免數(shù)據(jù)之間的不相容性與不一致性使系統(tǒng)易于擴(kuò)充數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)高效數(shù)據(jù)訪問(EfficientDataAccess)DBMS利用許多復(fù)雜的技術(shù)來高效存儲(chǔ)和檢索數(shù)據(jù),這對(duì)存于外部存儲(chǔ)設(shè)備上的數(shù)據(jù)相當(dāng)重要。數(shù)據(jù)完整性與安全性(DataIntegrityandSecurity)DBMS建立完整性約束,如為每個(gè)數(shù)據(jù)項(xiàng)指定數(shù)據(jù)類型。DBMS提供授權(quán)子系統(tǒng),每個(gè)用戶或用戶組被賦予一個(gè)通過口令保護(hù)的帳戶,不同的帳戶有不同的訪問權(quán)限。數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)(續(xù))數(shù)據(jù)管理數(shù)據(jù)的集中管理可以控制冗余(Redundancy)。并發(fā)訪問與故障恢復(fù)多個(gè)用戶使用數(shù)據(jù)庫,但用戶感到好象只有他一個(gè)人在使用似的。數(shù)據(jù)庫在執(zhí)行某個(gè)程序發(fā)生故障后,DBMS能把數(shù)據(jù)庫恢復(fù)到這個(gè)程序開始執(zhí)行前的正確狀態(tài)??s短應(yīng)用開發(fā)時(shí)間(ReducedApplicationDevelopmentTime)五大功能及相關(guān)的任務(wù)由DBMS來完成,系統(tǒng)開發(fā)的難度降低,開發(fā)時(shí)間也縮短了。持久性存儲(chǔ)(PersistentStorage)數(shù)據(jù)庫可以為程序?qū)ο蠛蛿?shù)據(jù)結(jié)構(gòu)提供持久性存儲(chǔ)。數(shù)據(jù)庫系統(tǒng)的基本功能數(shù)據(jù)獨(dú)立性并發(fā)控制故障恢復(fù)安全性完整性注意:雖然DBMS有很多優(yōu)勢(shì),但在某些情況下使用DBMS反而會(huì)導(dǎo)致不必要的開銷。如:苛刻的實(shí)時(shí)環(huán)境(現(xiàn)在有real-timeDB);操作少,代碼要求精煉時(shí);數(shù)據(jù)是非結(jié)構(gòu)化或半結(jié)構(gòu)化的(如HTML、XML、MSWord文檔),還沒有相應(yīng)的查詢語言支持。走向數(shù)據(jù)庫之三:“數(shù)據(jù)庫的抽象層次”應(yīng)用系統(tǒng)開發(fā)數(shù)據(jù)庫的抽象過程對(duì)應(yīng)用中的信息(數(shù)據(jù))進(jìn)行計(jì)算機(jī)化的管理“數(shù)據(jù)抽象”;例如:管理計(jì)算機(jī)系的學(xué)生李白(20010311)的“數(shù)據(jù)庫”課程的成績(jī)

用一定的方式來組織數(shù)據(jù),使其具有結(jié)構(gòu)化

“數(shù)據(jù)模型”(datamodel);利用“數(shù)據(jù)模型”工具完成對(duì)具體系統(tǒng)的數(shù)據(jù)抽取、組織,得到的結(jié)果就是“數(shù)據(jù)模式”(dataschema)復(fù)雜的應(yīng)用系統(tǒng),可分成多個(gè)應(yīng)用子系統(tǒng)。對(duì)每個(gè)子系統(tǒng)進(jìn)行數(shù)據(jù)抽象,得到各自的模式,稱為外模式(externalschema)“視圖抽象”;在外模式的基礎(chǔ)上“合零為整”,形成一個(gè)全局的數(shù)據(jù)模式,是概念上的,唯一的,稱為概念模式(conceptualschema)“概念抽象”;概念模式轉(zhuǎn)化成計(jì)算機(jī)可實(shí)現(xiàn)的內(nèi)模式(internalschema),落實(shí)到計(jì)算機(jī)的物理實(shí)現(xiàn)層面“物理抽象”;數(shù)據(jù)庫三級(jí)抽象層次(模式)結(jié)構(gòu)外模式1……概念模式內(nèi)模式外模式m外模式n視圖抽象概念抽象物理抽象數(shù)據(jù)庫用戶組1用戶組n全局局部視圖抽象概念抽象概念抽象視圖抽象數(shù)據(jù)庫的抽象層次應(yīng)用系統(tǒng)的設(shè)計(jì)和工具外模式1……概念模式內(nèi)模式外模式2外模式n數(shù)據(jù)庫用戶組1用戶組n物理抽象物理抽象局部全局自頂向下自底向上物理抽象物理抽象數(shù)據(jù)庫舞臺(tái)上的角色最終用戶(enduser):為了查詢、更新、以及產(chǎn)生報(bào)表等需要而訪問數(shù)據(jù)庫的人。如銀行的柜員、商業(yè)分析師等。數(shù)據(jù)庫設(shè)計(jì)者:分析用戶需求,負(fù)責(zé)從“外部模式”

“概念模式”“內(nèi)模式”建立數(shù)據(jù)庫的過程。數(shù)據(jù)庫管理員(DBA):負(fù)責(zé)數(shù)據(jù)庫監(jiān)控、日常維護(hù)和管理。例如,為用戶授予存取權(quán)限等。數(shù)據(jù)庫設(shè)計(jì)者往往是DBA的候選人。有關(guān)的軟件工程師:開發(fā)數(shù)據(jù)庫工具軟件包;系統(tǒng)分析;等等。數(shù)據(jù)庫的語言數(shù)據(jù)庫設(shè)計(jì)人員使用數(shù)據(jù)定義語言(DDL)完成對(duì)數(shù)據(jù)庫模式的描述。數(shù)據(jù)庫管理員和用戶使用數(shù)據(jù)操縱語言(DML)對(duì)數(shù)據(jù)進(jìn)行“增刪改查詢”等操作。數(shù)據(jù)庫管理員使用數(shù)據(jù)控制語言(DCL)對(duì)數(shù)據(jù)庫進(jìn)行管理。SQL(StructuredQueryLanguage,結(jié)構(gòu)化查詢語言)綜合了上述各方面在一個(gè)語言中,是關(guān)系型數(shù)據(jù)庫管理系統(tǒng)支持的數(shù)據(jù)庫語言。目前的標(biāo)準(zhǔn)化版本為SQL-92,被ANSI、ISO(InternationalStandardsOrganization)采納。SQL語言既可以作為交互式(Interactive)數(shù)據(jù)庫語言使用,也可以嵌入(Embedded)到程序設(shè)計(jì)語言中作為其子語言使用。程序設(shè)計(jì)語言被稱為宿主語言(HostLanguage),如:C/C++語言、PowerBuilder、Delphi等。數(shù)據(jù)庫設(shè)計(jì)、原理與應(yīng)用之間的聯(lián)系數(shù)據(jù)庫系統(tǒng)總體結(jié)構(gòu)圖利用SQL中的DDL將關(guān)系模式存入數(shù)據(jù)庫SQL定義語句概念模式

外模式1

外模式n

外模式2

現(xiàn)實(shí)系統(tǒng)

數(shù)據(jù)庫設(shè)計(jì)部分

內(nèi)模式

關(guān)系數(shù)據(jù)庫管理系統(tǒng)RDBMS

數(shù)據(jù)庫實(shí)現(xiàn)(原理)部分DB

數(shù)據(jù)庫安全

并發(fā)控制

故障恢復(fù)

完整性限制CGI/ISAPI

ODBC/JDBC/OLEDB

SQL的嵌入式使用C/C++、PB、Delphi、Java應(yīng)用程序

數(shù)據(jù)庫應(yīng)用部分

用戶

SQL的交互式使用

SQL語句

C/S模式

瀏覽器

WEB服務(wù)器

B/S模式

HTTP

SQL語句CGI/ASP/JSP程序

走向數(shù)據(jù)庫之四:“數(shù)據(jù)庫的發(fā)展”“史前時(shí)期:文件系統(tǒng)“石器時(shí)代和中古時(shí)期”:層次與網(wǎng)狀數(shù)據(jù)庫系統(tǒng)“近代,1970+”:標(biāo)準(zhǔn)DBMS,關(guān)系數(shù)據(jù)庫系統(tǒng)(RDBS)“當(dāng)代,1989+”:面向?qū)ο髷?shù)據(jù)庫(OODBS)“當(dāng)代,1990+”:對(duì)象-關(guān)系數(shù)據(jù)庫(ORDBS)“現(xiàn)代,1995+”:數(shù)據(jù)倉庫;并行數(shù)據(jù)庫;分布式數(shù)據(jù)庫;基于Internet/Web的數(shù)據(jù)庫系統(tǒng)……C/S結(jié)構(gòu),B/S結(jié)構(gòu)OLTP,OLAP,數(shù)據(jù)挖掘……第一代數(shù)據(jù)庫系統(tǒng)1964,Bachmanetal,第一個(gè)數(shù)據(jù)庫IDS,網(wǎng)狀數(shù)據(jù)庫,——數(shù)據(jù)庫界第一個(gè)圖靈獎(jiǎng)(1973)。1968,IBM,商品化產(chǎn)品,IMS,層次數(shù)據(jù)1969,DBTG,DBTG報(bào)告,確定了網(wǎng)狀數(shù)據(jù)庫系統(tǒng)的概念、方法和技術(shù)。

CharlesW.Bachman

第二代數(shù)據(jù)庫系統(tǒng)1970,IBM,E.F.Codd,提出了關(guān)系模型,奠定了關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的基礎(chǔ)(關(guān)系數(shù)據(jù)庫之父)。數(shù)據(jù)庫界第二個(gè)圖靈獎(jiǎng)(1981)

E.F.CoddJamesGray-1998年圖靈獎(jiǎng)得主由于數(shù)據(jù)庫是計(jì)算機(jī)各種應(yīng)用的基礎(chǔ),它大大促進(jìn)計(jì)算機(jī)的普及。IBM,“SystemR”項(xiàng)目成果極大地推動(dòng)了關(guān)系數(shù)據(jù)庫技術(shù)的發(fā)展,在此基礎(chǔ)上推出的DB2和SQL等產(chǎn)品成為IBM的主流產(chǎn)品。SystemR本身作為原型并未問世,但鑒于其影響,ACM把1988年的“軟件系統(tǒng)獎(jiǎng)”授予了SystemR開發(fā)小組(獲獎(jiǎng)的6個(gè)人中就包括1998年圖靈獎(jiǎng)得主J.Gray)。基于J.Gray在數(shù)據(jù)庫安全性、事務(wù)處理、圖形處理、存儲(chǔ)方面的杰出貢獻(xiàn),他獲得了1998年圖靈獎(jiǎng)。這是數(shù)據(jù)庫界第三個(gè)圖靈獎(jiǎng)。JamesGray群雄并起到春秋五霸GartnerGroup(位于美國(guó)康涅狄克州斯坦福德的IT市場(chǎng)調(diào)查公司)基于估計(jì)的稅收(Revenues)對(duì)2005年RDBMS的賣主排序Top5:Oracle:48.9%IBM:22.4%Microsoft:13.9%Teradata:3.2%Sybase:3.0%關(guān)系數(shù)據(jù)庫管理系統(tǒng)2005年比前一年增長(zhǎng)8.3%LarryEllison,OracleCEOOLAP/DataWarehouse/WebDataWarehouse1988年,IBM公司的研究者BarryDevlin和PaulMurphy發(fā)明了一個(gè)新的術(shù)語—信息倉庫,之后,IT的廠商開始構(gòu)建實(shí)驗(yàn)性的數(shù)據(jù)倉庫。1991,W.H.Inmon,提出了數(shù)據(jù)倉庫(DataWarehouse)的概念.1993,Codd,定義了OLAP,推動(dòng)了數(shù)據(jù)倉庫的建立。Inmonvs.Kimball數(shù)據(jù)倉庫≠數(shù)據(jù)庫數(shù)據(jù)倉庫支持經(jīng)營(yíng)管理中的決策制定過程。它面向運(yùn)營(yíng)分析,數(shù)據(jù)挖掘(DataMining),決策,商務(wù)(政務(wù))智能。數(shù)據(jù)庫面向商業(yè)處理,如銷售,進(jìn)貨等一單一單的業(yè)務(wù)處理。為什么需要數(shù)據(jù)倉庫和OLAP數(shù)據(jù)庫平板文件數(shù)據(jù)倉庫去年的第二季度WalMart的所有分店的洗發(fā)水的銷售情況?顧客銷售…………50元50kg1元蘋果15元10塊1.5元香皂B126元20瓶6.3元洗發(fā)水A總銷售額銷售量單價(jià)貨品記錄內(nèi)容(x年x月x日)每日的銷售記錄記錄存儲(chǔ)經(jīng)理運(yùn)營(yíng)分析結(jié)果去年的第二季度WalMart的所有分店的洗發(fā)水的總銷售額為14500元OLTPandOLAP數(shù)據(jù)庫平板文件數(shù)據(jù)倉庫顧客銷售每日的銷售記錄記錄存儲(chǔ)OLTPOLAP新商業(yè)計(jì)劃運(yùn)營(yíng)分析結(jié)果Internet/WebDatabase單機(jī)多機(jī)本地網(wǎng)絡(luò)化純數(shù)據(jù)多媒體數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)非結(jié)構(gòu)化數(shù)據(jù)/半結(jié)構(gòu)化數(shù)據(jù)主機(jī)/顯示器C/S和B/S結(jié)構(gòu)<?xmlversion="1.0"encoding="UTF-8"?>

<Student>

<Student1SID=20030001>

<name>ZhangPin</name>

<age>21</age>

<gender>Female<gender></Student1〉</Student>C/S和B/S模式2-tierClient/ServerDBMS服務(wù)器數(shù)據(jù)讀寫和處理。DB數(shù)據(jù)存儲(chǔ)客戶機(jī)提出業(yè)務(wù)要求;事物流控制;顯示結(jié)果。網(wǎng)絡(luò)應(yīng)用服務(wù)器事物流控制;負(fù)荷平衡。提出業(yè)務(wù)要求;顯示結(jié)果。客戶機(jī)網(wǎng)絡(luò)DBMS服務(wù)器數(shù)據(jù)讀寫和處理。DB數(shù)據(jù)存儲(chǔ)應(yīng)用服務(wù)器事物流控制;負(fù)荷平衡。瀏覽器客戶端:提出業(yè)務(wù)要求;顯示結(jié)果。HTTPWeb服務(wù)器CGI,ISAPI,NSAPIODBC,JDBC,OLEDB3-tierClient/ServerBrowser/Server模式

數(shù)據(jù)庫系統(tǒng)的基本概念(1)數(shù)據(jù)(Data):是描述現(xiàn)實(shí)世界中各種具體事物或抽象概念的、可存貯并具有明確意義的信息。數(shù)據(jù)庫(Database,DB):是相互關(guān)聯(lián)的數(shù)據(jù)集合。數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,DBMS):是一個(gè)通用的軟件系統(tǒng),由一組計(jì)算機(jī)程序構(gòu)成。它能對(duì)數(shù)據(jù)庫進(jìn)行有效的管理,包括存儲(chǔ)管理、安全性管理、完整性管理等;同時(shí),它也為用戶提供了一個(gè)軟件環(huán)境,使其能夠方便快速地創(chuàng)建、維護(hù)、檢索、存取和處理數(shù)據(jù)庫中的信息。數(shù)據(jù)庫系統(tǒng)的基本概念(2)數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,DBS):由數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)構(gòu)成,更廣義的構(gòu)成則為“DB+DBMS+數(shù)據(jù)庫管理員+應(yīng)用程序+用戶”。數(shù)據(jù)字典(DataDictionary,DD):是數(shù)據(jù)庫系統(tǒng)中的一個(gè)特殊文件,用于存儲(chǔ)數(shù)據(jù)庫中重要的說明信息,這些說明信息稱為元數(shù)據(jù)(MetaData)。元數(shù)據(jù)是描述數(shù)據(jù)的數(shù)據(jù),例如:數(shù)據(jù)類型及長(zhǎng)度(P17),價(jià)格單位,數(shù)據(jù)導(dǎo)出規(guī)則,等等,已經(jīng)成為重要的系統(tǒng)數(shù)據(jù)。數(shù)據(jù)庫操作(DatabaseOperation):在數(shù)據(jù)庫應(yīng)用中,最常見的有:增加、刪除、修改和查詢。大型數(shù)據(jù)庫與微機(jī)數(shù)據(jù)庫區(qū)別:在于微機(jī)數(shù)據(jù)庫系統(tǒng)的某些功能相對(duì)弱化了。視圖(1)視圖(View):從不同的角度截取同一數(shù)據(jù)庫的子集(不同的理解),每一個(gè)子集被稱為該數(shù)據(jù)庫的一個(gè)視圖。數(shù)據(jù)庫的分層視圖:

應(yīng)用程序員

最終用戶

DBA

系統(tǒng)程序員

物理

數(shù)據(jù)

物理視圖

內(nèi)模式

內(nèi)部視圖

概念模式

概念視圖

子模式1

外部視圖

子模式2

子模式n

用戶圖表1

I/O視圖

用戶圖表2

用戶圖表n

組織

視圖(2)輸入輸出數(shù)據(jù)視圖:即終端用戶所見到的輸入輸出數(shù)據(jù)結(jié)構(gòu)描述。是按用戶要求表示出的數(shù)據(jù),如報(bào)表等。外部視圖(ExternalView):局部數(shù)據(jù)庫邏輯結(jié)構(gòu)稱為外部視圖。這種視圖在數(shù)據(jù)庫設(shè)計(jì)時(shí)通常以圖形的形式(如E-R圖)表示,有的又叫視圖或用戶視圖。概念視圖(ConceptualView):整個(gè)數(shù)據(jù)庫系統(tǒng)的全局邏輯結(jié)構(gòu)。這種邏輯結(jié)構(gòu)稱為概念模型,它不包含任何數(shù)據(jù)庫的實(shí)現(xiàn)細(xì)節(jié),如:何種DBMS、文件組織、存取方法等。這種邏輯結(jié)構(gòu)的形式化描述稱為概念視圖。在數(shù)據(jù)庫設(shè)計(jì)時(shí),概念視圖通常也以E-R圖表示。視圖(3)內(nèi)部視圖(InternalView)或存儲(chǔ)視圖:特定的DBMS所處理的數(shù)據(jù)庫的內(nèi)部結(jié)構(gòu)稱為內(nèi)部模型,其形式化描述稱為內(nèi)部視圖或存儲(chǔ)視圖,它將數(shù)據(jù)庫表示為“內(nèi)部記錄”或“存儲(chǔ)記錄”的集合。存儲(chǔ)記錄仍然是邏輯性的,它不是存儲(chǔ)設(shè)備上的物理記錄或物理塊,也不涉及任何具體設(shè)備限制,如:柱面或磁道的大小等,所以存儲(chǔ)視圖還不是最底層的物理層。存儲(chǔ)視圖還指明存儲(chǔ)記錄的物理順序、以及它們?nèi)绾伪舜岁P(guān)聯(lián)。存儲(chǔ)視圖的語言形式定義稱為內(nèi)部模式。物理視圖(PhysicalView):數(shù)據(jù)庫在存儲(chǔ)設(shè)備上的物理組織稱為物理模型,其描述稱為物理視圖。它包含了所使用設(shè)備特征、物理記錄或塊的組成、尋址技術(shù)和壓縮存儲(chǔ)技術(shù)等的說明。數(shù)據(jù)抽象、數(shù)據(jù)模型與數(shù)據(jù)模式(1)數(shù)據(jù)抽象(DataAbstraction):即是將數(shù)據(jù)抽象化、邏輯化,使用戶不必了解數(shù)據(jù)庫文件的物理存儲(chǔ)結(jié)構(gòu)、存儲(chǔ)位置和存取方法等細(xì)節(jié),即可存取數(shù)據(jù)庫。在數(shù)據(jù)庫系統(tǒng)中,有三種級(jí)別的數(shù)據(jù)抽象,即:視圖級(jí)抽象、概念級(jí)抽象和物理級(jí)抽象。數(shù)據(jù)模型(DataModel):即是對(duì)數(shù)據(jù)進(jìn)行抽象化表示的工具,主要使用邏輯概念(如對(duì)象、對(duì)象屬性、對(duì)象聯(lián)系等)來表示數(shù)據(jù)。由于抽象級(jí)別的存在,數(shù)據(jù)模型也存在相應(yīng)的級(jí)別。如:概念數(shù)據(jù)模型、邏輯數(shù)據(jù)模型、物理數(shù)據(jù)模型等。對(duì)于抽象級(jí)別高的概念數(shù)據(jù)模型我們叫它語義(Semantic)數(shù)據(jù)模型,如ER模型。數(shù)據(jù)模式(DataSchema):根據(jù)數(shù)據(jù)模型來描述數(shù)據(jù),得到的具體的表達(dá)。亦即是描述數(shù)據(jù)的模板。數(shù)據(jù)庫三級(jí)抽象層次(模式)結(jié)構(gòu)外模式1……概念模式內(nèi)模式外模式m外模式n視圖抽象概念抽象物理抽象數(shù)據(jù)庫用戶組1用戶組n數(shù)據(jù)抽象、數(shù)據(jù)模型與數(shù)據(jù)模式(2)三者的關(guān)系:數(shù)據(jù)抽象是將真實(shí)世界中的信息(數(shù)據(jù))提煉,再提煉,變成計(jì)算機(jī)能認(rèn)識(shí),可以管理的數(shù)據(jù)的過程;數(shù)據(jù)模型是數(shù)據(jù)抽象的工具,是數(shù)據(jù)組織和表示的方式;數(shù)據(jù)模式是數(shù)據(jù)抽象利用數(shù)據(jù)模型將數(shù)據(jù)組織起來后得到的結(jié)果。數(shù)據(jù)模型的三要素?cái)?shù)據(jù)結(jié)構(gòu)用于描述系統(tǒng)的靜態(tài)特性。數(shù)據(jù)結(jié)構(gòu)不僅要描述數(shù)據(jù)本身,還要描述數(shù)據(jù)之間的聯(lián)系。數(shù)據(jù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論