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

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫原理及設計數(shù)據(jù)庫原理及設計Principle and Design of Databases課程目的課程目的 掌握數(shù)據(jù)庫管理系統(tǒng)的基本原理; 學習作為系統(tǒng)管理員應用、操作和管理數(shù)據(jù)庫管理系統(tǒng)的方法和技能; 設計開發(fā)數(shù)據(jù)庫應用系統(tǒng)。內(nèi)容提要內(nèi)容提要數(shù)據(jù)庫管理系統(tǒng)基本原理數(shù)據(jù)庫管理系統(tǒng)基本原理 基本概念:數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、視圖、數(shù)據(jù)模型及抽象等 基本內(nèi)容:關系數(shù)據(jù)庫與理論、SQL語言、數(shù)據(jù)庫安全性、數(shù)據(jù)庫完整性、數(shù)據(jù)庫并發(fā)控制、數(shù)據(jù)庫故障恢復等DBMS的基本原理在的基本原理在SQL Server中的體現(xiàn);中的體現(xiàn);數(shù)據(jù)庫應用系統(tǒng)的設計與開發(fā)。數(shù)據(jù)庫應用系統(tǒng)的設計與開發(fā)。講授

2、方式講授方式首先講解數(shù)據(jù)庫系統(tǒng)的整體框架,了解其各部分組成及地位作用、所涉及的概念及內(nèi)容;重視英文術語;根據(jù)整體框架,分別講授各個組成部分;各個部分的講解,基本上先講其基本概念及理論,緊接著將以SQL Server DBMS為例,對應講解該理論在實際的DBMS中的運用及體現(xiàn);利用上機實驗條件和課內(nèi)外課時,實際上機實習,加深理論,掌握有代表性的SQL Server DBMS;教材:陶宏才主編, , 第二版,清華大學出版社,2007.9學習方式學習方式 好消息好消息: 課程內(nèi)容是很多技術的基礎 非常重要;非常重要; 幾乎所有計算機應用領域都需要數(shù)據(jù)庫 非常有用。非常有用。 警鐘警鐘: 要把自己放到

3、虛擬工作環(huán)境中,帶著問題來學。 課程內(nèi)容多,需要深入理解; 學習不努力,考試徒傷悲! 如何在本課程中獲得事半功倍的效果如何在本課程中獲得事半功倍的效果? 積極主動地學習; 記筆記; 上課時腦細胞要活躍,多問為什么; 按時、優(yōu)質(zhì)地完成作業(yè); 同學間討論問題; 自己動手練習。成績評估方法成績評估方法 平時成績占平時成績占30 作業(yè)占15 課堂討論,測驗占15(考勤) 上機(完成并提交上機報告) 期末考試成績占期末考試成績占70 內(nèi)容以課堂講授及教材為準。主要參考書主要參考書王珊、薩師煊等編著. 數(shù)據(jù)庫系統(tǒng)概論(第4版) . 高等教育出版社, 2006鄭阿奇. SQL Server實用教程(第3版)

4、.電子工業(yè)出版社,2013年施伯樂等編著. 數(shù)據(jù)庫系統(tǒng)教程. 第2版. 高等教育出版社, 2003.8李建中, 王珊編著. 數(shù)據(jù)庫系統(tǒng)原理. 電子工業(yè)出版社, 1999.4王珊, 陳紅編著. 數(shù)據(jù)庫系統(tǒng)原理教程. 清華大學出版社, 1998.7Ramez Elmasri, Shamkant B. Navathe著.數(shù)據(jù)庫系統(tǒng)基礎. 第3版. 邵佩英, 張坤龍等譯. 人民郵電出版社, 2002.11 學習目的和要求 數(shù)據(jù)庫管理系統(tǒng)出現(xiàn)的背景 數(shù)據(jù)庫管理系統(tǒng)基本功能、 抽象層次 數(shù)據(jù)庫系統(tǒng)總體結構 理解數(shù)據(jù)庫原理、應用及設計三部分間的關系 數(shù)據(jù)庫系統(tǒng)中的術語與基本概念第一章第一章 數(shù)據(jù)庫系統(tǒng)概述數(shù)

5、據(jù)庫系統(tǒng)概述思考一下思考一下 在數(shù)據(jù)庫系統(tǒng)還沒有出現(xiàn)的時候,你在大學學生處工作。 有1000名新生需要登記信息,可能還會有1000人后續(xù)而來,你采用什么方法管理他們?一個完成數(shù)據(jù)輸入、存儲、修改、輸出、持一個完成數(shù)據(jù)輸入、存儲、修改、輸出、持久有效的系統(tǒng)久有效的系統(tǒng)存儲數(shù)據(jù)存儲數(shù)據(jù) 使用一種數(shù)據(jù)結構使用一種數(shù)據(jù)結構易于修改數(shù)據(jù)易于修改數(shù)據(jù) 這種數(shù)據(jù)結構便于查找這種數(shù)據(jù)結構便于查找數(shù)據(jù)和修改數(shù)據(jù)數(shù)據(jù)和修改數(shù)據(jù)持久有效持久有效 系統(tǒng)有安全保護措施系統(tǒng)有安全保護措施走向數(shù)據(jù)庫之一走向數(shù)據(jù)庫之一:“史前時期史前時期” 數(shù)據(jù)庫的“史前時期”是文件系統(tǒng)(File System)時期。 文件系統(tǒng)怎樣開發(fā)管理

6、應用呢?文件系統(tǒng)怎樣開發(fā)管理應用呢?開發(fā)任務簡單學生管理系統(tǒng),學生注冊、選課、學籍和成績管理。開發(fā)工具及環(huán)境程序設計語言如C/C+,Windows下的文件系統(tǒng)。數(shù)據(jù)結構設計確定管理對象;抽取對象主要特征;將特征組織起來。利用C/C+語言中的“結構”數(shù)據(jù)類型存放數(shù)據(jù)。文件系統(tǒng)實現(xiàn)過程(文件系統(tǒng)實現(xiàn)過程(1 1)- - 數(shù)據(jù)結構定義數(shù)據(jù)結構定義struct Student intnStudNo;char szStudName20;charcGender;intnAge;charszDept30;struct EnrollmentintnStudNo;intnWhichTerm;charcEnrol

7、led;charszMem30;struct Course int nCourseNo; char szCourseName20; char szDept30;struct ScoreintnStudNo;intnCourseNo;intnScore;注注:sz - sz - 數(shù)組(數(shù)組(ArrayArray),),n n 整數(shù)(整數(shù)(Number Number ),),c - c - 字符(字符(CharChar)文件系統(tǒng)實現(xiàn)過程(文件系統(tǒng)實現(xiàn)過程(2)構造鏈表為了管理學生的信息,常常以班級為單位。如果對集合數(shù)據(jù)進行添加、修改、排序等操作,一個辦法是構造鏈表。在我們的例子中,至少需要構造四個

8、這樣的鏈表。以學生基本信息鏈表為例:StudentInfoStudentInfo StudentInfo鏈表操作對班級的學生進行增加、刪除、修改、查詢與排序工作。相對于鏈表是對結點進行insert,delete,update,query,sort。文件系統(tǒng)實現(xiàn)過程(文件系統(tǒng)實現(xiàn)過程(3) - 用戶界面設計用戶界面設計文件系統(tǒng)實現(xiàn)過程(文件系統(tǒng)實現(xiàn)過程(4)創(chuàng)建數(shù)據(jù)存儲文件將鏈表中的數(shù)據(jù)以文件形式存盤。使用文件I/O操作函數(shù)完成對文件中數(shù)據(jù)的讀寫,上例中需要四個數(shù)據(jù)文件。程序運行前,需將數(shù)據(jù)文件中的數(shù)據(jù)讀出,放入程序中的對應鏈表中,以方便數(shù)據(jù)的操作。程序結束運行之前,將鏈表中的數(shù)據(jù)存入到對應的數(shù)

9、據(jù)文件中。數(shù)據(jù)管理操作最基本的數(shù)據(jù)操作:增加、刪除、修改和查詢,簡稱:增刪改查詢增刪改查詢。其他操作或功能由這四個基本操作組合而來文件系統(tǒng)的缺陷文件系統(tǒng)的缺陷(1) 無法處理超大量數(shù)據(jù)(如GB級,TB級,PB級)證券、銀行、保險等領域擁有超大量級數(shù)據(jù)。內(nèi)寸不夠,不能一次讀入大量數(shù)據(jù)。32位計算機直接訪問的地址為4GB;在32位機上Linux、Windows NT、Windows 2000等操作系統(tǒng)不允許硬盤上單個文件超過232=4GB大小。大數(shù)據(jù)量下的查詢速度存在問題多用戶并發(fā)訪問(Concurrent Access)前面的學生管理系統(tǒng)只能單機或單用戶使用。多用戶的并發(fā)訪問可能導致多個用戶同時

10、存取同一數(shù)據(jù)(Conflict)。數(shù)據(jù)訪問沖突導致數(shù)據(jù)不一致。多用戶并發(fā)訪問的透明度。文件系統(tǒng)的缺陷文件系統(tǒng)的缺陷(2) 故障情況下的恢復(Crash Recovery) 文件系統(tǒng)需要增加大量代碼 安全性(Security) 文件系統(tǒng)必需做很大改進,以滿足數(shù)據(jù)安全的要求,例如:不同用戶的授權問題。 數(shù)據(jù)的完整性(Integrity) 同一數(shù)據(jù)可能會出現(xiàn)在多個數(shù)據(jù)結構中,同時對應地出現(xiàn)在多個數(shù)據(jù)文件中。 修改一個文件的一個數(shù)據(jù),必須同時修改其他文件中的相同的數(shù)據(jù),否則就會產(chǎn)生數(shù)據(jù)的不一致。走向數(shù)據(jù)庫之二走向數(shù)據(jù)庫之二:“數(shù)據(jù)庫誕生數(shù)據(jù)庫誕生”文件系統(tǒng)管理應用系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(DBMS)大

11、容量數(shù)據(jù)并發(fā)訪問故障恢復安全性完整性文件系統(tǒng)大容量數(shù)據(jù)并發(fā)訪問故障恢復安全性完整性 抽出五個基本公共功能形成數(shù)據(jù)庫管理系統(tǒng) 引起的術語變化: 結構類型 數(shù)據(jù)模型(data model) 具體的某個結構 數(shù)據(jù)模式(data schema) 數(shù)據(jù)文件 數(shù)據(jù)庫數(shù)據(jù)結構,數(shù)據(jù)文件開發(fā)支持數(shù)據(jù)庫系統(tǒng)的優(yōu)點數(shù)據(jù)庫系統(tǒng)的優(yōu)點 整體數(shù)據(jù)的結構化整體數(shù)據(jù)的結構化是數(shù)據(jù)庫的主要特征之一 整體結構化 不再僅僅針對某一個應用,而是面向全組織不再僅僅針對某一個應用,而是面向全組織 不僅數(shù)據(jù)內(nèi)部結構化,整體是結構化的,數(shù)據(jù)之間具有聯(lián)系不僅數(shù)據(jù)內(nèi)部結構化,整體是結構化的,數(shù)據(jù)之間具有聯(lián)系 數(shù)據(jù)庫中實現(xiàn)的是數(shù)據(jù)的真正結構化

12、數(shù)據(jù)的結構用數(shù)據(jù)的結構用數(shù)據(jù)模型數(shù)據(jù)模型描述,無需程序定義和解釋描述,無需程序定義和解釋 數(shù)據(jù)可以數(shù)據(jù)可以變長變長 數(shù)據(jù)的最小存取單位是數(shù)據(jù)的最小存取單位是數(shù)據(jù)項數(shù)據(jù)項數(shù)據(jù)庫系統(tǒng)的優(yōu)點數(shù)據(jù)庫系統(tǒng)的優(yōu)點學號姓名性別年齡所在系家庭住址聯(lián)系電話學生記錄結構課程號課程名學時教材名稱學號課程號學期成績課程記錄結構選課記錄結構整體數(shù)據(jù)的結構化整體數(shù)據(jù)的結構化數(shù)據(jù)庫系統(tǒng)的優(yōu)點數(shù)據(jù)庫系統(tǒng)的優(yōu)點 數(shù)據(jù)獨立性(Data Independence) 將數(shù)據(jù)如何表示的(如:是數(shù)組還是整數(shù)?)和如何存儲的(如:一個記錄的長度)與應用程序分離 數(shù)據(jù)結構和存儲方式發(fā)生變化不需修改和編譯應用程序。 數(shù)據(jù)的邏輯獨立性:當模式改

13、變時,數(shù)據(jù)庫管理員修改有關的外模式/模式映象,使外模式保持不變;應用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性。 數(shù)據(jù)的物理獨立性:當數(shù)據(jù)庫的存儲結構改變了(例如選用了另一種存儲結構),數(shù)據(jù)庫管理員修改模式/內(nèi)模式映象,使模式保持不變;應用程序不受影響。保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)據(jù)的物理獨立性。數(shù)據(jù)庫系統(tǒng)的優(yōu)點數(shù)據(jù)庫系統(tǒng)的優(yōu)點 數(shù)據(jù)庫系統(tǒng)從整體角度看待和描述數(shù)據(jù),數(shù)據(jù)面向整個系統(tǒng),可以被多個用戶、多個應用共享使用。 數(shù)據(jù)共享的好處 減少數(shù)據(jù)冗余,節(jié)約存儲空間 避免數(shù)據(jù)之間的不相容性與不一致性 使系統(tǒng)易于擴充數(shù)據(jù)的共享性高,冗

14、余度低,易擴充數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)庫系統(tǒng)的優(yōu)點數(shù)據(jù)庫系統(tǒng)的優(yōu)點 高效數(shù)據(jù)訪問 (Efficient Data Access) DBMS利用許多復雜的技術來高效存儲和檢索數(shù)據(jù),這對存于外部存儲設備上的數(shù)據(jù)相當重要。數(shù)據(jù)完整性與安全性(Data Integrity and Security) DBMS建立完整性約束,如為每個數(shù)據(jù)項指定數(shù)據(jù)類型。 DBMS提供授權子系統(tǒng),每個用戶或用戶組被賦予一個通過口令保護的帳戶,不同的帳戶有不同的訪問權限。數(shù)據(jù)庫系統(tǒng)的優(yōu)點數(shù)據(jù)庫系統(tǒng)的優(yōu)點(續(xù))(續(xù))數(shù)據(jù)管理 數(shù)據(jù)的集中管理可以控制冗余(Redundancy)。并發(fā)訪問與故障恢復 多個用戶使用數(shù)據(jù)

15、庫,但用戶感到好象只有他一個人在使用似的。 數(shù)據(jù)庫在執(zhí)行某個程序發(fā)生故障后,DBMS能把數(shù)據(jù)庫恢復到這個程序開始執(zhí)行前的正確狀態(tài)??s短應用開發(fā)時間( Reduced Application Development Time) 五大功能及相關的任務由DBMS來完成,系統(tǒng)開發(fā)的難度降低,開發(fā)時間也縮短了。 持久性存儲(Persistent Storage) 數(shù)據(jù)庫可以為程序?qū)ο蠛蛿?shù)據(jù)結構提供持久性存儲。數(shù)據(jù)庫系統(tǒng)的基本功能數(shù)據(jù)庫系統(tǒng)的基本功能 數(shù)據(jù)獨立性 并發(fā)控制 故障恢復 安全性 完整性注意:雖然DBMS有很多優(yōu)勢,但在某些情況下使用DBMS反而會導致不必要的開銷。如: 苛刻的實時環(huán)境(現(xiàn)在有r

16、eal-time DB); 操作少,代碼要求精煉時; 數(shù)據(jù)是非結構化或半結構化的(如HTML、XML、MS Word文檔),還沒有相應的查詢語言支持。走向數(shù)據(jù)庫之三走向數(shù)據(jù)庫之三:“數(shù)據(jù)庫的抽象層次數(shù)據(jù)庫的抽象層次”應用系統(tǒng)開發(fā)數(shù)據(jù)庫的抽象過程數(shù)據(jù)庫的抽象過程對應用中的信息(數(shù)據(jù))進行計算機化的管理 “數(shù)據(jù)抽象”;例如:管理計算機系的學生李白(20010311)的“數(shù)據(jù)庫”課程的成績 用一定的方式來組織數(shù)據(jù),使其具有結構化 “ “數(shù)據(jù)數(shù)據(jù)模型模型”(data model)(data model);利用“數(shù)據(jù)模型數(shù)據(jù)模型”工具完成對具體系統(tǒng)的數(shù)據(jù)抽取、組織,得到的結果就是“數(shù)據(jù)模式數(shù)據(jù)模式”(d

17、ata schemadata schema)復雜的應用系統(tǒng),可分成多個應用子系統(tǒng)。對每個子系統(tǒng)進行數(shù)據(jù)抽象,得到各自的模式,稱為外模式(external schema) “ “視圖抽象視圖抽象”;在外模式的基礎上“合零為整”,形成一個全局的數(shù)據(jù)模式,是概念上的,唯一的,稱為概念模式(conceptual schema) “概念抽象概念抽象”;概念模式轉(zhuǎn)化成計算機可實現(xiàn)的內(nèi)模式(internal schema),落實到計算機的物理實現(xiàn)層面 “ “物理抽象物理抽象”;數(shù)據(jù)庫三級抽象層次(模式)結構數(shù)據(jù)庫三級抽象層次(模式)結構外模式1概念模式內(nèi)模式外模式m外模式n視圖抽象概念抽象物理抽象數(shù)據(jù)庫數(shù)據(jù)

18、庫用戶組用戶組1 1用戶組用戶組n n全局局部視圖抽象概念抽象概念抽象視圖抽象數(shù)據(jù)庫的抽象層次數(shù)據(jù)庫的抽象層次應用系統(tǒng)的設計和工具應用系統(tǒng)的設計和工具外模式1概念模式內(nèi)模式外模式2外模式n數(shù)據(jù)庫數(shù)據(jù)庫用戶組用戶組1 1用戶組用戶組n n物理抽象物理抽象局部全局自頂向下自頂向下自底向上自底向上物理抽象物理抽象數(shù)據(jù)庫舞臺上的角色數(shù)據(jù)庫舞臺上的角色 最終用戶最終用戶(end user):):為了查詢、更新、以及產(chǎn)生報表等需要而訪問數(shù)據(jù)庫的人。如銀行的柜員、商業(yè)分析師等。 數(shù)據(jù)庫設計者:數(shù)據(jù)庫設計者:分析用戶需求,負責從“外部模式” “概念模式”“內(nèi)模式”建立數(shù)據(jù)庫的過程。 數(shù)據(jù)庫管理員(數(shù)據(jù)庫管理員

19、(DBA):):負責數(shù)據(jù)庫監(jiān)控、日常維護和管理。例如,為用戶授予存取權限等。數(shù)據(jù)庫設計者往往是DBA的候選人。 有關的軟件工程師:有關的軟件工程師:開發(fā)數(shù)據(jù)庫工具軟件包;系統(tǒng)分析;等等。數(shù)據(jù)庫的語言數(shù)據(jù)庫的語言 數(shù)據(jù)庫設計人員使用數(shù)據(jù)定義語言數(shù)據(jù)定義語言(DDL)完成對數(shù)據(jù)庫模式的描述。 數(shù)據(jù)庫管理員和用戶使用數(shù)據(jù)操縱語言數(shù)據(jù)操縱語言(DML)對數(shù)據(jù)進行“增刪改查詢”等操作。 數(shù)據(jù)庫管理員使用數(shù)據(jù)控制語言數(shù)據(jù)控制語言(DCL)對數(shù)據(jù)庫進行管理。 SQL(Structured Query Language,結構化查詢語言結構化查詢語言)綜合了上述各方面在一個語言中,是關系型數(shù)據(jù)庫管理系統(tǒng)支持的數(shù)

20、據(jù)庫語言。目前的標準化版本為SQL-92,被ANSI、ISO (International Standards Organization)采納。 SQL語言既可以作為交互式(Interactive)數(shù)據(jù)庫語言使用,也可以嵌入(Embedded)到程序設計語言中作為其子語言使用。程序設計語言被稱為宿主語言宿主語言(Host Language),如:C/C+語言、PowerBuilder、Delphi等。數(shù)據(jù)庫設計、原理與應用之間的聯(lián)系數(shù)據(jù)庫設計、原理與應用之間的聯(lián)系數(shù)據(jù)庫系統(tǒng)總體結構圖數(shù)據(jù)庫系統(tǒng)總體結構圖利用利用SQL中的中的DDL將將關關系模式存入數(shù)據(jù)庫系模式存入數(shù)據(jù)庫SQL定義語句概念模式概

21、念模式 外模式外模式 1 外模式外模式n 外模式外模式 2 現(xiàn)實系統(tǒng)現(xiàn)實系統(tǒng) 數(shù)數(shù)據(jù)據(jù)庫庫設設計計部部分分 內(nèi)內(nèi)模式模式 關系數(shù)據(jù)庫管理系統(tǒng)關系數(shù)據(jù)庫管理系統(tǒng)RDBMSRDBMS 數(shù)據(jù)庫實現(xiàn)(原理)部分數(shù)據(jù)庫實現(xiàn)(原理)部分DB 數(shù)據(jù)庫安全數(shù)據(jù)庫安全 并發(fā)控制并發(fā)控制 故障恢復故障恢復 完整性限制完整性限制CGI/ISAPI ODBC/JDBC /OLE DB SQL 的嵌入式使用的嵌入式使用C/C+、 PB、 Delphi、Java應用程序應用程序 數(shù)據(jù)庫應用部分數(shù)據(jù)庫應用部分 用戶用戶 SQL的的交交互式互式使用使用 SQL語句 C/S 模式 瀏覽器瀏覽器 WEB服務器服務器 B/S模式

22、HTTP SQL語句CGI/ASP /JSP程序程序 走向數(shù)據(jù)庫之四走向數(shù)據(jù)庫之四:“數(shù)據(jù)庫的發(fā)展數(shù)據(jù)庫的發(fā)展” “史前時期 :文件系統(tǒng) “石器時代和中古時期” :層次與網(wǎng)狀數(shù)據(jù)庫系統(tǒng) “近代,1970+”:標準DBMS,關系數(shù)據(jù)庫系統(tǒng)(RDBS) “當代,1989+”:面向?qū)ο髷?shù)據(jù)庫(OODBS) “當代,1990+”:對象-關系數(shù)據(jù)庫(ORDBS) “現(xiàn)代,1995+”:數(shù)據(jù)倉庫;并行數(shù)據(jù)庫;分布式數(shù)據(jù)庫;基于Internet/Web的數(shù)據(jù)庫系統(tǒng)C/S結構,B/S結構OLTP,OLAP,數(shù)據(jù)挖掘第一代數(shù)據(jù)庫系統(tǒng)第一代數(shù)據(jù)庫系統(tǒng) 1964,Bachman et al,第一個數(shù)據(jù)庫IDS,網(wǎng)狀

23、數(shù)據(jù)庫,數(shù)據(jù)庫界第一個圖靈獎(數(shù)據(jù)庫界第一個圖靈獎(1973)。 1968,IBM, 商品化產(chǎn)品,IMS,層次數(shù)據(jù) 1969,DBTG,DBTG報告,確定了網(wǎng)狀數(shù)據(jù)庫系統(tǒng)的概念、方法和技術。 Charles W. Bachman 第二代數(shù)據(jù)庫系統(tǒng)第二代數(shù)據(jù)庫系統(tǒng) 1970,IBM, E.F.Codd,提出了關系模型,奠定了關系型數(shù)據(jù)庫管理系統(tǒng)的基礎(關系數(shù)據(jù)庫之父)。 數(shù)據(jù)庫界第二個圖靈獎數(shù)據(jù)庫界第二個圖靈獎(19811981) E.F.CoddJames Gray-1998年圖靈獎得主年圖靈獎得主 由于數(shù)據(jù)庫是計算機各種應用的基礎,它大大促進計算機的普及。 IBM,“System R”項目成

24、果極大地推動了關系數(shù)據(jù)庫技術的發(fā)展,在此基礎上推出的DB2 和SQL 等產(chǎn)品成為IBM 的主流產(chǎn)品。System R本身作為原型并未問世,但鑒于其影響,ACM把1988 年的 “軟件系統(tǒng)獎”授予了System R開發(fā)小組( 獲獎的6個人中就包括1 9 9 8 年圖靈獎得主J.Gray )。 基于J. Gray 在數(shù)據(jù)庫安全性、事務處理、圖形處理、存儲方面的杰出貢獻,他獲得了1998年圖靈獎。這是數(shù)據(jù)庫界第三個圖靈獎。James Gray群雄并起到春秋五霸群雄并起到春秋五霸Gartner Group(位于美國康涅狄克州斯坦福德的(位于美國康涅狄克州斯坦福德的IT市場市場調(diào)查公司)基于估計的稅收(

25、調(diào)查公司)基于估計的稅收(Revenues)對)對2005年年RDBMS的賣主排序的賣主排序Top 5:Oracle: 48.9% IBM: 22.4% Microsoft : 13.9% Teradata: 3.2% Sybase: 3.0% 關系數(shù)據(jù)庫管理系統(tǒng)2005年比前一年增長8.3%Larry Ellison,Oracle CEOOLAP/Data Warehouse/Web Data Warehouse 1988年,IBM公司的研究者Barry Devlin和Paul Murphy發(fā)明了一個新的術語信息倉庫,之后,IT的廠商開始構建實驗性的數(shù)據(jù)倉庫。 1991,W.H. Inmon

26、, 提出了數(shù)據(jù)倉庫(Data Warehouse)的概念. 1993, Codd, 定義了OLAP,推動了數(shù)據(jù)倉庫的建立。 Inmon vs.Kimball 數(shù)據(jù)倉庫數(shù)據(jù)庫 數(shù)據(jù)倉庫支持經(jīng)營管理中的決策制定過程。它面向運營分析,數(shù)據(jù)挖掘(Data Mining),決策,商務(政務)智能。 數(shù)據(jù)庫面向商業(yè)處理,如銷售,進貨等一單一單的業(yè)務處理。為什么需要數(shù)據(jù)倉庫和為什么需要數(shù)據(jù)倉庫和OLAP數(shù)據(jù)庫平板文件數(shù)據(jù)倉庫去年的第二季度去年的第二季度WalMart的的所有分店的所有分店的洗發(fā)水的銷售情洗發(fā)水的銷售情況況?顧客銷售50元50kg1元蘋果15元10塊1.5元香皂B126元20瓶6.3元洗發(fā)水A

27、總銷售額銷售量單價貨品記錄內(nèi)容(x年x月x日)每日的銷售記錄記錄存儲經(jīng)理運營分析結果去年的第二季度去年的第二季度WalMart的所有的所有分店的分店的洗發(fā)水的總銷售額為洗發(fā)水的總銷售額為14500元元OLTP and OLAP數(shù)據(jù)庫平板文件數(shù)據(jù)倉庫顧客銷售每日的銷售記錄記錄存儲OLTPOLAP新商業(yè)計劃運營分析結果Internet/Web Database 單機多機 本地網(wǎng)絡化 純數(shù)據(jù)多媒體數(shù)據(jù) 結構化數(shù)據(jù)非結構化數(shù)據(jù)/半結構化數(shù)據(jù) 主機/顯示器C/S和B/S結構 Zhang Pin Zhang Pin 21 21 Female Female /Student1 /Student1C/S和和B

28、/S模式模式 2-tier Client/ServerDBMS服務器數(shù)據(jù)讀寫和處理。DB數(shù)據(jù)存儲客戶機提出業(yè)務要求;事物流控制;顯示結果。網(wǎng) 絡應用服務器事物流控制;負荷平衡。提出業(yè)務要求;顯示結果。客戶機網(wǎng) 絡DBMS服務器數(shù)據(jù)讀寫和處理。DB數(shù)據(jù)存儲應用服務器事物流控制;負荷平衡。瀏覽器客戶端:提出業(yè)務要求;顯示結果。HTTPHTTPWeb服務器CGICGI,ISAPIISAPI,NSAPINSAPIODBCODBC,JDBCJDBC,OLE DBOLE DB3-tier Client/ServerBrowser/Server模式 數(shù)據(jù)庫系統(tǒng)的基本概念(數(shù)據(jù)庫系統(tǒng)的基本概念(1) 數(shù)據(jù)(數(shù)

29、據(jù)(Data):):是描述現(xiàn)實世界中各種具體事物或抽象概念的、可存貯并具有明確意義的信息。 數(shù)據(jù)庫數(shù)據(jù)庫(Database, DB):是相互關聯(lián)的數(shù)據(jù)集合。 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(Database Management System, DBMS) :是一個通用的軟件系統(tǒng),由一組計算機程序構成。它能對數(shù)據(jù)庫進行有效的管理,包括存儲管理、安全性管理、完整性管理等;同時,它也為用戶提供了一個軟件環(huán)境,使其能夠方便快速地創(chuàng)建、維護、檢索、存取和處理數(shù)據(jù)庫中的信息。數(shù)據(jù)庫系統(tǒng)的基本概念(數(shù)據(jù)庫系統(tǒng)的基本概念(2) 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(Database System, DBS)(Database

30、 System, DBS):由數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)構成,更廣義的構成則為“DB+DBMS+數(shù)據(jù)庫管理員+應用程序+用戶”。 數(shù)據(jù)字典數(shù)據(jù)字典(Data Dictionary, DD)(Data Dictionary, DD):是數(shù)據(jù)庫系統(tǒng)中的一個特殊文件,用于存儲數(shù)據(jù)庫中重要的說明信息,這些說明信息稱為元數(shù)據(jù)元數(shù)據(jù)(Meta Data)(Meta Data)。元數(shù)據(jù)是描述數(shù)據(jù)的數(shù)據(jù),例如:數(shù)據(jù)類型及長度(P17),價格單位,數(shù)據(jù)導出規(guī)則,等等,已經(jīng)成為重要的系統(tǒng)數(shù)據(jù)。 數(shù)據(jù)庫操作數(shù)據(jù)庫操作(Database Operation)(Database Operation):在數(shù)據(jù)庫應用中,最常見

31、的有:增加、刪除、修改和查詢。 大型數(shù)據(jù)庫與微機數(shù)據(jù)庫區(qū)別:大型數(shù)據(jù)庫與微機數(shù)據(jù)庫區(qū)別:在于微機數(shù)據(jù)庫系統(tǒng)的某些功能相對弱化了。視圖(視圖(1) 視圖視圖(View):從不同的角度截取同一數(shù)據(jù)庫的子集(不同的理解),每一個子集被稱為該數(shù)據(jù)庫的一個視圖。 數(shù)據(jù)庫的分層視圖:數(shù)據(jù)庫的分層視圖: 應用程序員應用程序員 最終用戶最終用戶 DBA 系統(tǒng)程序員系統(tǒng)程序員 物理物理 數(shù)據(jù)數(shù)據(jù) 物理視圖物理視圖 內(nèi)模式內(nèi)模式 內(nèi)部視圖內(nèi)部視圖 概念模式概念模式 概念視圖概念視圖 子模式子模式1 外部視圖外部視圖 子模式子模式2 子模式子模式n 用戶圖表用戶圖表1 I/O 視圖視圖 用戶圖表用戶圖表2 用戶圖表

32、用戶圖表n 組織組織 視圖(視圖(2) 輸入輸出數(shù)據(jù)視圖:輸入輸出數(shù)據(jù)視圖:即終端用戶所見到的輸入輸出數(shù)據(jù)結構描述。是按用戶要求表示出的數(shù)據(jù),如報表等。 外部視圖外部視圖(External View)(External View):局部數(shù)據(jù)庫邏輯結構稱為外部視圖。這種視圖在數(shù)據(jù)庫設計時通常以圖形的形式(如E-R圖)表示,有的又叫視圖或用戶視圖。 概念視圖概念視圖(Conceptual View)(Conceptual View):整個數(shù)據(jù)庫系統(tǒng)的全局邏輯結構。這種邏輯結構稱為概念模型,它不包含任何數(shù)據(jù)庫的實現(xiàn)細節(jié),如:何種DBMS、文件組織、存取方法等。這種邏輯結構的形式化描述稱為概念視圖。在

33、數(shù)據(jù)庫設計時,概念視圖通常也以E-R圖表示。視圖(視圖(3) 內(nèi)部視圖內(nèi)部視圖(Internal View)(Internal View)或存儲視圖:或存儲視圖:特定的DBMS所處理的數(shù)據(jù)庫的內(nèi)部結構稱為內(nèi)部模型,其形式化描述稱為內(nèi)部視圖或存儲視圖,它將數(shù)據(jù)庫表示為“內(nèi)部記錄”或“存儲記錄”的集合。存儲記錄仍然是邏輯性的,它不是存儲設備上的物理記錄或物理塊,也不涉及任何具體設備限制,如:柱面或磁道的大小等,所以存儲視圖還不是最底層的物理層。存儲視圖還指明存儲記錄的物理順序、以及它們?nèi)绾伪舜岁P聯(lián)。存儲視圖的語言形式定義稱為內(nèi)部模式。 物理視圖物理視圖(Physical View)(Physica

34、l View):數(shù)據(jù)庫在存儲設備上的物理組織稱為物理模型,其描述稱為物理視圖。它包含了所使用設備特征、物理記錄或塊的組成、尋址技術和壓縮存儲技術等的說明。數(shù)據(jù)抽象、數(shù)據(jù)模型與數(shù)據(jù)模式(數(shù)據(jù)抽象、數(shù)據(jù)模型與數(shù)據(jù)模式(1) 數(shù)據(jù)抽象數(shù)據(jù)抽象(Data Abstraction):即是將數(shù)據(jù)抽象化、邏輯化,使用戶不必了解數(shù)據(jù)庫文件的物理存儲結構、存儲位置和存取方法等細節(jié),即可存取數(shù)據(jù)庫。在數(shù)據(jù)庫系統(tǒng)中,有三種級別的數(shù)據(jù)抽象,即:視圖級抽象、概念級抽象和物理級抽象。 數(shù)據(jù)模型數(shù)據(jù)模型(Data Model):即是對數(shù)據(jù)進行抽象化表示的工具,主要使用邏輯概念(如對象、對象屬性、對象聯(lián)系等)來表示數(shù)據(jù)。由于

35、抽象級別的存在,數(shù)據(jù)模型也存在相應的級別。如:概念數(shù)據(jù)模型、邏輯數(shù)據(jù)模型、物理數(shù)據(jù)模型等。對于抽象級別高的概念數(shù)據(jù)模型我們叫它語義語義(Semantic)數(shù)據(jù)模型數(shù)據(jù)模型,如ER模型。 數(shù)據(jù)模式數(shù)據(jù)模式(Data Schema):根據(jù)數(shù)據(jù)模型來描述數(shù)據(jù),得到的具體的表達。亦即是描述數(shù)據(jù)的模板。數(shù)據(jù)庫三級抽象層次(模式)結構數(shù)據(jù)庫三級抽象層次(模式)結構外模式1概念模式內(nèi)模式外模式m外模式n視圖抽象概念抽象物理抽象數(shù)據(jù)庫數(shù)據(jù)庫用戶組用戶組1 1用戶組用戶組n n數(shù)據(jù)抽象、數(shù)據(jù)模型與數(shù)據(jù)模式(數(shù)據(jù)抽象、數(shù)據(jù)模型與數(shù)據(jù)模式(2) 三者的關系三者的關系: 數(shù)據(jù)抽象是將真實世界中的信息(數(shù)據(jù))提煉,再提煉,變成計算機能認識,可以管理的數(shù)據(jù)的過程; 數(shù)據(jù)模型是數(shù)據(jù)抽象的工具,是數(shù)據(jù)組織和表示的方式; 數(shù)據(jù)模

溫馨提示

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

評論

0/150

提交評論