发展篇对象数据库分布式数据库数据仓库_第1页
发展篇对象数据库分布式数据库数据仓库_第2页
发展篇对象数据库分布式数据库数据仓库_第3页
发展篇对象数据库分布式数据库数据仓库_第4页
发展篇对象数据库分布式数据库数据仓库_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库原理

湖南工业大学计算机与通信学院1/13/20231发展篇:数据库新技术1授课内容数据库新技术。主要内容:(1)面向对象数据库系统。(2)分布式数据库系统。(3)ODBC技术。(4)数据仓库。1/13/20232发展篇:数据库新技术2授课要求了解下述内容:(1)面向对象数据库系统。(2)分布式数据库系统。(3)ODBC技术。(4)数据仓库。1/13/20233发展篇:数据库新技术3授课重点1.重点是面向对象数据库、分布式数据库、数据仓库等基本概念。4授课难点1.面向对象数据库。1/13/202341.面向对象数据库1/13/202351.1对象数据库系统(1)第一代DBS:层次、网状数据库系统第二代DBS:关系数据库系统这两代DBS的应用领域主要在商务领域,其特点是所处理的事务比较小,诸如存款取款、购票订票、财务管理、仓库管理、人事管理、统计管理等。随着计算机应用领域的拓广,同时,传统数据库的数据结构比较简单,不能支持新的数据类型和嵌套、递归的数据结构,这两代DBS已不能适用新的应用需要。比如:这两代DBMS很难满足CAD/CAM、CASE、图像处理、GIS等新的应用领域的需要。为适应新的应用需要,应提出新的数据模型、数据库系统。1/13/202361.1对象数据库系统(2)对于第二代以后的新一代DBS,有两种观点。这两种观点虽然都是从OO技术和DB技术相结合的角度考虑,但方法不一样。(1)新一代DBS将是OODBS,即在面向对象程序设计语言中引入数据库技术。(2)新一代DBS是从关系DBS自然地加入OO技术进化到具有新功能的结果,即ORDBS。1/13/202371.2OO的数据类型系统在OO技术中,数据类型系统由基本类型、复合类型、引用类型组成。基本类型:整型、浮点型、字符、字符串、布尔型和枚举型复合类型行类型:不同类型元素的有序集数组类型:相同类型元素的有序集合列表类型:相同类型元素的有序集合,并且允许有重复的元素包类型:相同类型元素的无序集合,并且允许有重复的元素集合类型:相同类型元素的无序集合,并且所有的元素必须是不同的引用类型:相当于指针。1/13/20238数据类型的定义CREATETYPEMyStringcharvarying;CREATETYPEMyDate(dayinteger,monthchar(10),yearinteger);CREATETYPECourseGrade(courseMyString,gradeinteger,dateMyDate);CREATETABLEscofTYPEStudentCourseGrade;CREATETYPEStudentCourseGrade(nameMyString,cgStudentGrade);CREATETYPEStudentGradesetof(CourseGrade);1/13/202391.3对象联系图传统的数据库技术中,ER模型中结构简单:属性值都是原子值、多值属性要转换成单属性或一个弱实体、不支持复合数据和递归等。ER图对象联系图1/13/2023101.3对象象联联系系图图对象类型属性值是单值对象间的嵌套或引用基本数据类型属性值是多值两个属性之间值的联系为逆联系对象间是超类和子类的联系单箭头双箭头双线箭头双向箭头大椭圆边小圆圈图1.1对对象象联联系系图图的成成分分12/31/202211一个个对对象象联联系系图图的的实实例例FacultyUniversityCoursetextpresidentworks_forfnocityunameeditorstaffteacheditageteachersalarytextnamefnamecnameuno图1.2大大学、教教师、教教材等信信息的对对象联系系图12/31/2022121.4UML类类图UML((统一建建模语言言)UML的的基本图图类图对象图用例图状态图顺序图活动图协作图构件图部署图12/31/202213类图和ER图中中术语的的区别ER图中的术语类图中的术语实体集(EntitySet)类(class)实体(Entity)对象(object)联系(relationship)关联(association)联系元数关联元数实体的基数(cardinality)重数(mulitiplicity)-12/31/202214用类图表达达类和关联联University unounamecity num_staff Person

nameage

Faculty

fnosalary num_teach Coursetext cnametextname

0..1President0..11Staff0..*1..1Edit

0..*0..*1..1Teach1PERSONFACULTYSTAFFCOURSETEXTUNIVERSITYTEACHEDITPRESIDENT11N1N图1.3ER图图图1.4UML的的类图类名属性方法重复度关联名二元12/31/2022152.分分布式数数据库系统统随着传统的的数据库技技术日趋成成熟、计算算机网络技技术的飞速速发展和应应用范围的的扩充,数数据库应用用已经普遍遍建立于计计算机网络络之上。集中式数据据库系统的的不足:(1)通信开销大大:数据按实实际需要已已在网络上上分布存储储,再采用用集中式处处理。(2)可靠性不高高:应用程序集集中在一台台计算机上上运行,一一旦该计算算机发生故故障,则整整个系统受受到影响。。(3)可扩充性差差:集中式处理理引起系统统的规模和和配置都不不够灵活。。分布计算主主要体现在在客户机/服服务器模式式和分布式数据据库体系结结构两个方面集中式DB的“集中中计算”概概念向“分分布计算””概念发展展。12/31/2022162.1集集中计算算与分布计计算(一))“集中计算算”概念图2.1集集中式式DB的结结构12/31/2022172.1集集中计算算与分布计计算(二))“分布计算”概念处理分布:处理是分分布的,数数据是集中中的。网络络中各个节节点上用户户的应用程程序向同一一个DB存存取数据。。数据分布:数据是分分布的,数数据物理分分布在计算算机网络的的不同节点点上,而这这些数据在在逻辑上是是一个整体体。网络中中每个节点点可以执行行局部应用用,也可执执行全局应应用。功能分布:网络上的的每个节点点都是一个个通用的计计算机,既既执行分布布式DBMS功能,,又执行应应用程序。。随着工作作站功能的的增强和广广泛应用,,把DBMS和应用用处理功能能分开,分分别为DB服务器和和客户机。。即构成了了C/S结结构。12/31/2022182.1集集中计算算与分布计计算(三))客户机/服服务器系统统的结构图2.2客客户机机/服务器器系统的结结构12/31/2022192.2C/S系系统的计算算模式1、C/S结构的工工作模式将计算机应用用任务分解解成多个子子任务,由由多台计算算机分工完完成,即“功能能分布”。。客户端完成成数据处理理、数据表表示、用户户接口等功功能;服务务器完成DBMS的的核心功能能。12/31/2022202.2C/S系系统的计算算模式2、C/S环境下应应用成分的的分布(1)用户界面的的显示逻辑辑:这是与用用户交互的的应用代码码。(2)应用逻辑:这是根据据输入数据据来完成业业务处理和和规则的应应用代码。。(3)事务逻辑:这是应用用程序中用用DML语语句编写的的代码。(4)数据管理:这是应用用程序中由由DBMS完成访问问实际DB的程序。。在C/S环环境下,,通常把界面面逻辑和应应用逻辑驻驻留在客户户机上;而而把事务逻逻辑和DBMS功能能驻留在服服务器上。12/31/2022212.3C/S系统的的体系结构在C/S环境境下,客户机机、服务器和和中间件等三三大部分构成成了C/S模模式的基础结结构。服务器客户机中间件12/31/2022222.3.2C/S结结构的演变((一)C/S结构经经历了从两层层、三层到多多层模型的演演变。两层C/S结结构图2.3两两层C/S结构12/31/2022232.3.2C/S结结构的演变((二)三层C/S结结构图2.4三三层C/S结构12/31/2022242.3.2C/S结结构的演变((三)多层C/S结结构图2.6多多层C/S结构12/31/202225网网络服务务器的类型从网络所提供供的应用服务务,服务器可可分为:DB服务器文件服务器事务服务器文档服务器Web服务器器电子邮件服务务器其他应用服务务器12/31/2022262.4C/S系系统的的管理理问题题在C/S系系统运运行时时,也也有一一系列列管理理问题题:并行处处理、、并发发控制制、完完整性性等。1、并并行处处理与与并发发控制制C/S系统统必须须提供供封锁锁机制制,并并允许许死锁锁的发发生及及提供供解决决方法法。2、完完整性性一般在在服务务器上上进行行完整整性规规则的的定义义和检检查。。12/31/2022272.5分分布布式数数据库库系统统什么是是分布式式数据据库?分布式式数据据库由由一组组数据据组成成,这这些数数据物物理上上分布布在计计算机机网络络的不不同结结点(亦称称场地地)上上,逻逻辑上上是属属于同同一个个系统统,每一场场地都都有局局部应应用和和全局局应用用,程程序通通过网网络通通信子子系统统执行行全局局应用用。主要特特征::物理上上分布布性逻辑上上整体体性12/31/202228分布式式数据据库系系统(续)图2.7一一个分分布式式数据据库系系统[例1]如如图2.7所示示12/31/202229分布式式数据据库系系统(续)区分一一个系系统是是若干干集中中式数数据库库的简简单连连网还还是分分布式式数据据库系系统的的技术术要点点在于于:系统是是否支支持全全局应应用比如,银行行转账账:从一个个分行行的账账户(设在在DB1数数据库库)中中转移移若干干金额到另另一个个分行行的账账户(设在在DB3数数据库库)中中去,,要同时更更新两两个结结点上上的数数据库库。12/31/202230分布布式式数数据据库库系系统统(续续)图2.8一一个个多多处处理理机机系系统统(SN并并行行结结构构)[例2]]如图2.8所所示12/31/202231分布式数数据库系系统(续续)多处理机机系统(SN并并行结构构)没有局部部应用分布式数数据库不不仅要求求数据的物物理分布布,而且要要求这种种分布是面面向处理理、面向向应用的的。12/31/202232分布式数数据库系系统的特特点(续续)一、数据据独立性性逻辑独立立性物理独立立性数据分布布独立性性(分布布透明性性)用户的应应用程序序书写起起来就如如同数据据没有分分布一样样12/31/202233分布式数数据库系系统的特特点(续续)二、集中中与自治治相结合合的控制制结构数据共享享:(1)局局部共共享(2)全全局共享享控制机制制:集中自治12/31/202234分布式数数据库系系统的特特点(续续)三、适当当增加数数据冗余余度提高系统统的可靠靠性、可可用性提高系统统性能四、全局局的一致致性、可可串行性性和可恢恢复性局部数据据库要保保证ACID((即事务的原原子性、、一致性性、隔离离型、持持久性)全局数据据库也要要保证ACID12/31/2022353.ODBC技术术对于那些些相对独独立的软软件供应应商而言言,经常常要为每每一个DBMS编写一一个版本本的应用用程序,,或者为为每个要要访问的的DBMS编写写针对DBMS的代码码。这就就意味着着,大量量的资源源都耗在在了编写写和维护护DB的的访问上上,更不不用说应应用程序序了。此此时应用用程序的的评价标标准不再再是质量量,而是是它能否否在给定定的DBMS中中访问数数据库。。这就需需要开放的的数据据库连连接,就是是人们们需要要用一一种新新的方方法来来访问问不同同的数数据库库。为为此,,在C/S系统统中必必须广广泛使使用中中间件件技术术,以以隐藏藏各种种复杂杂性,,屏蔽蔽各种种系统统之间间的差差异。。ODBC((OpenDataBaseConnectivity)技技术就就是这这种优优秀的的中间间件技技术。12/31/2022363.1中中间件件中中间件件的定定义中中间件件的作作用12/31/202237中中间件件的定定义定义中间件件(middleware)是是分布布式环环境中中保证证操作作系统统、通通信协协议、、数据据库等等之间间进行行对话话、互互操作作的软件系系统。在C//S环环境中中,中中间件件同时时存在在于客客户端端和服服务器器端,,负责责客户户和服服务器器间透透明的的请求求和回回答交交换。。在分布布式环环境中中,中中间件件允许许不同同服务务器之之间相相互通通信,,如数数据库库网关关。使用中中间件件后,,应用用开发发者不不需关关心特特定环环境的的低层层细节节,通通过中中间件件等访访问数数据库库,有有关代代码不不依赖赖于某某一具具体数数据库库及该该数据据库所所在平平台,,从而而可将将更多多的精精力集集中在在功能能的设设计,,所得得到的的应用用软件件也易易于移移植和和升级级。12/31/202238中间件件的作作用是保证证网络络中各各部件件(软软件和和硬件件)之之间透透明地地连接接,即隐隐藏网网络部部件的的异构构性,,尤其其保证证不同同网络络、不不同DBMS和和某些些访问问语言言的透透明性性,即即下面面三个个透明明性。。●网络透透明性性:能能支持持所有有类型型的网网络。。●服务器器透明明性::不管管服务务器上上的DBMS是是何种种型号号(ORACLE、、SYBASE、DB2等)),一一个好好的中中间件件都能能通过过标准准的SQL语言言与不不同DBMS上上的SQL语言言连接接起来来。●语言透明性性:客户机机可用任何何开发语言言进行发送送请求和接接受回答,,被调用的的功能应该该像语言那那样也是独独立的。3.1.2中间件件的作用12/31/202239传统的数据据库编程方方式是“主语言+DML”。但是一一个特定的的前端应用用却不能访访问不同数数据库服务务器上的数数据。这主要有两两个原因::●各厂商的SQL版本本不同,使使得不同的的RDBMS提供的的SQL互互不兼容。。●不同厂商的的RDBMS在客户户机与数据据库服务器器之间使用用了不同的的通信协议议。而与此同时时,RDBMS产品品却迅速增增加,因此有必要要建立一个个公共的、、与数据库库无关的应应用程序设设计接口(API::ApplicationProgrammingInterface)。所所谓公共接口API就是是为开发者者提供单一一的编程接接口,这样样同一个应应用程序就就可以访问问不同的数数据库服务务器。3.2ODBC概概念(1)12/31/202240最先推出的的公共API是Microsoft公公司于1992年推推出的ODBC产品品。ODBC(OpenDataBaseConnectivity,开放放数据库互互连),它以C/S结构构为设计基基础。ODBC技术术使得应用用程序与DBMS之之间在逻辑辑上可以分分离,使应应用程序具具有数据库库无关性。。每个应用用程序利用用相同的源源代码就可可访问不同同的数据库库系统,存存取多个数数据库中的的数据。3.2ODBC概概念(2)ODBC版版本1.0是在1993年8月发布ODBC版版本2.0是在1994年12月发布布ODBC版版本3.0是在1995年10月发布布ODBC版版本3.5是在1996年10月发布布12/31/202241应用程序应用程序应用程序……SYBASE公共接口API网络软件FoxproSQLServerDB2Oracle图3.1采用API的应用编程3.2ODBC概概念念(3)12/31/202242DB2驱动程序Sybase驱动程序Foxpro驱动程序Oracle驱动程序SQLServer驱动程序驱动程序管理器ODBC数据库应用程序SQLServer数据源Oracle数据源DB2数据源Sybase数据源Foxpro数据源DBDBDBDBDB图3.2ODBC的的分分层层体体系系结结构构3.3ODBC的的体体系系结结构构(1)12/31/2022431.应应用用程程序序的主主要要功功能能是是::调用用ODBC函函数数,,递递交交SQL语语句句给给DBMS,,检检索索出出结结果果,,并并进进行行处处理理。应用程序主要要完成以下8个任务:·连接数据库库;··向数据源源发送SQL语句;·为SQL语语句分配空间间;·读取取结果;·处理错误;;··向向用户提交处处理结果;·事务提交和和回退操作;;·断开与数数据源的连接接。3.3ODBC的体系系结构(2)12/31/2022442.驱动程序管理理器是一个动态链链接库(DLL),用于连接各各种DBS的的DBMS驱驱动程序(如如Oracle、Foxpro、Sybase等驱动程序序),管理应应用程序和DBMS驱动动程序之间的的交互作用(通信)。驱动程序管理理器的主要功功能如下:·为应用程序序加载DBMS驱动程序序;·检查ODBC调用参数数的合法性和和记录ODBC函数的调调用;·为不同驱动动程序的ODBC函数提提供单一的入入口;·调用正确的的DBMS驱驱动程序;·提供驱动程程序信息。3.3ODBC的体系系结构(3)12/31/2022453.DB驱动动程序当应用程序调调用函数SQLConnect时,,驱动程序管管理器加载驱驱动程序。根根据应用程序序的要求,驱驱动程序完成成以下任务::·建立应用程程序与数据源源的连接;·向数据源提提交用户请求求执行的SQL语句;·根据应用程程序的要求,,将发送给数数据源的数据据或是从数据据源返回的数数据进行数据据格式和类型型转换;·把处理结果果返回给应用用程序;·将执行过程程中DBS返返回的错误转转换成ODBC定义的标标准错误代码码,并返回给给应用程序;;·根据需要定定义和使用光光标。3.3ODBC的体系系结构(4)12/31/202246ODBC规范范定义的驱动动程序有两种种类型:(1)单层驱驱动程序单层驱动程序序不仅要处理理ODBC函函数调用,还还要解释执行行SQL语句句,即执行DBMS的功功能。(2)多层驱驱动程序多层驱动程序序只处理应用用程序的ODBC函数调调用和数据转转换,它将SQL语句传传递给数据源源服务器,由由DBMS解解释执行SQL语句,实实现用户的各各种操作请求求。3.3ODBC的体系系结构(5)12/31/2022474.ODBC的数据据源管理数据源(DataSourceName,简称DSN)是驱动程序序与DBS连连接的桥梁,,数据源不是是DBS,而而是用于表达一个个ODBC驱驱动程序和DBMS特殊殊连接的命名名。在连接中,用用数据源名来来代表用户名名、服务器名名、所连接的的数据库名等等,可以将数数据源名看成成是与一个具具体数据库建建立的连接。。3.3ODBC的体系系结构(6)12/31/202248数据源源分为为以下下三类类:●用户数数据源源:用户户创建建的数数据源源,称称为““用户户数据据源””。此此时只只有创创建者者才能能使用用,并并且只只能在在所定定义的的机器器上运运行。。任何何用户户都不不能使使用其其他用用户创创建的的用户户数据据源。。●系统数数据源源:所有有用户户和在在WindowsNT下以以服务务方式式运行行的应应用程程序均均可使使用系系统数数据源源。●文件数数据源源:文件件数据据源是是ODBC3.0以上上版本本增加加的一一种数数据源源,可可用于于企业业用户户,ODBC驱驱动程程序也也安装装在用用户的的计算算机上上。3.3ODBC的的体系系结构构(7)12/31/202249从ODBC的体体系结结构可可以看看出,,ODBC技术术有下列三三个特特性:(1))ODBC是一一个调调用层层的接接口。。(2))ODBC定义义了标标准的的SQL语语法。。(3))ODBC提供供一个个驱动动程序序管理理器来来管理理并并同时时访问问多个个DBMS系统统。3.4ODBC的的特性性12/31/2022504.数数据据仓库库技术术数据仓仓库定义::是一个个用以以更好好地支支持企企业((或组组织))决策策分析析处理理的、、面向向主题题的、、集成成的、、不可可更新新的、、随时时间不不断变变化的的数据据集合合。本质上上和数数据库库一样样,是是长期期储存存在计计算机机内的的、有有组织织、可可共享享的数数据集集合。。12/31/2022514.数数据据仓库库技术术(续续)一、数数据据仓库库的基基本特特征数据仓仓库的的数据据是面向主主题的;数据仓仓库的的数据据是集成的;数据仓仓库的的数据据是不可更更新的;数据仓仓库的的数据据是随时间间不断断变化化的12/31/2022524.数据据仓库技术术(续)二、数据据仓库中的的数据组织织数据仓库的的数据组织织结构12/31/2022534.数据据仓库技术术(续)三、数据据仓库系统统的体系结结构数据仓库体体系结构12/31/2022544.数据据仓库技术术(续)数据仓库的的后台工具具包括数据抽抽取、清洗洗、转换、、装载和维维护(Maintain)工工具。数据仓库服服务器相当于数据据库系统中中的DBMS,负责责管理数据据仓库中数数据的存储储管理和数数据存取,,并给OLAP(联机分析处处理)服务器和和前台工具具提供存取取接口(如如SQL查查询接口)12/31/2022554.数据据仓库技术术(续)OLAP服服务器透明地为前前台工具和和用户提供供多维数据据视图OLAP服服务器则必必须考虑物物理上这些些分析数据据的存储问问题。前台工具包括查询报报表工具、、多维分析析工具、数数据挖掘工工具和分析析结果可视视化工具等等12/31/2022564.2联联机分析处处理技术OLAP(On-LineAnalyticalProcessing)即联机分析处处理,是以海量量数据为基基础的复杂杂分析技术术。一、多维数数据模型数据分析时时用户的数数据视图,,是面向分分析的数据据模型,用于给分析析人员提供供多种观察察的视角和和面向分析析的操作可用这样来来一个多维维数组来表表示:(维维1,维2,…,维n,度量值)12/31/202257联机分析处处理技术(续)一、多维数数据模型(续)例如:(地区,时时间,电器器商品种类类,销售额额)三维数组可可以用一个个立方体来来直观地表表示一般地多维维数组用多多维立方体体CUBE(超立方方体)来表表示12/31/202258联机分析处处理技术(续)二、多维分分析操作常用的OLAP多维维分析操作作切片(slice)切块(dice)旋转(pivot)向上综合(roll-up)向下钻取(drill-down)等等12/31/202259联机分析析处理技技术(续续)三、OLAP的的实现方方式按照多维维数据模模型的不不同实现现方式MOLAP结构构(多维维OLAP)ROLAP结构构(关系系OLAP)HOLAP结构构(前两两种混合合型OLAP))12/31/202260OLAP的实现现方式(续)MOLAP结构构以多维立方方体CUBE来组织数数据,以以多维数组组来存储数数据,支支持直接接对多维维数据的的各种操操作。多维数据据库(Multi-DimensionDataBase,简记记为MDDB)。例如:Arbor公司司的Essbase12/31/202261联机分析析处理技技术(续续)ROLAP结构构用RDBMS或扩扩展的RDBMS来管理多多维数据据,用关系的表表来组织和和存储多多维数据据两类表::一类是是事实(fact)表表,另一一类是维维表

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论