数据库原理及应用-孙浩军 第11章网络环境下的数据库系统

上传人:E**** 文档编号:89437900 上传时间:2019-05-25 格式:PPT 页数:40 大小:118KB
返回 下载 相关 举报
数据库原理及应用-孙浩军 第11章网络环境下的数据库系统_第1页
第1页 / 共40页
数据库原理及应用-孙浩军 第11章网络环境下的数据库系统_第2页
第2页 / 共40页
数据库原理及应用-孙浩军 第11章网络环境下的数据库系统_第3页
第3页 / 共40页
数据库原理及应用-孙浩军 第11章网络环境下的数据库系统_第4页
第4页 / 共40页
数据库原理及应用-孙浩军 第11章网络环境下的数据库系统_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《数据库原理及应用-孙浩军 第11章网络环境下的数据库系统》由会员分享,可在线阅读,更多相关《数据库原理及应用-孙浩军 第11章网络环境下的数据库系统(40页珍藏版)》请在金锄头文库上搜索。

1、数据库原理及应用 The Principle of Database and applications 第十一章 网络环境下的数据库系统,第11章 网络环境下的数据库系统,11.1 客户机/服务器系统 11.2 分布式数据库,网络环境下的数据库系统,通常所说的客户机/服务器系统既可指硬件系统,也可指软件系统 从硬件方面来说,客户机/服务器系统是指某项任务在两台或多台之间进行分配,其中客户机(Client)用来运行提供用户接口和前端处理的应用程序,服务器(Sever)提供可供客户机使用的各种资源和服务 从软件方面来说,客户机/服务器系统是指把一个软件系统或应用系统按逻辑功能分成若干个组成部分,1

2、1.1.1 客户机/服务器数据库系统,客户机/服务器结构的DBMS能够很好的满足联机事务的要求。 在客户机/服务器结构的数据库系统中,可以是只有一个服务器的情况。 在客户服务器数据库系统中,多个服务器的情况随着企业管理模式朝着分布式的,集成化的方向发展,越来越多的系统包括了多个服务器。 对多服务器的情况,可以建立分布式事务,即一个数据库事务可以更新多个服务器上的数据。,11.1.2 客户机/服务器数据库系统的实现,客户机/服务器数据库系统的实现采用了许多新的软件技术 数据库服务器优化的各种技术 客户端应用开发工具的工作模型和实现技术 数据库互联技术 分布数据管理技术,客户机/服务器数据库系统的

3、实现,1开放的数据库访问接口 ODBC 2存储过程 存储过程是用SQL语句和数据库编程语言编写的,完成一定数据访问功能或提供一定的服务的过程,预先进行编译和优化后,存储在服务器中,客户应用程序可以通过远程过程调用的模式调用它们。采用存储过程技术有以下优点:高性能 、共享性 、简化应用开发过程、简化了安全控制,客户机/服务器数据库系统的实现,3分布数据的管理 面临问题 查询远程数据时的通信开销问题 网络中某服务器故障时保持分布式事务一致性的问题 系统的管理开销问题等。 通常采用的分布数据管理技术 数据复制技术 两阶段提交协议,客户机/服务器数据库系统的实现,数据复制和分布 客户/服务器结构的数据

4、库系统往往提供数据复制服务,支持将某一服务器上的某些表中的数据复制和分布到其他远程数据库服务器结点上 两阶段提交 两阶段提交用来协调参议一个分布事务的多个服务器的活动,以防止某个服务器故障时产生数据不一致性。 采用两阶段提交技术的分布式事务的提交分两个阶段进行。一个分布式事务所涉及的多个服务器中,有一个作为协调者,其余的作为参与者。,11.1.3 客户机/服务器数据库系统的特点,客户机/服务器数据库系统具有高性能、高效率、高可靠、开放、易扩充、可伸缩等优越的特性 客户机/服务器数据库系统的特点 提供数据和服务的无缝集成 为联机事务处理提供高性能 开放的系统结构,11.2 分布式数据库,分布式数

5、据库是用计算机网络将物理上分散的多个数据库单元连接起来组成的一个逻辑上统一的数据库。 分布式数据库有一个统一的数据库管理系统来进行管理,称为分布式数据库管理系统。 分布式数据库的基本特点包括:物理分布性、逻辑整体性和站点自治性,11.2.1 分布式数据库的概念,分布式数据库(Distributed Data Base,DDB)是计算机网络环境中各场地(Site)或结点(Node)上数据库的逻辑集合。 分布性是指数据不是存放在单一场地为各计算机配置的存储设备上,而是按全局需要将数据划分成一定结构的数据子集,分散地存储在各个场地上。 逻辑协调性是指各场地上的数据子集,相互间由严密的约束规则限定,而

6、在逻辑上是一个整体,分布式数据库的概念,分布式数据库管理系统和集中式数据库管理系统一样,是数据库系统中的一组软件。负责管理分布环境下逻辑集成数据的存取、一致性、有效性、完整性等。 由于分布特性,在管理机制上,还必须具有计算机网络协议上的分布管理功能。因此,分布式数据库管理系统更为复杂。,11.2.2 分布式数据库系统的特点,分布式数据库系统是在集中式数据库系统成熟技术的基础上发展起来的,但不是简单地把集中式数据库分散地实现,它具有自己的性质和特征 数据独立性 集中与自治相结合的控制结构 适当增加数据冗余度 事务管理的分布性,分布式数据库系统的特点,1数据独立性 含义是应用程序和实际数据的分离,

7、即系统透明性 在集中式数据库中,数据独立性包括两方面:数据的逻辑独立性和物理独立性 在分布式系统中,还有数据分布独立性也称分布透明性 在集中式数据库中,数据的独立性是通过系统的三级模式和它们之间的二级映像得到的。分布式数据库,分布透明性是由于引入新的模式和模式之间的映像得到的。,分布式数据库系统的特点,分布式数据库系统最重要的目标之一就是支持位置透明,这就是说,用户对所需要的数据的存放位置不必关心。 数据分片是分布式数据库的特性之一,这与位置透明又紧密相关,分布式数据库系统的特点,2集中与自治相结合的控制结构 在集中式数据库中,为保证数据的安全性和完整性,对数据库的控制是集中的。 在分布式数据

8、库中,数据的共享有两个层次: 局部共享 全局共享 控制结构也具有两个层次:集中和自治,分布式数据库系统的特点,3适当增加数据冗余度 在集中式数据库中,尽量减少冗余度是系统目标之一。 在分布式系统中却希望增加冗余数据,在不同的场地存储同一数据的多个副本。 增加冗余会碰到集中式数据库同样的问题,即不利于更新,增加了系统维护代价,需要在这些方面做出权衡。,分布式数据库系统的特点,4事务管理的分布性 分布式数据库系统的事务管理,由于数据的分布使得事务也具有了分布性,即一个事务(全局事务)的执行将划分在许多场地上执行的子事务(局部事务),子事务的执行结果合并成全局事务的结果,这样的事务即为分布事务。 分

9、布事务管理是针对全局数据的事务管理,它与集中式数据库的事务管理在处理策略上有本质的区别。 在组织子事务时必须以不同的优化原则加以组织 增加了实际执行中的并行处理能力,11.2.3 分布式数据库系统的体系结构,1分布式系统数据存储 分布式数据存储可以从数据分配和数据分片两个角度考察。 确定数据分配的策略,一般有4个主要因素要考虑:存储代价、可靠性、检索代价和更新代价。 在实际应用中,数据分配有4种基本类型 : 集中式 分割式 全复制式 混合式,分布式数据库系统的体系结构,可归纳出数据分配的一般规则: 处理局部性:数据分配时应尽量考虑提高局部处理能力减少远程访问次数。 数据的可用性和可靠性:尽量提

10、高只读应用的可靠性和全系统的可用性,充分发挥DDB的优点。 工作负载分布的均匀性。使系统各场地的负载均匀,尽量提高系统并行处理能力。,分布式数据库系统的体系结构,数据分片是指数据存放单位不是全部关系,而是关系的一个片段。也就是关系的一部分。包括以下几种。 水平分片 垂直分片 混合型分片,分布式数据库系统的体系结构,数据分片应遵循以下准则。 完备性条件:必须把全局关系的所有数据映射到各个片段中,绝不允许发生属于全局关系的某个数据不属于任何一个片段。 重构条件:划分所采用的方法必须确保能够由各个片段重建全局关系。 不相交条件:要求一个全局关系被划分后得到的各个数据片段互相不重叠。,分布式数据库系统

11、的体系结构,2分布式数据库系统的体系结构 分布式DBS的体系结构分为四级: 全局外模式 它们是全局应用的用户视图,是全局概念模式的子集。 全局概念模式 全局概念模式描述了分布式数据库中所有数据的逻辑结构。 分片模式 分片模式定义片段以及定义全局关系与片段之间的映像。 分配模式 分配模式根据数据分配策略的选择定义片段的存放场地,11.2.4 分布式查询处理,全局查询 在分布式数据库系统中,数据分布对用户一般是透明的。用户向系统提出查询,不必关心所涉及的关系是否分片、有无复本、存于何处等同题,可以像集中式数据库一样,用关系而不是片段表达查询。 在分布式数据库查询处理过程中,有多种可能的执行方案可供

12、选择,存在查询优化的问题,分布式查询处理,1分布式查询处理的传输代价 对分布式数据库来说,还必须考虑数据在不同场地间的传输代价。 数据量的传输费用 传输的延迟时间 还可以涉及传输数据的控制信息及控制次数, 场地间的传输代价不仅仅体现在查询处理的策略上,还可能包括分布事务处理的管理策略。 在分布式环境中,分布查询的特点使得可将查询处理分成全局查询和局部查询两个部分来考虑。,分布式查询处理,2基于半连接的查询优化策略 基本思想 在连接时并非每个数据都参与操作或有用,因此,不参与操作的值或无用的值不必经网络来回传输,则可以减少传输的数据量。,分布式查询处理,设A为R和S的连接属性,即AAttr(R)

13、Atrrr(S) 则R和S的连接可按下列步骤进行: (1)A(R)结点2。 (2)在结点2进行连接操作A(R)S=S(SR)。 (3)S(SR)结点1。 (4)在结点1进行连接操作R(S(SR)=RS,11.2.5 分布式事务处理,在分布数据库系统中,分布式事务处理的目的在于保证事务的正确执行及执行结果的有效性,主要解决系统可靠性、事务并发控制及系统资源的有效利用等问题 集中式数据库系统中的事务和分布式数据库系统中的事务 子事务 分布式事务在执行时被分解为若干个场地上计算机相关的操作序列,11.2.5 分布式事务处理,1分布式事务特性 分布式事务除了具有一般事务的特征外,还具有自己独特的特性

14、执行特性 操作特性 控制报文 2分布事务处理的目标 和集中式事务处理一样,分布式事务处理的目标也是追求高效、可靠、并发地执行事务,分布式事务处理,影响执行效率的因素 : CPU和内存的利用率 控制报文的数量及长度 响应时间 可用性,分布式事务处理,3分布式事务模型 分布执行计划 (DEP) 分布式事务对分布式数据库的存取经分解、优化后,产生一个涉及到用通信操作联系的多个局部数据的存取操作序列 分布执行计划可以分解为涉及相应场地上的局部数据库的操作序列,即各场地上的子DEP组成,分布式事务处理,代理者和协调者 为了完成各场地的子事务的处理功能,全局事务必须为每一个子事务在相应的场地上创建一个代理

15、者进程,每一个代理者都是一个局部进程。 为了协调各子事务的操作,全局事务还要启动一个协调者进程,来控制和协调各代理者间的操作,进行代理者间的通信,分布式事务处理,一般有多种方法来构造协调进程之间的结构,可以期望如下的进程结构: 存在一个协调者进程,这个进程一般由事务的始发场地启动,当用户提供一个用户请求时,就在请求的始发场地启动该进程。 协调者进程负责控制事务的执行,协调代理者之间的操作,发出事务的开始、提交或夭折等操作。 只有协调者才可以请求创建新的代理者。,分布式事务处理,4分布式事务恢复机制 关键问题 全局事务可以分解为若干子事务,分布在不同的结点上执行。系统不但要保证子事务的原子性,还

16、要保证全局事务的原子性。这不是哪一个局部DBMS所能完成的,而是需要在结点间进行协调。 在分布式数据库系统中,失效可分为两种: 一种是结点失效(Node Failure 第二种是分区失效(Partition Failure),分布式事务处理,两步提交协议 当一个事务分布在多个结点上执行时,在结束事务时,各结点须保持一致,要么都提交,要么都回滚,11.2.6 WEB与数据库的连接,增加设计交互性数据库访问能力的工具和技术,这种技术通常主要有三种形式 基于服务器应用程序的方法 基于服务器描述脚本的方法 基于客户端应用程序的方法 实现连接的三个步骤 第一步:选择连接方式 第二步:工具的选择 第三步:发布数据,WEB与数据库的连接,构造一个数据库连接的基本方式通常有两种,即服务器端连接和客户端连接。 1.选择连接方式 服务器端数据库连接 是最早出现同时也是最常用的一种方法 让客户端在Web服务器上唤起一个CGI、NSAPI或ISAPI进程,将它们连接到一个数据库上用以收集信息。该数据库通过将DHTML(Dynamic HTML,动

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

最新文档


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

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