您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 高级数据库原理与技术
2020年2月25日星期二ADBSidesByMAO1教材信息:《高级数据库原理与技术》By毛国君Pub.人民邮电出版社,2004-8使用说明:本书将全面介绍新型高级数据库,包括分布式数据库、并行数据库、Oracle系统、数据仓库以及诸如面向对象数据库和多媒体数据库等相关技术。本书按篇组织,各篇相对独立。可作为计算机专业研究生或高年级本科生教材。本课件供全书讲解之用,为了取得好的教学效果,教师应该根据学生层次、教学大纲或课时安排进行必要裁减。2020年2月25日星期二ADBSidesByMAO2第一篇预备知识内容提要第1章分布式系统分布式系统的定义高层操作系统第2章数据库基础知识数据库技术的发展数据模型数据库系统的基本组成数据库设计与实例数据库操作语言2020年2月25日星期二ADBSidesByMAO3分布式系统的定义美国电工电子学会下属的计算机学会给出的分布式系统描述为“包含多个相连的处理资源,这些资源能在系统的控制下,对单一问题进行合作,而且最少依赖集中过程、数据或硬件。”英国国家科学研究委员会下属的计算机学会给出的分布式系统描述为“包含多个独立的但又交互作用的计算机,它们可以对公共问题进行合作。这个系统的特点是包含多个控制路径,它们执行一个程序的不同部分而且又相互作用。”P.H.Enslow总结了分布式系统的五个基本准则,从中可以对分布式系统有个更透彻的认识。1.资源的重复性:所谓资源的重复性是指分布式系统中硬件、软件以及数据的冗余配置。2.物理上的分布性:从硬件上看,不同的计算机或处理器以节点形式相对独立地分布。随着概念的技术的发展,其实这里的分布性也可以从不同层次来理解。从软件上看,每个节点都可以有全局相关的系统程序、局部系统程序以及应用程序;从数据上看,它可能是一个数据分布的系统。3.高层操作系统(或分布式操作系统):它负责对系统的分布性资源进行统一的控制,使一个简单的硬件堆积转变为一个统一协调的工作系统。4.系统的透明性:理想的分布式系统应该为最终用户屏蔽具体的系统实现细节,用户像使用单一的集中式系统一样来使用分布式系统。5.协作的自治性:理想的分布式系统应该是每个节点都是一个完整的处理系统,表现出强大的自治性。2020年2月25日星期二ADBSidesByMAO4分布性的刻画1.硬件构成层次A.单CPU:单一控制器、单一运算器、单一内存。B.多执行部件:单一控制器、多运算器或存储器。C.具有专用功能部件:单一通用控制器、多运算器或存储器、配有通道/输入输出处理机/向量运算部件/辅助数学运算部件等专用功能部件。D.多处理机:多个控制器、多运算器或存储器、单一输入输出系统。E.多计算机:多台通用计算机。显然,上面的硬件分布性是递增的。从分布式系统的观点看,随着硬件分布性的增强,系统才更有希望接近分布式系统的目标。上面的D和E是构成理想分布式系统的硬件环境。2020年2月25日星期二ADBSidesByMAO5分布性的刻画(续)2.控制方式层次A.单个控制点:物理上的或概念上的一个控制节点。B.固定主从关系:有一个节点是主节点,其它的是从节点。当然也可以构成多级主从关系。这种主从关系是预先规定好的,不能修改。C.动态主从关系:可以通过程序修改主从关系。D.多个控制节点独立工作:例如,多个计算机最多是在I/O级别上交换信息。E.多个控制点在某个层次上(如任务分割)协同工作。F.多个同构控制点完全协同工作。G.多个同构或异构控制点完全协同工作。上面的控制方式中,F和G是分布式系统所追求的。如果放宽标准的话,E也可以认为是分布式系统的控制形式。2020年2月25日星期二ADBSidesByMAO6分布性的刻画(续)3.数据分布层次A.集中式数据库:在文件及目录上只有单一的拷贝,减少数据存储冗余是它追求的目标之一。B.文件分布但中央集中式目录:没有本地目录,所有的访问都必须通过这个中央目录来完成。C.重复的数据库拷贝:在每个节点都有一份完整的数据拷贝。D.主节点存放完整数据,其它节点存放所需的数据或数据分片。E.主节点存放数据分布图或目录,其它节点存放所需的数据或数据分片。F.所有节点都存放最需要的数据或数据分片,而且任何节点都能形成对其它节点的访问。当然理想的分布式系统的数据分布是F。如果放宽标准的话,C,D和E也可以认为是分布式系统的数据组织形式。2020年2月25日星期二ADBSidesByMAO7分布性的刻画(续)图1-1可以帮助我们直观上区分哪些系统是理想的分布式系统、哪些是准分布式系统、哪些只是使用了部分分布式思想或技术的系统、哪些根本就不是分布式系统。F数据EDCBAABCDEFG控制硬件EDCBA图1-1分布特征示意2020年2月25日星期二ADBSidesByMAO8典型的非分布式系统及其特征加以分析1.系统中引入专用处理部件在系统中引入专用处理部件的系统大多是一台主机和若干用于固定任务的专用部件。像引入通道的计算机、控制通信的前端处理机、向量乘法器、快速傅里叶变换器等属于这种。尽管这些使用很普遍的系统在结构上具有多处理机特性,但是那些专用部件只能完成某些特定的任务,在地位上和主机是不平等的。2.系统中主从关系明显在硬件上,系统的各处理部件有不同的地位,有些只是被动地接受分配的任务。在软件控制上,它们执行的不是协作性协议,而是按主从模式工作,严重违反了分布式系统的协作自治性原则。3.简单网络互联结构以一个具有多个计算机组成的网络互连结构为例,它们有很好的自治性,而且能交换信息。但是,这种协作是有限的。它们无法因为硬件故障来重新分配任务,即使是双机或多机备份系统,离真正的分布式系统仍有距离,因为它们很难同时合作解决一个大问题。2020年2月25日星期二ADBSidesByMAO9第一篇预备知识内容提要第1章分布式系统分布式系统的定义高层操作系统第2章数据库基础知识数据库技术的发展数据模型数据库系统的基本组成数据库设计与实例数据库操作语言2020年2月25日星期二ADBSidesByMAO10分布式系统必须面对的问题1.不完整系统状态信息在集中式系统中,总是假设操作系统是在完整而准确的系统状态信息下工作的。但是,在分布式系统中,这种假设是可望而不可及的。这是因为为获得这些完整而准确的系统状态信息的代价太大了,根本无法在用户可忍受的范围内收集和整理出这些状态信息并及时得到利用。2.时间延迟在集中式系统中,操作系统可以及时请求状态信息而保证被询问的部件在稳定的状态下作出决定。但是,在分布式系统中,由于自治性的局部处理和多任务的交叉作用使发生时间的滞后是必然的。这种时间延迟也会带来系统状态信息的不准确。3.通信的代价分布式系统的通信是复杂的,特别是如何使通信的代价降到用户可以忍耐的层次。在单处理机系统中,我们可以使用信号灯、标志、加锁等来解决同步处理问题。但是,在分布式系统中,这些方法会大量消耗时间和降低系统的吞吐能力。解决合理的通信代价问题是分布式操作系统设计的重要目标。4.负载均衡在集中式系统中,各部件的任务明确。但是分布式系统是多机或多处理机协同工作的系统,为了提供系统的整个效率和吞吐量,必须考虑最大程度发挥每个节点的作用。负载均衡是保证系统总效率的关键技术。2020年2月25日星期二ADBSidesByMAO11分布式操作系统设计原则1.内核最小每个节点都有自己的本地操作系统,高层操作系统不能代替本地操作系统来完成本地处理任务。它的重点要集中在通信控制、任务分割、透明访问等全局工作上。2.充分利用节点信息由于系统的自治性、时间延迟以及系统可用性等的考虑,分布式系统面对的是不完整甚至是不精确的状态信息。高层操作系统必须考虑最大程度上利用这些状态信息。在修正不一致性状态信息、推测缺省状态信息、仲裁死锁、并发控制等方面,需要有合理而有效的机制。3.通信方法和协议在网络互联结构中,有许多成功的通信协议可以借鉴。但是,必须考虑分布式系统的特点,所有通信参数都必须通过完善的定义而且有严格执行的接口。协议的选择和研制要考虑节点的自治性和兼容性。2020年2月25日星期二ADBSidesByMAO12第一篇预备知识内容提要第1章分布式系统分布式系统的定义高层操作系统第2章数据库基础知识数据库技术的发展数据模型数据库系统的基本组成数据库设计与实例数据库操作语言2020年2月25日星期二ADBSidesByMAO13数据存储和处理技术的发展过程图2-1给出了数据存储和处理技术的发展过程。20世纪60年代:文件处理;数据库探索20世纪70年代:层次和网络数据库系统的系统化研究和应用;关系模型诞生、关系型数据库系统的研究与研制;数据模型工具,如实体关系模型的使用和工具研制等;索引和数据组织技术;查询语言的标准化,如SQL;20世纪80年代:关系型数据库日渐成熟并开始大量应用;数据查询处理和优化技术发展增强了关系型数据库处理规模;分布式数据库概念得到广泛接受并被系统化研究;一些其它数据库技术和系统被研究和研制20世纪90年代:跨平台的大型数据库系统得到应用;以数据仓库为核心的多样化数据存储和处理技术;数据分析和挖掘技术得到系统化研究并被逐步使用21世纪:数据处理和分析技术的研究成果会逐步应用到商品中,并且会不断探索新的技术2020年2月25日星期二ADBSidesByMAO14第一篇预备知识内容提要第1章分布式系统分布式系统的定义高层操作系统第2章数据库基础知识数据库技术的发展数据模型数据库系统的基本组成数据库设计与实例数据库操作语言2020年2月25日星期二ADBSidesByMAO15数据模型(datamodel):是数据库数据特征的抽象,描述数据的结构(静态特征)、定义在其上的操作(动态行为)以及约束条件。数据模型按应用层次分为三种类型:概念数据模型(conceptualdatamodel)、逻辑数据模型(logicdatamodel)、物理数据模型(physicaldatamodel)。2020年2月25日星期二ADBSidesByMAO16概念数据模型(conceptualdatamodel):面向客观世界,与具体的数据库系统和计算机无关,它着重对客观世界事物描述以及内在关系的刻画。例如:E-R模型,扩充E-R模型(EE-R),面向对象模型,谓词模型。2020年2月25日星期二ADBSidesByMAO17逻辑数据模型(logicdatamodel):面向数据库系统的模型,是客观世界到计算机间的中介模型。例如:层次模型,网状模型,关系模型,面向对象模型,谓词模型,对象关系模型。2020年2月25日星期二ADBSidesByMAO18物理数据模型(physicaldatamodel):面向计算机物理表示的模型。概念数据模型---逻辑数据模型---物理数据模型2020年2月25日星期二ADBSidesByMAO19数据模型的四个世界现实世界:需要用数据库实现的部分客观世界。概念世界:将现实世界用概念模型的术语、方法统一表示。与具体数据库,计算机无关。信息世界:在概念世界的基础上进一步在数据库级上的刻画,构成的逻辑模型。计算机世界:在信息世界的基础上进一步在计算机物理结构上的描述,构成的物理模型。现实世界是客观存在的,后3个世界是人工加工得到的。2020年2月25日星期二ADBSidesByMAO20概念世界与概念模型E--R模型1。三个基本概念:实体、属性、联系两个实体集间的联系:1:1,1:n,n:m多个实体集间的联系一个实体集内部的联系2020年2月25日星期二ADBSidesByMAO21三个基本概念间的联系关系实体与属性实体是概念世界中的基本单位,属性附属于实体.实体----属性所有属性构成一个实体(元组),不同的实体(元组)对应不同的属性集2020年2月25日星期二ADBSi
本文标题:高级数据库原理与技术
链接地址:https://www.777doc.com/doc-4007296 .html