《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述

上传人:E**** 文档编号:89412215 上传时间:2019-05-24 格式:PPT 页数:41 大小:448.50KB
返回 下载 相关 举报
《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述_第1页
第1页 / 共41页
《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述_第2页
第2页 / 共41页
《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述_第3页
第3页 / 共41页
《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述_第4页
第4页 / 共41页
《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述》由会员分享,可在线阅读,更多相关《《数据库原理及应用》-刘玉宝-电子教案 第10章 数据库新技术概述(41页珍藏版)》请在金锄头文库上搜索。

1、2019年5月24日星期五,第10章数据库新技术概述,本章要点,分布式数据库的概念、特点和体系结构 面向对象数据库的理论和实现方法 数据仓库技术 数据挖掘技术,2019年5月24日星期五,新一代的数据库技术主要体现在以下几个方面: (1) 整体系统方面,相对传统数据库而言,在数据模型及其语言、事务处理与执行模型、数据库逻辑组织与物理存储等各个方面,都集成了新的技术、工具和机制。属于这类数据库新技术的有:面向对象数据库(Object-Orient Database),主动数据库(Active Database),实时数据库(Real-Time Database)。 (2) 体系结构方面,不改变数

2、据库基本原理,而是在系统的体系结构方面采用和集成了新的技术。属于这方面的数据库新技术有:分布式数据库(Distributed Database),并行数据库(Parallel Database),数据仓库(Data Warehouse)。 (3) 应用方面,以特定应用领域的需要为出发点,在某些方面采用和引入一些非传统数据库技术,加强系统对有关应用的支撑能力。 属于这类的数据库新技术有:,2019年5月24日星期五,工程数据库(Engineering Database),支持CAD、CAM、CIMS等应用领域,空间数据库(Spatial Database),包括地理数据库(Geographic

3、Database),支持地理信息系统(GIS)的应用,科学与统计数据库(Scientific and Statistic Database),支持统计数据中的应用,超文档数据库(Hyperdocument Database),包括多媒体数据库(Multimedia Database)。,2019年5月24日星期五,10.1分布式数据库,10.1.1 分布式数据库系统的概念 分布式数据库系统中数据库的数据存储在物理上分布在计算机网络的不同计算机中,系统中每一台计算机被称为一个结点(或场地)。在逻辑上是属于同一个系统。其一般结构如图10-1所示。,图10-1 分布式数据库系统,2019年5月24日

4、星期五,图10-1 分布式数据库系统,2019年5月24日星期五,10.1.2 分布式数据库系统的特点 分布式数据库系统主要有如下几个特点: (1) 数据的物理分布性。 (2) 数据的逻辑整体性。 (3) 结点的自主性。 数据独立性。适当增加数据冗余。全局的一致性、可串行性和可恢复性。 10.1.3 分布式数据库系统的体系结构 集中式数据库系统具有三级模式结构,分布式数据库系统应该由若干个局部数据模式加上一个全局数据模式构成。全局数据模式用来协调各局部数据模式,使之成为一个整体的模式结构。图为分布式数据库系统模式结构的一个参考模型。,2019年5月24日星期五,图10-2 分布式数据库系统的模

5、式结构,2019年5月24日星期五,(1)全局外模式:是全局应用的用户视图,是全局概念模式的子集。 (2)全局概念模式:是对分布式数据库中全体数据的逻辑结构和特征的描述,它不考虑数据分布的物理地点和分布细节,使得数据如同没有分布一样。通常采用关系模型。 (3)分片模式:每一个全局关系可以分为若干不相交的部分,每一部分称为一个片段(Fragment)。分片模式定义片段以及全局关系到片段的映像。这种映像是一对多的,一个全局关系可对应多个片段,而一个片段指来自一个全局关系。 数据分片的方法有: 水平分片:是指按一定的条件将关系按行(水平方向)分为若干个不相交的子集,每个子集为关系的一个片段。 垂直分

6、片:是指将关系按列(垂直方向)分为若干子集。,2019年5月24日星期五,垂直分片的诸片段必须能够重构原来的全局关系,即可以用连接的方法恢复原关系,因此垂直分片的诸片段通常都包含关系的码。 导出分片:是指导出水平分片,即水平分片的条件不是本身属性的条件而是其他关系的属性的条件。 混合分片:是指按上述三种分片方式得到的片段继续按另一种方式分片。如先水平分片再垂直分片,或先垂直分片再水平分片。 不管使用哪种分片方式,都应保证满足以下条件: 完备性: 不相交性: 可重构性: (4) 分布模式:用来描述片段到不同结点间的映象,即各个片段的物理存放位置。,2019年5月24日星期五,10.1.4 分布式

7、数据库系统的发展前景 分布式数据库兴起与20世纪70年代,经过20多年的发展,分布式数据库系统已发展得相当成熟,其应用领域涵盖了OLTP应用、分布式计算、互联网上的应用以及数据仓库的应用中。随着计算机网络的广泛普及,新的应用都体现了开放性和分布性的特点。从简单的数据系统全球连网查询,逐渐地转向更具有分布式数据库系统特色的应用环境。因此,在当前基于网络,具有分布性、开放性特点的应用环境下,分布式数据库系统将具有更好的发展前景和更广泛的应用领域。,2019年5月24日星期五,10.2 面向对象数据库,面向对象的数据库系统(Object Oriented Database System,简称OODB

8、S)是数据库技术与面向对象程序设计方法相结合而产生的数据库系统。 10.2.1 面向对象数据模型 面向对象数据模型(Object-Oriented Data Model,简称O-O Data Model)是一种可扩充的数据模型。在该数据模型中,数据模型是可扩充的,即用户可根据需要,自己定义新的数据类型及相应的约束和操作。 (1)对象 客观世界中任何一个事物都可以看成一个对象(或者说,客观世界是由千千万万个对象组成的,它们之间通过一定的渠道相互联系)。如学校、一个班级、军队中的一个团、一个连都是对象。,2019年5月24日星期五,一个对象包括以下几个部分: 属性集合 所有属性合起来构成了对象数据

9、的数据结构。 每一个对象都有自己的状态、组成和特性,称为对象的属性。属性可能是一个单值或值的集合,也可能是其他对象,即对象的嵌套,并且这种嵌套可以继续下去,从而组成各种复杂的对象。 每个对象有惟一的对象标识(OID:Object Identity),一个对象的OID是独立于属性值的,在系统中是唯一不变的。 方法集合 方法是对象的行为特性。方法的定义包含两个部分:一是方法的接口,包括方法的名称、参数和结果类型;二是方法的实现部分,它是一段程序编码,以实现方法的功能,即对象操作的算法。,2019年5月24日星期五,消息集合 消息是对象向外提供的界面,消息由对象接收和响应。 (2)类和实例 有一些对

10、象是具有相同的结构和特性的。类代表了某一批对象的共性和特征。每个对象都属于一个类型,对象的类型就是类。类是对象的抽象,而对象是类的具体实例(Instance)。一个类中的所有对象其特性必须相同,即具有相同的属性、响应相同的消息、使用相同的方法。 (3)类的继承 一个新类可以通过对已有类进行修改或扩充某些特性来满足新类的要求,而这些特性并不和类的所有成员相关。从一个类继承定义的新类,将继承已有类的所有方法和属性,并且可以添加新的方法和属性。新类被称为已有类的子类或派生类,已有类称为父类或基类。,2019年5月24日星期五,若一个子类只能继承一个父类的特性,叫做单继承;若一个子类能继承多个父类的特

11、性,叫做多重继承。 例如,学校模型中有教职工和学生两个类,其中教职工中又可分为教师类和行政人员类,所有教师有专业这一属性,行政人员有行政级别属性,它们是教职工的两个子类。 同时教职工和学生也具有某些相似的属性,如都有身份证号码、姓名、性别、年龄等,可以把它们看成是人的子类。其中在职研究生同时继承了教职工和学生的特性,这种情况成为多重继承。其类层次结构如图10-4所示。,图10-4 学校数据库的类层次结构图,2019年5月24日星期五,10.2.2 面向对象数据库建模 本节介绍面向对象数据库的模型描述工具ODL(对象定义语言),它是CORBA(公共对象请求代理程序体系结构)的一个组件。 ODL与

12、具体的OODBMS无关,和E-R图一样,是建立数据库概念模型的工具,也可以向DBMS支持的数据模型转化,如图10-5所示。,图10-5 数据库建模和实现的过程,(1)ODL的类说明 在对象的定义中主要包括以下几个部分: 关键字 Interface(接口)。 类的名字。 类的特性表,可以是属性、 联系、 方法。,2019年5月24日星期五,所以,ODL类说明的最简单形式是: Interface ; (2)ODL中属性的说明 属性是类的一种最简单的特性。 例10.1 利用ODL描述学生(student)类,语句如下: interface student /student是一个类 attribute

13、 string sno; /属性sno,其类型是string attribute string name; /属性name,其类型是string attribute integer age;/属性age,类型是整型 attribute enum sextype male,female sex; /属性sex,其类型是枚举型 ;,2019年5月24日星期五,这是student类的说明,任何一个student对象在这几个属性上均对应一个分量。该例中的属性均是原子的,事实上属性类型可以是结构、集合、聚集等复杂类型。 例10.2 给出类college的ODL描述,有属性name(学院名)、presid

14、ent(负责人)、 address(地址),其中address是一个结构,包括楼层和房间号: interface college attribute string name; attribute string president; attribute struct Addr string room,string flooraddress; ; ODL中的原子类型有: 整型(integer)、 浮点型(float)、 字符(char)、 字符串(string)、 布尔型(boolean)和枚举型(enum)。 复杂类型可以是集合、列表、数组和结构等。,2019年5月24日星期五,(3)ODL中的

15、联系 为了得到对象与同类或不同类的其他对象的连接方式,需要在类的定义中说明类与类之间的联系。如学生类与学院类之间有联系,一个学生对象总与某个学院对象有关系(从属关系)。在student类说明中,可用下面的ODL语句表示这种联系: Relationship college studyin; 该语句说明在student类中的每个对象,都有一个对college对象的引用,引用名为studyin。 (4)ODL中的类的继承 假设类B是类A的子类,那么在定义类B时,可以在后加上:A,说明类B是类A的子类, 并可继承类A的所有特性。 例10.4 定义类postgraduate(研究生)为student的子

16、类。,2019年5月24日星期五,interface postgraduate: student /类postgraduate是类student的子类Relationship college member /所有的postgraduate对象都有一个联系member,表/示该研究生属于一个学院,并且一名研究生只属于一个学院 ; 在多重继承时,特性名之间可能会发生冲突。 如两个或多个超类可能有同名的属性或联系,而这些特性的类型可能不同。 在ODL中提供以下几种机制来建立解决多重继承产生的冲突:指出超类特性的多个定义中哪一个用于子类;在子类中,对于有相同名字的另一个特性给一个新的名字;在子类中重新定义一个或多个超类中已定义的某些特性。 (5)ODL中方法的说明 类的另一个特性是方法,方法是与类相关的函数。 类中的每一个对象都能引用方法,同一方法可用于多个类,这是面向对象语言的特点。方法说明中主要有方法名、方法的,2019年5月24日星期五,输入/输出类型说明等。而方法的实际代码是用宿主语言写的,代码本身

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

最新文档


当前位置:首页 > 高等教育 > 大学课件

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