发展篇(对象数据库、分布式数据库、数据仓库)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2019年8月1日3时45分1数据库原理湖南工业大学计算机与通信学院2019年8月1日3时45分2发展篇:数据库新技术1授课内容数据库新技术。主要内容:(1)面向对象数据库系统。(2)分布式数据库系统。(3)ODBC技术。(4)数据仓库。2019年8月1日3时45分3发展篇:数据库新技术2授课要求了解下述内容:(1)面向对象数据库系统。(2)分布式数据库系统。(3)ODBC技术。(4)数据仓库。2019年8月1日3时45分4发展篇:数据库新技术3授课重点1.重点是面向对象数据库、分布式数据库、数据仓库等基本概念。4授课难点1.面向对象数据库。2019年8月1日3时45分51.面向对象数据库2019年8月1日3时45分61.1对象数据库系统(1)第一代DBS:层次、网状数据库系统第二代DBS:关系数据库系统这两代DBS的应用领域主要在商务领域,其特点是所处理的事务比较小,诸如存款取款、购票订票、财务管理、仓库管理、人事管理、统计管理等。随着计算机应用领域的拓广,同时,传统数据库的数据结构比较简单,不能支持新的数据类型和嵌套、递归的数据结构,这两代DBS已不能适用新的应用需要。比如:这两代DBMS很难满足CAD/CAM、CASE、图像处理、GIS等新的应用领域的需要。为适应新的应用需要,应提出新的数据模型、数据库系统。2019年8月1日3时45分71.1对象数据库系统(2)对于第二代以后的新一代DBS,有两种观点。这两种观点虽然都是从OO技术和DB技术相结合的角度考虑,但方法不一样。(1)新一代DBS将是OODBS,即在面向对象程序设计语言中引入数据库技术。(2)新一代DBS是从关系DBS自然地加入OO技术进化到具有新功能的结果,即ORDBS。2019年8月1日3时45分81.2OO的数据类型系统在OO技术中,数据类型系统由基本类型、复合类型、引用类型组成。基本类型:整型、浮点型、字符、字符串、布尔型和枚举型复合类型行类型:不同类型元素的有序集数组类型:相同类型元素的有序集合列表类型:相同类型元素的有序集合,并且允许有重复的元素包类型:相同类型元素的无序集合,并且允许有重复的元素集合类型:相同类型元素的无序集合,并且所有的元素必须是不同的引用类型:相当于指针。2019年8月1日3时45分9数据类型的定义CREATETYPEMyStringcharvarying;CREATETYPEMyDate(dayinteger,monthchar(10),yearinteger);CREATETYPECourseGrade(courseMyString,gradeinteger,dateMyDate);CREATETABLEscofTYPEStudentCourseGrade;CREATETYPEStudentCourseGrade(nameMyString,cgStudentGrade);CREATETYPEStudentGradesetof(CourseGrade);2019年8月1日3时45分101.3对象联系图传统的数据库技术中,ER模型中结构简单:属性值都是原子值、多值属性要转换成单属性或一个弱实体、不支持复合数据和递归等。ER图对象联系图2019年8月1日3时45分111.3对象联系图对象类型属性值是单值对象间的嵌套或引用基本数据类型属性值是多值两个属性之间值的联系为逆联系对象间是超类和子类的联系单箭头双箭头双线箭头双向箭头大椭圆边小圆圈图1.1对象联系图的成分2019年8月1日3时45分12一个对象联系图的实例FacultyUniversityCoursetextpresidentworks_forfnocityunameeditorstaffteacheditageteachersalarytextnamefnamecnameuno图1.2大学、教师、教材等信息的对象联系图2019年8月1日3时45分131.4UML类图UML(统一建模语言)UML的基本图类图对象图用例图状态图顺序图活动图协作图构件图部署图2019年8月1日3时45分14类图和ER图中术语的区别ER图中的术语类图中的术语实体集(EntitySet)类(class)实体(Entity)对象(object)联系(relationship)关联(association)联系元数关联元数实体的基数(cardinality)重数(mulitiplicity)-2019年8月1日3时45分15用类图表达类和关联Universityunounamecitynum_staffPersonnameageFacultyfnosalarynum_teachCoursetextcnametextname0..1President0..11Staff0..*1..1Edit0..*0..*1..1Teach1PERSONFACULTYSTAFFCOURSETEXTUNIVERSITYTEACHEDITPRESIDENT11N1N图1.3ER图图1.4UML的类图类名属性方法重复度关联名二元2019年8月1日3时45分162.分布式数据库系统随着传统的数据库技术日趋成熟、计算机网络技术的飞速发展和应用范围的扩充,数据库应用已经普遍建立于计算机网络之上。集中式数据库系统的不足:(1)通信开销大:数据按实际需要已在网络上分布存储,再采用集中式处理。(2)可靠性不高:应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统受到影响。(3)可扩充性差:集中式处理引起系统的规模和配置都不够灵活。分布计算主要体现在客户机/服务器模式和分布式数据库体系结构两个方面集中式DB的“集中计算”概念向“分布计算”概念发展。2019年8月1日3时45分172.1集中计算与分布计算(一)“集中计算”概念图2.1集中式DB的结构2019年8月1日3时45分182.1集中计算与分布计算(二)“分布计算”概念处理分布:处理是分布的,数据是集中的。网络中各个节点上用户的应用程序向同一个DB存取数据。数据分布:数据是分布的,数据物理分布在计算机网络的不同节点上,而这些数据在逻辑上是一个整体。网络中每个节点可以执行局部应用,也可执行全局应用。功能分布:网络上的每个节点都是一个通用的计算机,既执行分布式DBMS功能,又执行应用程序。随着工作站功能的增强和广泛应用,把DBMS和应用处理功能分开,分别为DB服务器和客户机。即构成了C/S结构。2019年8月1日3时45分192.1集中计算与分布计算(三)客户机/服务器系统的结构图2.2客户机/服务器系统的结构2019年8月1日3时45分202.2C/S系统的计算模式1、C/S结构的工作模式将计算机应用任务分解成多个子任务,由多台计算机分工完成,即“功能分布”。客户端完成数据处理、数据表示、用户接口等功能;服务器完成DBMS的核心功能。2019年8月1日3时45分212.2C/S系统的计算模式2、C/S环境下应用成分的分布(1)用户界面的显示逻辑:这是与用户交互的应用代码。(2)应用逻辑:这是根据输入数据来完成业务处理和规则的应用代码。(3)事务逻辑:这是应用程序中用DML语句编写的代码。(4)数据管理:这是应用程序中由DBMS完成访问实际DB的程序。在C/S环境下,通常把界面逻辑和应用逻辑驻留在客户机上;而把事务逻辑和DBMS功能驻留在服务器上。2019年8月1日3时45分222.3C/S系统的体系结构在C/S环境下,客户机、服务器和中间件等三大部分构成了C/S模式的基础结构。服务器客户机中间件2019年8月1日3时45分232.3.2C/S结构的演变(一)C/S结构经历了从两层、三层到多层模型的演变。两层C/S结构DB服务器……客户机1客户机N用户用户第一层第二层图2.3两层C/S结构2019年8月1日3时45分242.3.2C/S结构的演变(二)三层C/S结构DB应用服务器……客户机1客户机N用户1用户N第一层第二层DB服务器第三层用户WWW浏览器WWW服务器DB服务器DB图2.5WWW的三层C/S结构图2.4三层C/S结构2019年8月1日3时45分252.3.2C/S结构的演变(三)多层C/S结构图2.6多层C/S结构2019年8月1日3时45分262.3.3网络服务器的类型从网络所提供的应用服务,服务器可分为:DB服务器文件服务器事务服务器文档服务器Web服务器电子邮件服务器其他应用服务器2019年8月1日3时45分272.4C/S系统的管理问题在C/S系统运行时,也有一系列管理问题:并行处理、并发控制、完整性等。1、并行处理与并发控制C/S系统必须提供封锁机制,并允许死锁的发生及提供解决方法。2、完整性一般在服务器上进行完整性规则的定义和检查。2019年8月1日3时45分282.5分布式数据库系统什么是分布式数据库?分布式数据库由一组数据组成,这些数据物理上分布在计算机网络的不同结点(亦称场地)上,逻辑上是属于同一个系统,每一场地都有局部应用和全局应用,程序通过网络通信子系统执行全局应用。主要特征:物理上分布性逻辑上整体性2019年8月1日3时45分29分布式数据库系统(续)图2.7一个分布式数据库系统[例1]如图2.7所示2019年8月1日3时45分30分布式数据库系统(续)区分一个系统是若干集中式数据库的简单连网还是分布式数据库系统的技术要点在于:系统是否支持全局应用比如,银行转账:从一个分行的账户(设在DB1数据库)中转移若干金额到另一个分行的账户(设在DB3数据库)中去,要同时更新两个结点上的数据库。2019年8月1日3时45分31分布式数据库系统(续)图2.8一个多处理机系统(SN并行结构)[例2]如图2.8所示2019年8月1日3时45分32分布式数据库系统(续)多处理机系统(SN并行结构)没有局部应用分布式数据库不仅要求数据的物理分布,而且要求这种分布是面向处理、面向应用的。2019年8月1日3时45分33分布式数据库系统的特点(续)一、数据独立性逻辑独立性物理独立性数据分布独立性(分布透明性)用户的应用程序书写起来就如同数据没有分布一样2019年8月1日3时45分34分布式数据库系统的特点(续)二、集中与自治相结合的控制结构数据共享:(1)局部共享(2)全局共享控制机制:集中自治2019年8月1日3时45分35分布式数据库系统的特点(续)三、适当增加数据冗余度提高系统的可靠性、可用性提高系统性能四、全局的一致性、可串行性和可恢复性局部数据库要保证ACID(即事务的原子性、一致性、隔离型、持久性)全局数据库也要保证ACID2019年8月1日3时45分363.ODBC技术对于那些相对独立的软件供应商而言,经常要为每一个DBMS编写一个版本的应用程序,或者为每个要访问的DBMS编写针对DBMS的代码。这就意味着,大量的资源都耗在了编写和维护DB的访问上,更不用说应用程序了。此时应用程序的评价标准不再是质量,而是它能否在给定的DBMS中访问数据库。这就需要开放的数据库连接,就是人们需要用一种新的方法来访问不同的数据库。为此,在C/S系统中必须广泛使用中间件技术,以隐藏各种复杂性,屏蔽各种系统之间的差异。ODBC(OpenDataBaseConnectivity)技术就是这种优秀的中间件技术。2019年8月1日3时45分373.1中间件3.1.1中间件的定义3.1.2中间件的作用2019年8月1日3时45分383.1.1中间件的定义定义中间件(middleware)是分布式环境中保证操作系统、通信协议、数据库等之间进行对话、互操作的软件系统。在C/S环境中,中间件同时存在于客户端和服务器端,负责客户和服务器间透明的请求和回答交换。在分布式环境中,中间件允许不同服务器之间相互通信,如数据库网关。使用中间件后,应用开发者不需关心特定环境的低层细节,通过中间件等访问数据库,有关代码不依赖于某一具体数据库及该数据库所在平台,从而可将更多的精力集中在功能的设计,所得到的应用软件也易于移植和升级。2019年8月1日3时45分

1 / 70
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功