数据库原理与应用概论数据库新技术幻灯片.ppt
《数据库原理与应用概论数据库新技术幻灯片.ppt》由会员分享,可在线阅读,更多相关《数据库原理与应用概论数据库新技术幻灯片.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库原理与应用概论数据库新技术数据库原理与应用概论数据库新技术第1页,共50页,编辑于2022年,星期六第七章第七章 数据库新技术数据库新技术n数据库新技术概述数据库新技术概述n面向对象数据库系统面向对象数据库系统n分布式数据库系统分布式数据库系统n并行数据库系统并行数据库系统n数据仓库与数据挖掘数据仓库与数据挖掘第2页,共50页,编辑于2022年,星期六7.1 数据库新技术概述数据库新技术概述1.新一代数据库系统的特点(1)面向对象的方法和技术对数据库发展的影响最为深远(2)数据库技术与多学科技术的有机结合(3)面向应用领域的数据库技术的研究 第3页,共50页,编辑于2022年,星期六2.
2、第三代数据库系统的基本特征第三代数据库系统的基本特征(1)第三代数据库系统应支持数据管理、对象管理和知识管理(2)第三代数据库系统必须保持或继承第二代数据库系统的技术(3)第三代数据库系统必须对其它系统开放第4页,共50页,编辑于2022年,星期六7.2 面向对象数据库系统面向对象数据库系统 7.2.1 面向对象数据库系统概述面向对象数据库系统概述 面向对象数据库系统(Object Oriented Database System,简称为OODBS)是数据库技术与面向对象程序设计相结合的产物。1.面向对象数据库系统主要研究的问题有:l对象数据模型l高效的查询语言l并发的事务处理技术l对象的存储
3、管理l版本管理等 第5页,共50页,编辑于2022年,星期六2.面向对象数据库系统的功能要求(1)在数据模型方面,引入面向对象的概念:对象、类、对象标识、封装、继承、多态性、类层次结构等。(2)在数据库管理方面,提供对持久对象、长事务的处理、并发控制、完整性约束、版本管理和模式演化等能力。(3)在数据库界面方面,支持消息传递,提供计算能力完备的数据库语言,解决数据库语言与宿主语言的失配问题,并且数据库语言应具有类似SQL的非过程化的查询功能。除此之外,面向对象数据库系统还要求兼顾对传统的关系数据的管理能力 第6页,共50页,编辑于2022年,星期六7.2.2 面向对象的基本概念面向对象的基本概
4、念 1面向对象的核心概念面向对象的核心概念(1)对象对象:数据库中的每个事物都看作是一个对象,而且每个对象是惟一可标识的。对象可以是有形的或抽象的,简单的或复杂的。(2)对象标识对象标识:每个对象有一个唯一的标识,称为对象标识(OID)。OID是独立于属性值的、系统全局惟一的。OID用来标识两个不同的对象,常见的OID有以下几种:值标识:用值来表示标识。这是关系数据库中使用的标识形式。名标识:用户提供一个名字来表示标识。这是程序变量标识的一种典型表示形式。程序中的每个变量被赋予一个名字,变量名可以唯一地标识每个变量,不需要考虑变量的值。内标识:标识的概念建立在数据模型或程序设计语言中,不要求用
5、户给出标识。这种形式的标识是面向对象数据库系统使用的标识形式。第7页,共50页,编辑于2022年,星期六(3)类:共享同样属性和方法的所有对象构成了一个对象类(CLASS),一个对象是某一个类的实例。(4)封装:每一个对象是其属性与行为的封装,其中属性是该对象一系列属性值的集合,行为是在对象属性上操作的集合,操作也被称为方法。(5)继承:在OO模型中有两种继承:单继承与多重继承。若一个子类只能继承一个超类的特性,这种继承称为单继承;若一个子类继承多个超类的特性,这种继承称为多重继承。(6)消息:对象是封装的,对象与外部的通信一般通过显式的消息传递,即消息从外部传送给对象,存取和调用对象中的属性
6、和方法,在内部执行所要求的操作,而操作的结果仍以消息的形式返回。第8页,共50页,编辑于2022年,星期六2对象间的联系对象间的联系n(1)类层次某学校数据库的类层次结构图 对一个类来说,它可以有多个超类,也可以继承类层次中其直接或间接超类的属性和方法。超类与子类结构在语义上具有泛化与特化的关系,也即常说的Is-a关系。第9页,共50页,编辑于2022年,星期六(2)对象包含)对象包含 类之间的包含关系表现了事物的局部与整体关系(组合关系),即a-part-of关系。一个包含了其他对象的对象称为复合对象。复合对象主要的三种形式。具有共享子对象的网络结构 组合对象层次结构 聚合属性第10页,共5
7、0页,编辑于2022年,星期六7.2.3 面向对象设计方法面向对象设计方法n面向对象是一种先进的设计方法学,也是一种认知方法学,相应的程序设计语言主要有C+、JAVA等。n面向对象设计就是把数据结构和数据结构上的操作算法封装在一个对象之中。n在面向对象程序设计中,操作名列在封装对象的界面上,当其他对象要启动它的某个操作时,以操作名发送一条消息,该对象接收消息,执行具体的行为动作序列,完成对成员数据的加工。当一个面向对象的程序运行完毕时,各对象也就达到了各自的终态。输入、输出也由对象自己完成。n面向对象程序设计方法所支持的封装、继承等特性提供了同时表示、同时管理程序和数据的统一框架。第11页,共
8、50页,编辑于2022年,星期六7.2.4 面向对象数据库面向对象数据库 面向对象数据库系统支持面向对象数据模型,是一个持久的、可共享的对象库的存储和管理者;而一个对象库是由一个OO模型所定义的对象集合体。1持久性持久性 持久性持久性是指一个对象在超过其生存周期后的保存,就是将临时对象存储到磁盘上,转换为永久对象,使对象的存活期与创建它的进程无关,以解决对象的重用问题。一个标识的持久性主要有以下几种情况:(1)过程内持久标识()过程内持久标识(Intraprocedure Identity)(2)程序内持久标识()程序内持久标识(Intraprogram Identity)标识只在一个程序或查
9、询的执行中持久有效。例如,对于一个程序中全局变量的标识,在该程序的运行中有效。(3)程序间持久标识()程序间持久标识(Interprogram Identity)(4)持久标识()持久标识(Persistent Identity)面向对象数据库系统要求存储永久对象。面向对象数据库系统要求存储永久对象。第12页,共50页,编辑于2022年,星期六2面向对象数据库面向对象数据库 面向对象数据库模式是类的集合。面向对象的数据模型提供了类层次结构。在面向对象数据库模式中,一组类可形成一个类层次。一个面向对象数据库可能有多个类层次。3面向对象数据库的特性面向对象数据库的特性(1)滞后联编)滞后联编(2)
10、对象的嵌套)对象的嵌套第13页,共50页,编辑于2022年,星期六7.2.5 面向对象数据库语言面向对象数据库语言 OODB语言用于描述面向对象数据库模式,说明并操纵类定义与对象实例。OODB语言主要包括对象定义语言(ODL)和对象操纵语言(OML),对象操纵语言中一个重要子集是对象查询语言。OODB语言一般应具备下列功能:(1)类的定义与操纵 (2)操作/方法的定义 (3)对象的操纵第14页,共50页,编辑于2022年,星期六7.2.6 面向对象数据库的模式演进面向对象数据库的模式演进 面向对象数据库的模式是类的集合。模式为适应需求变化而随着时间变化称为模式演进。模式演进包括建立新的类、删除
11、旧的类、修改类的属性和操作等。面向对象数据库模式的修改要比关系模式的修改复杂,其主要原因有两点:(1)模式改变频繁。OODB应用通常需要频繁地改变OODB数据库模式。(2)模式修改复杂。OO模型具有很强的建模能力和丰富的语义,包括类自身的语义、类属性之间和类之间丰富的语义联系,可能使模式修改操作复杂多样。在OODB中,模式演进往往是动态的。第15页,共50页,编辑于2022年,星期六1模式一致性模式一致性 模式一致性是指模式自身内部不能出现矛盾和错误,它由模式一致性约束来刻画。模式的演进必须要保持模式的一致性。模式一致性约束可分为:(1)惟一性约束:这一类约束条件要求名字惟一性。例如,在同一模
12、式中所有类的名字必须惟一;类中属性名和方法名必须惟一,包括从超类中继承的属性和方法。但模式的不同种类的成分可以同名,如属性的名字和方法可以同名。(2)存在性约束:显式引用的某些成分必须存在。例如,不能引用一个没有在模式中定义的类。(3)子类型约束:例如,不允许有从多继承带来的任何冲突等。第16页,共50页,编辑于2022年,星期六2模式演进的操作与实现模式演进的操作与实现n 模式演进操作主要有:(1)类集的改变,包括创建新的类,删除已有类,改变已有类等等。(2)已有类的成分的改变,包括增加新的属性或新的操作/方法,删除已有的属性或操作,改变已有属性的名字或类型,改变一个操作的名称或操作的实现。
13、(3)子类/超类之间联系的改变,包括增加一个新的超类、删除一个已有超类。n 所谓转换方法是指在OO数据库中,已有的对象将要根据新的模式结构进行转换,以适应新的模式。根据转换发生的时间有以下转换方式:立即转换方式。一旦模式变化立即执行所有变换,缺点是系统为了执行转换需要消耗一些时间。延迟转换方式。模式变化后不是立即执行,而是延迟到低层数据库载入时,或者延迟到该对象被存取时才执行变换。缺点是应用程序存取一个对象时,要把它的结构与其所属类的定义比较,完成必须的修改,处理效率较低。多模式版本方式。第17页,共50页,编辑于2022年,星期六7.2.7 面向对象数据库的事务管理面向对象数据库的事务管理1
14、长事务长事务2嵌套的事务嵌套的事务3合作事务合作事务 第18页,共50页,编辑于2022年,星期六7.3 分布式数据库系统分布式数据库系统 20世纪70年代,由于计算机网络通信的迅速发展,以及地理上分散的公司、团体和组织对数据库更为广泛应用的需求,在集中式数据库系统成熟技术的基础上诞生和发展了分布式数据库系统(Distributed Database System,DDBS)。分布式数据库系统是数据库技术和网络技术两者相互渗透和有机组合的结果。经过20多年的发展,分布式数据库系统已发展得相当成熟,并产生了一些产品,如Ingres公司的Ingres/Star,IBM San Jose实验室开发的
15、分布式数据库系统System R*,Oracle公司的SQL*Star等。第19页,共50页,编辑于2022年,星期六 7.3.1 分布式数据库概述分布式数据库概述1分布式数据库系统的概念 一个分布式数据库系统强调数据的分布性分布性,数据分布存储在网络的不同计算机(又称结点或场地)上,各个场地既具有高度的自治性,同时又强调各场地系统之间的协作性协作性。对使用数据库中数据的用户来说,一个分布式数据库系统在逻辑上看就如同一个集中式数据库系统一样,用户可以在任何一个场地执行全局应用和(或)局部应用。一个分布式数据库系统的示意图 第20页,共50页,编辑于2022年,星期六2分布式数据库系统的特点下面
16、来概括一下分布式数据库系统的三个主要特点:(1)数据的物理分布性。(2)数据的逻辑整体性。(3)结点的自主性。3分布式数据库系统的透明性(1)位置透明性(2)复制透明性4分布式数据库系统的分类(1)同构同质型DDBS。(2)同构异质型DDBS。(3)异构型DDBS。第21页,共50页,编辑于2022年,星期六 7.3.2 分布式数据库系统的体系结构分布式数据库系统的体系结构n1分布式数据库系统的体系结构分布式数据库系统的体系结构分布式数据库系统的体系结构分布式数据库系统的体系结构 第22页,共50页,编辑于2022年,星期六2数据分配数据分配n集中式 n分割式 n复制式 n混合式 进行数据分配
17、时注意把握以下一些原则:n尽量把本地需要的数据存储在本地,减少远程通信操作的开销;n保证数据的可用性和系统的可靠性;n尽量平衡各个场地的负载,提高整个系统的并行处理能力等 第23页,共50页,编辑于2022年,星期六7.3.3 分布式数据库管理系统分布式数据库管理系统1分布式数据库管理系统的组成分布式数据库管理系统的组成nLDBMS(Local DBMS):即局部场地上的数据库管理系统,其功能是建立和管理):即局部场地上的数据库管理系统,其功能是建立和管理局部数据库,提供场地自治能力,执行局部应用及全局查询的子查询。局部数据库,提供场地自治能力,执行局部应用及全局查询的子查询。nGDBMS(G
18、lobal DBMS):即全局数据库管理系统,主要功能是提供分布透明性,协调):即全局数据库管理系统,主要功能是提供分布透明性,协调全局事务的执行,协调各局部全局事务的执行,协调各局部DBMS以完成全局应用,保证数据库的全局一致性,执以完成全局应用,保证数据库的全局一致性,执行并发控制,实现更新同步,提供全局恢复功能等。行并发控制,实现更新同步,提供全局恢复功能等。n全局数据字典(全局数据字典(Global Data Directory,简称,简称GDD):用来存放全局概念模式、分片):用来存放全局概念模式、分片模式、分布模式的定义以及各模式之间映像的定义,存放用户存取权限的定义,以模式、分布
19、模式的定义以及各模式之间映像的定义,存放用户存取权限的定义,以保证全部用户的合法权限和数据库的安全性;另外保证全部用户的合法权限和数据库的安全性;另外,还存放数据完整性约束条件的还存放数据完整性约束条件的定义,其功能与集中式数据库的数据字典类似。定义,其功能与集中式数据库的数据字典类似。n通信管理(通信管理(Communication Management,简称,简称CM):负责在分布式数据库的各):负责在分布式数据库的各场地之间传送消息和数据,完成通信功能。场地之间传送消息和数据,完成通信功能。第24页,共50页,编辑于2022年,星期六2分布式数据库管理系统的分类分布式数据库管理系统的分类
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 应用 概论 新技术 幻灯片
限制150内