数据库系统原理:第一章数据库系统概述

上传人:cl****1 文档编号:569226773 上传时间:2024-07-28 格式:PPT 页数:80 大小:491.50KB
返回 下载 相关 举报
数据库系统原理:第一章数据库系统概述_第1页
第1页 / 共80页
数据库系统原理:第一章数据库系统概述_第2页
第2页 / 共80页
数据库系统原理:第一章数据库系统概述_第3页
第3页 / 共80页
数据库系统原理:第一章数据库系统概述_第4页
第4页 / 共80页
数据库系统原理:第一章数据库系统概述_第5页
第5页 / 共80页
点击查看更多>>
资源描述

《数据库系统原理:第一章数据库系统概述》由会员分享,可在线阅读,更多相关《数据库系统原理:第一章数据库系统概述(80页珍藏版)》请在金锄头文库上搜索。

1、第一章 数据库系统概述提纲n数据库系统概述n数据库模式 (Schema)n数据模型(Model)n数据库新方向1数据库系统概述数据库应用非常广泛,凡是需要大量存储数据的地方都要用到数据库n几个概念n数据n数据库n数据库管理系统n数据库系统2几个概念n数据(Data)与数据管理n信息的符号表示n数据库(DB)n能长期存储的由DBMS统一管理的被多个用户所共享的数据集合n数据库管理系统(DBMS)n系统软件n存取数据库中数据的一套程序n数据库系统(DBS)n带有数据库的整个计算机系统3几个概念n常用的数据库管理系统软件:nDB2 (IBM公司公司)nOracle (Oracle 公司公司)nSQL

2、 Server (Microsoft 公司公司)nInformix (IBM公司公司) nAccess (Microsoft公司公司) nMySQL (开源软件开源软件)4数据管理的发展阶段数据管理的发展阶段考察要点n各阶段的技术及应用背景n计算机应用范围n外存储设备n数据管理软件n各个阶段的差别体现n谁管理数据n数据面向谁n数据与应用的独立性5数据管理的发展阶段数据管理的发展阶段n数据独立性数据独立性 (data independence)n当数据的结构发生变化时,通过系统提供的映象(转换)功能,使应用程序不必改变n物理数据独立性物理数据独立性(physical data independe

3、nce)n当数据的存储结构改变时,应用程序不必改变n逻辑数据独立性逻辑数据独立性(logical data independence)n当数据的逻辑结构改变时,应用程序不必改变n数据独立性与共享性数据独立性与共享性6数据管理的发展阶段数据管理的发展阶段n人工管理阶段(50年代中期以前)n文件系统阶段(50年代后期-60年代中期)n数据库系统阶段(60年代后期开始)n数据库系统 VS 文件系统n数据库系统的特点7人工管理阶段人工管理阶段n背景n计算机主要用于科学计算n数据量小、结构简单,如高阶方程、曲线拟和等n外存为顺序存取设备n磁带、卡片、纸带,没有磁盘等直接存取设备n没有操作系统,没有数据管

4、理软件n用户用机器指令编码,通过纸带机输入程序和数据,程序运行完毕后,由用户取走纸带和运算结果,再让下一用户上机操作8人工管理阶段人工管理阶段n特点n用户完全负责数据管理工作n数据的组织、存储结构、存取方法、输入输出等n数据完全面向特定的应用程序n每个用户使用自己的数据,数据不保存,用完就撤走n数据与程序没有独立性n程序中存取数据的子程序随着存储结构的改变而改变n磁带的特点n优点:廉价地存放大容量数据n缺点:顺序访问;1%所需,100%访问9人工管理阶段人工管理阶段访问访问访问数据1数据2数据n程序1程序2程序n10文件系统阶段文件系统阶段n背景n计算机不但用于科学计算,还用于管理n外存有了磁

5、盘、磁鼓等直接存取设备n直接存取设备(DASD)n无须顺序存取n由地址直接访问所需记录n有了专门管理数据的软件,一般称为文件系统n文件存储空间的管理n目录管理n文件读写管理n文件保护n向用户提供操作接口11文件系统阶段文件系统阶段n特点n系统提供一定的数据管理功能n存取方法(索引文件、链接文件、直接存取文件、倒排文件等)n支持对文件的基本操作(增、删、改、查等),用户程序不必考虑物理细节n数据的存取基本上以记录为单位n数据仍是面向应用的n一个数据文件对应一个或几个用户程序n数据与程序有一定的独立性n文件的逻辑结构与存储结构由系统进行转换,数据在存储上的改变不一定反映在程序上12文件系统阶段文件

6、系统阶段数据1数据2数据n存取方式程序1程序2程序n13文件系统阶段文件系统阶段n数据与程序的独立性差n文件系统的出现并没有从根本上改变数据与程序紧密结合的状况,数据的逻辑结构改变则必须修改应用程序n文件系统只是解脱了程序员对物理设备存取的负担,它并不理解数据的语义,只负责存储n数据的语义信息只能由程序来解释,也就是说,数据收集以后怎么组织,以及数据取出来之后按什么含义应用,只有全权管理它的程序知道。n一个应用若想共享另一个应用生成的数据,必须同另一个应用沟通,了解数据的语义与组织方式14文件系统阶段文件系统阶段n数据的共享性差,冗余度大n数据面向应用n即使不同应用程序所需要的数据有部分相同时

7、,也必须建立各自的文件,而不能共享相同的数据n数据孤立n数据分散管理,许多文件,许多数据格式n数据的不一致性n由于数据存在很多副本,给数据的修改与维护带来了困难,容易造成数据的不一致性15文件系统阶段文件系统阶段补贴系别姓名学号住址系别性别姓名学号学位学分系别姓名学号学位 出身年龄系别性别姓名学号16文件系统阶段文件系统阶段n数据查询困难n记录之间无联系n应用自己编程实现n对每个查询都重新编码n数据完整性难于保证17数据库系统阶段数据库系统阶段n背景n计算机管理的数据量大,关系复杂,共享性要求强(多种应用、不同语言共享数据)n外存有了大容量磁盘,光盘n软件价格上升,硬件价格下降,编制和维护软件

8、及应用程序成本相对增加,其中维护的成本更高,力求降低18数据库系统阶段数据库系统阶段n特点n有了数据库管理系统n面向全组织,面向现实世界n独立性较强n由DBMS统一存取,维护数据语义及结构19数据库系统阶段数据库系统阶段n数据库观点n数据不是依赖于处理过程的附属品,而是现实世界中独立存在的对象数据1统一存取数据2数据n程序2程序1程序n20示例S(SNO, SNAME, STATUS, CITY)P(PNO, PNAME, COLOR, WEIGHT, CITY)J(JNO, JNAME,CITY)SPJ(SNO, PNO, JNO, QTY)S S表表示示供供应应商商,它它的的各各属属性性依

9、依次次为为供供应应商商号号,供供应应商商名名,供供应应商状态值,供应商所在城市;商状态值,供应商所在城市;P P表表示示零零件件,它它的的各各属属性性依依次次为为零零件件号号,零零件件名名,零零件件颜颜色色,零件重量,零件存放的城市;零件重量,零件存放的城市;J J表表示示工工程程,它它的的各各属属性性依依次次为为工工程程号号,工工程程名名,工工程程所所在在城城市;市;SPJSPJ表表示示供供货货关关系系,它它的的各各属属性性依依次次为为供供应应商商号号,零零件件号号,工工程号,供货数量。程号,供货数量。供应商供应商项目项目零件零件供应供应21示例n查询n“北京的所有工程”n“供应红色零件给北

10、京的工程的供应商”n维护n“不允许供应不存在的零件”22示例基于文件系统n文件系统如何来组织?n分别组织几个文件,存储各类对象的记录n系统不支持文件间的联系,由应用程序负责查询表达及数据的维护23示例基于数据库系统数据库系统n数据库系统(关系)n数据统一按表结构存放,设为S,P,J,SPJn查询:只需提查询要求,由系统完成查询过程SELECT SNOFROM P, J, SPJWHERE SPJ.JNO = J.JNO AND SPJ.PNO = P.PNO AND J.CITY = “BEIJING” AND P.COLOR = “RED” n维护:应用提出完整性约束,系统自动检查CREAT

11、E TABLE SPJ(, FOREIGN KEY (PNO) REFERENCES P(PNO), )24数据库系统数据库系统 vsvs 文件系统文件系统n文件系统的弱点n记录之间无联系n难于维护数据的完整性n数据库系统的用武之地n有查询n整体数据结构化n效率两面观n运行效率n开发效率25数据库系统数据库系统 vsvs 文件系统文件系统文件系统数据管理应用应用文件系统应用数据管理应用数据管理26数据库系统的特点数据库系统的特点n面向全组织的复杂的数据结构n支持全企业的应用而不是某一个应用n数据反映了客观事物间的本质联系,而不是着眼于面向某个应用,是有结构的数据。这是数据库系统的主要特征之一,

12、与文件系统的根本差别。文件系统只是记录的内部有结构,一个文件的记录之间是个线性序列,记录之间无联系27数据库系统的特点数据库系统的特点n数据的冗余度小,易扩充数据的冗余度小,易扩充n数据面向整个系统,而不是面向某一应用,数据集中管理,数据共享,因此冗余度小n节省存储空间,减少存取时间,且可避免数据之间的不相容性和不一致性n每个应用选用数据库的一个子集,只要重新选取不同子集或者加上一小部分数据,就可以满足新的应用要求,这就是易扩充性28学号姓名性别系别年龄住址出身学位学分补贴数据库系统的特点数据库系统的特点29数据库系统的特点数据库系统的特点n具有较高的数据和程序的独立性n把数据库的定义和描述从

13、应用程序中分离出去n数据描述是分级的(全局逻辑、局部逻辑、存储)n数据的存取由系统管理,用户不必考虑存取路径等细节,从而简化了应用程序30数据库系统的特点数据库系统的特点n统一的数据控制功能,数据共享程度高n数据的安全性控制(Security)n保护数据以防止不合法的使用所造成的数据泄露和破坏n措施:用户标识与鉴定,存取控制n数据的完整性控制(Integrity)n数据的正确性、有效性、相容性n措施:完整性约束条件定义和检查n并发控制(Concurrency)n对多用户的并发操作加以控制、协调,防止其互相干扰而得到错误的结果并使数据库完整性遭到破坏n措施:封锁31数据库系统的构成数据库系统的构

14、成n概念n数据库系统的软硬件层次n数据库系统的主要成分n数据库管理系统的层次结构及其功能n数据库系统结构n数据库应用系统结构32概念概念n数据库系统DBSn带有数据库的整个计算机系统,包括硬件、软件、数据、人员33数据库系统的软硬件层次数据库系统的软硬件层次硬件硬件操作系统操作系统DBMS,编译系统编译系统应用开发工具软件应用开发工具软件应用系统应用系统PB,VB,VCDELPHIOracle,Db2,Sybase,SQL Server,Informix34数据库系统的主要成分数据库系统的主要成分n硬件hardwaren大内存,放得下OS,DBMS核心,系统缓冲区,用户工作区等n大容量、直接存

15、取的外存设备n作数据备份的磁带n软件softwarenOS,DBMS,高级语言编译系统及其与数据库的接口,应用开发工具,应用系统n数据datan目标数据:数据本身n描述数据:对数据的说明信息35数据库系统的主要成分数据库系统的主要成分n用户n最终用户(naive users)n通过应用系统的用户接口(菜单等)使用数据库n应用程序员(application programmers)n基于外模式来编写应用程序n系统分析员(system analysts)n负责应用系统的需求分析和规范定义,确定系统的软硬件配置,参与数据库模式设计n数据库管理员DBA(database administrator)n

16、负责数据库的全面管理和控制36数据库系统的主要成分数据库系统的主要成分nDBA职责n建库方面n确定模式、外模式、存储结构、存取策略n负责数据的整理和装入n用库方面n定义完整性约束条件n规定数据的保密级别、用户权限n监督和控制数据库的运行情况n制定后援和恢复策略,负责故障恢复n改进方面n监督分析系统的性能(空间利用率,处理效率)n数据库重组织,物理上重组织,以提高性能n数据库重构造,设计上较大改动,模式和内模式修改37DBMSDBMS的层次结构的层次结构数据库数据库数据文件,数据字典,数据文件,数据字典,索引,统计数据索引,统计数据缓冲区,提供数据页操作DDL,DML,查询计算引擎,提供关系、视

17、图接口事务,日志,封锁,存取路径,提供单元组接口执行物理文件的读写操作38DBMSDBMS的主要功能的主要功能n数据库定义功能nDDL语言(Data-Definition Language)n描述外模式、模式、内模式(源模式)n模式翻译程序n把源模式翻译成目标模式,存入数据字典中数据字典数据字典目标模式目标模式39DBMSDBMS的主要功能的主要功能n数据存取功能nDML语言(Data-manipulation language)n对数据库进行检索、插入、修改、删除nDML类型n宿主型nDML不独立使用,嵌入到高级语言(主语言)程序中使用n自含型n独立使用,交互式命令方式nDML语句执行方式n

18、宿主型n预编译和增强编译n自含型n解释执行40DBMSDBMS的主要功能的主要功能n数据库运行管理n并发控制、存取控制、完整性约束条件检查和执行,日志组织和管理,事务管理和自动恢复n数据组织、存储和管理n用户数据、索引、数据字典的组织、存储和管理,包括文件结构、存取方式、数据之间联系的实现等n数据库的建立和维护功能n数据的装入、转换、卸出,数据库的转储、恢复、性能监视和分析等41DBMS的运行过程数据字典数据字典数据库数据库911121710582,3,642DBMS的运行过程nStep 1n用户向DBMS发出调用数据库数据的命令nStep 2nDBMS对命令进行语法检查、语义检查、存取权限检

19、查,决定是否执行该命令nStep 3nDBMS执行查询优化,把命令转换为一串单记录的存取操作序列nStep 4n执行存取操作序列(反复执行以下各步,直至结束)nStep 5nDBMS首先在缓冲区内查找记录,若找到转10,否则转6nStep 6nDBMS查看存储模式,决定从哪个文件存取哪个物理记录43DBMS的运行过程nStep 7nDBMS根据6的结果,向操作系统发出读取记录的命令nStep 8n操作系统执行读取数据的命令nStep 9n操作系统将数据从数据库存储区送到系统缓冲区nStep 10nDBMS根据用户命令和数据字典的内容导出用户所要读取的数据格式nStep 11nDBMS将数据记录

20、从系统缓冲区传送到用户工作区nStep 12nDBMS将执行状态信息返回给用户44数据库管理系统查询处理器存储管理器用户磁盘存储器数据库系统结构45数据库应用系统结构n单机结构 Foxpro系列、Access数据库 如超市收费机等n客户机/服务器结构(C/S结构)服务器(SQL Server)客户机1客户机n46n客户机:用于提供应用程序n应用程序服务器:用于应用程序的业务逻辑处理n数据库服务器:用于数据的存储和检索数据库应用系统结构n三层结构数据库服务器(SQL Server)客户机1客户机n应用服务器47数据库应用系统结构nWeb应用的三层结构数据库服务器(SQL Server)客户机1客

21、户机n.Web服务器互联网后台应用程序48数据库应用系统结构n对等服务器 数据库网络或分布式数据库应用n集群服务器 并行服务器49数据库模式数据库模式n模式(Schema)n数据字典(DD)n实例与模式(Instances and Schemas)n元数据(Meta-Data)50数据库模式数据库模式n模式n数据的抽象,数据的描述n数据字典n系统目录:存取和管理数据的依据51数据库模式数据库模式n实例与模式n型与值的区别n型是相对稳定的,值是随时间不断变化的n示例class personpublic:string name;string address;person TOM; person是型

22、,TOM是变量,TOM在某时刻的值是实例52数据库模式数据库模式n元数据(meta-data)n描述数据的数据n描述数据的含义和性质,以便更好地理解、管理和使用数据的数据n示例数据:1, 1, 2, 3, 5, 8, 13元数据: 数据:图书馆中的书籍元数据:标题、作者、关键词、ISBN号53数据库模式数据库模式n模式的分级n为了提高数据的物理独立性和逻辑独立性,使数据库的用户观点,即用户看到的数据库,与数据库的物理方面,即实际存储的数据库区分开来,数据库系统的模式是分级的n数据库系统三级模式结构nCODASYL( Conference On Data System Language,美国数据

23、系统语言协商会)提出模式、外模式、存储模式三级模式的概念。三级模式之间有两级映象54数据库模式数据库模式数据库数据库内模式内模式模模 式式外模式外模式2 2外模式外模式3 3外模式外模式1 1应用应用A A应用应用B B应用应用C C应用应用D D应用应用E E外模式外模式/ /模式映象模式映象模式模式/ /内模式映象内模式映象55数据库模式数据库模式n外模式(Sub-Schema)n用户的数据视图n是数据的局部逻辑结构,模式的子集n模式(Schema)n所有用户的公共数据视图n是数据库中全体数据的全局逻辑结构和特性的描述n内模式(Storage Schema)n又称存储模式n是数据的物理结构

24、及存储方式56数据库模式数据库模式n外模式/模式映象n定义某一个外模式和模式之间的对应关系,映象定义通常包含在各外模式中n当模式改变时,修改外模式/模式映象,使外模式保持不变,从而应用程序可以保持不变,称为数据的逻辑独立性n模式/内模式映象n定义数据逻辑结构与存储结构之间的对应关系n存储结构改变时,修改模式/内模式映象,使模式保持不变,从而应用程序可以保持不变,称为数据的物理独立性57数据库模式数据库模式S(S#,SNAME,SEX,AGE,ADDRESS,CREDIT,DEGREE)S(S#,SNAME,SEX,AGE,ADDRESS,CREDIT,DEGREE)S(S#,SNAME,ADD

25、RESS)S(S#,SNAME,ADDRESS)学籍科学籍科S(S#,SNAME,CREDIT)S(S#,SNAME,CREDIT)房产科房产科B(S#,SNAME,SEX,AGE,ADDRESS,CREDIT)B(S#,SNAME,SEX,AGE,ADDRESS,CREDIT)M(S#,SNAME,SEX,AGE,ADDRESS,CREDIT,DISSERTATION)M(S#,SNAME,SEX,AGE,ADDRESS,CREDIT,DISSERTATION)视图视图视图视图视图视图模式模式模式模式58数据模型数据模型n数据抽象n数据模型的三个层面n数据模型定义n概念数据模型n逻辑数据模型

26、的三要素n逻辑数据模型示例59数据抽象数据抽象n信息世界:n数据库系统是面向计算机的,而应用是面向现实世界的,两个世界存在着很大差异,要直接将现实世界中的语义映射到计算机世界是十分困难的,因此引入一个信息世界作为现实世界通向计算机实现的桥梁n一方面,信息世界是对现实世界的抽象,从纷繁的现实世界中抽取出能反映现实本质的概念和基本关系;另一方面,信息世界中的概念和关系,要以一定的方式映射到计算机世界中去,在计算机系统上最终实现。信息世界起到了承上启下的作用60数据模型的三个层面数据模型的三个层面n概念数据模型n逻辑数据模型n物理数据模型61数据模型定义数据模型定义n概念数据模型n按用户的观点来对数

27、据和信息建模n用于组织信息世界的概念,表现从现实世界中抽象出来的事物以及它们之间的联系n这类模型强调其语义表达能力,概念简单、清晰,易于用户理解n它是现实世界到信息世界的抽象,是用户与数据库设计人员之间进行交流的语言n如E-R模型62E-R模型n历史n-模型:Entity-Relationship Modeln1976年,P.P.S.Chen 提出-模型,用-图来描述概念模型n观点n世界是由一组称作实实体体的基本对象和这些对象之间的联系联系构成的63概念数据模型概念数据模型E/RE/R学生学生课程课程选修选修姓名姓名学号学号系别系别课程名课程名先修课先修课主讲老师主讲老师成绩成绩实体实体联系联

28、系属性属性64概念数据模型概念数据模型ODLODLProductPersonCompanycategorynamepricenamestockpricenameaddressssnbuysworksFormadeByemploysmakes类类关联关联属性属性65数据模型定义数据模型定义n逻辑数据模型n从计算机实现的观点来对数据建模n是信息世界中的概念和联系在计算机世界中的表示方法n一般有严格的形式化定义,以便于在计算机上实现n如层次模型、网状模型、关系模型、面向对象模型66逻辑数据模型的三要素逻辑数据模型的三要素n数据结构n描述系统的静态特性,即组成数据库的对象类型n数据本身n类型、内容、性

29、质。如网状模型中的数据项、记录,关系模型中的域、属性,关系等n数据之间的联系n例如网状模型中的系型,关系模型中的外码n在数据库系统中一般按数据结构的类型来命名数据模型67逻辑数据模型的三要素逻辑数据模型的三要素n数据操作n描述系统的动态特性,即对数据库中对象的实例允许执行的操作的集合,包括操作及操作规则n一般有检索、更新(插入、删除、修改)操作n数据模型要定义操作含义、操作符号、操作规则,以及实现操作的语言n数据的约束条件n数据的约束条件是完整性规则的集合,规定数据库状态及状态变化所应满足的条件,以保证数据的正确、有效、相容68逻辑数据模型示例逻辑数据模型示例层次模型n层次模型(Hierarc

30、hical Model)n用树结构表示实体之间联系的模型叫层次模型n树由节点和连线组成n节点代表实体型n连线表示两实体型间的一对多联系n树的特性n每棵树有且仅有一个节点无父节点,称为树的根n树中的其它节点都有且仅有一个父节点69逻辑数据模型示例逻辑数据模型示例层次模型地址系名系号教研室名教研室号年级姓名学号职称姓名职工号系教研室学生教员1 : N联系实体型70逻辑数据模型示例逻辑数据模型示例层次模型R1101计算机D02数据库R01G1王明S0012教授何璧E1101G2郑直S0020G3周密S0199网络R02人工智能R03讲师刘新E3721教授王恩E1234助教付弈E372171逻辑数据模

31、型示例逻辑数据模型示例层次模型n优点n结构简单,易于实现n缺点n支持的联系种类太少n只支持二元一对多联系n只允许实体集间的一种联系,不支持实体集间的多种联系n数据操纵不方便n子结点的存取只能通过父结点来进行n插入、删除复杂,父结点的删除导致子结点的删除,丢失必要的信息n代表产品:nIBM的IMS数据库,1969年研制成功72逻辑数据模型示例逻辑数据模型示例网状模型n网状模型(network model)n是一个满足下列条件的有向图n可以有一个以上的节点无父节点n至少有一个节点有多于一个的父节点(排除树结构)n节点代表实体型,有向边(从箭尾到箭头)表示两实体型间的一对多联系科室科室医生医生病房病

32、房病人病人实体型1 : N联系73逻辑数据模型示例逻辑数据模型示例网状模型学生学生课程课程选课选课年级姓名学号学分课程名课程号成绩课程号学号AC1S1AC2S1BC1S2A-C2S2CC1S3S1S2S3C1C274逻辑数据模型示例逻辑数据模型示例网状模型n优点n表达的联系种类丰富n性能良好,存取效率高n缺点n结构复杂n语言复杂nDBTG报告n1969年 , 由 美 国 CODASYC( Conference On Data System Language,数据系统语言协商会)下属的DBTG(Data Base Task Group)组提出,确立了网状数据库系统的概念、方法、技术75逻辑数据模

33、型示例逻辑数据模型示例关系模型关系模型n关系模型(relational model)n用二维表来表示实体及其相互联系属性属性元组元组男女男性别192221年龄D01李红S02D02王伟S03D01张军S01系号姓名学号76逻辑数据模型示例逻辑数据模型示例关系模型关系模型n优点n简单,表的概念直观、单一,用户易理解n非过程化的数据请求,数据请求可以不指明路径n数据独立性,用户只需提出“做什么”,无须说明“怎么做”n坚实的理论基础77数据库的若干研究方向数据库的若干研究方向n新的数据库管理系统n新的数据库应用78新的数据库管理系统n新的数据模型n面向对象数据库n对象-关系数据库nXML数据库n“turn the Web into database”n新的体系结构n并行数据库nVery Large Databasen分布式数据库n网络+数据库79新的数据库应用n数据仓库n从事务型操作向分析型操作n商业智能n决策支持n数据挖掘nOLAP80

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号