分布式数据库(新)PPT课件_第1页
分布式数据库(新)PPT课件_第2页
分布式数据库(新)PPT课件_第3页
分布式数据库(新)PPT课件_第4页
分布式数据库(新)PPT课件_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

1 分布式数据库系统 2 主要内容 分布式数据库系统概述分布式数据库系统的体系结构分布式查询处理客户 服务器结构的分布式系统 3 主要参考资料 TEXTBOOK邵佩英分布式数据库系统及其应用第二版科学出版社M T zsuandP Valduriez PrinciplesofDistributedDatabaseSystems 2ndedition PrenticeHall贾焰分布式数据库技术 国防工业出版社周龙骧分布式数据库管理系统实现技术科学出版社 1分布式数据库系统概述 1 1集中式系统和分布式系统集中式数据库管理系统的缺点 通信开销大 系统的坚固性差 性能差 可扩充性差 设计 管理困难 分散式系统 将数据库分成多个 建立在多台计算机上 数据库的管理 应用程序的研制都是分开并相互独立的 之间不存在数据通行联系 分布式数据库系统的特点 数据的分布性 统一性 透明性 统一性 两个方面 数据在逻辑上的统一性和数据在管理上的统一性 分布式数据库与集中式数据库相比的优点 坚固性好 可扩充性好 可改善性能 自治性好 5 与集中式数据库相比 分布式DB具有 数据分布式的特点 与分散式数据库相比 分布式DB具有 逻辑整体性的特点 6 背景数据库系统 计算机网络 1 2分布式数据库系统的定义 7 1 2分布式数据库系统的定义 一个分布式系统由通信网络联接起来的结点的集合 每个结点都是拥有集中式数据库的计算机系统 分布式数据库的特点 数据库中的数据不是存储在同一场地 而是分布存储在多个场地 8 1 2分布式数据库系统的定义 分布性 数据存储在不同场地上 与集中式数据库不同 逻辑整体性 数据逻辑上是相互联系的一个整体 与分散在计算机网络不同站点上的一组没有相互联系的本地数据库区别开来 9 1 2分布式数据库系统的定义 物理上是分布的 逻辑上是统一的一组数据库的集合要素计算机网络数据库系统 DB1 DB1 DB1 计算机1 计算机1 计算机1 通讯网络 北京 重庆 上海 银行系统 访问本地银行数据 局部应用通兑业务 转账业务 全局应用 11 1 2分布式数据库系统的定义 全局应用 指涉及到两个或两个以上场地中数据库的应用 网络的每个站点具有独立处理能力 可以执行局部应用 同时也能通过网络执行全局应用 分布式数据库是由一组数据库组成 这些数据库分布在计算机网络的不同站点上 逻辑上是属于同一个系统的 12 1 2分布式数据库系统的定义 分布式数据库包含两个重要组成部分 分布式数据库和分布式数据库管理系统 分布式数据库是计算机网络环境中各场地上数据库的逻辑集合 分布式数据库管理系统是分布式数据库系统中的一组软件 它复杂管理分布环境下逻辑集成数据的存取 一致性 有效性和完备性 13 1 3分布式数据库系统的透明性 位置透明性用户或应用程序不必了解它所使用的数据的存储位置 举例 银行的借贷业务 要判断的情况有5种 复制透明性有些数据并不存在一个场地 可能重复存放在不同的场地 本地数据库中也包含了外地数据库中的数据 一个分布式系统有了这两种透明性后 用户看到的系统就如同一个集中式系统 14 分布式数据库系统具有以下特点 数据的物理分布性数据的逻辑整体性数据的分布独立性场地自治性场地之间的协调性数据冗余及冗余透明性事务管理的分布性 15 1 4分布式数据库系统的优缺点DDBS的上述特点决定它具有以下优点 具有灵活的体系结构数据库的使用单位组织上 地理上是分布的适应分布式管理和控制机构 经济性能优越经济上和组织上的理由系统的可靠性高 可用性好 局部应用的响应速度快 可扩展性好 易于集成现有系统 既有数据库互连 历史继承 数据资源共享系统规模逐步扩展增加结点 不影响现有系统运行 16 1 4分布式数据库系统的优缺点 缺点 系统开销大 主要花在通信部分 复杂的存取结构在集中式系统中是有效存取数据的重要基数 但在分布式系统中不一定有效 数据的安全性和保密性较难处理 17 1 5分布式数据库系统的分类 同构同质数据库每个场地都用同一类型的数据模型 并运行同一型号的DBMS同构异质数据库每个场地都用同一类型的数据模型 但运行不同型号的DBMS异构数据库场地上的数据库系统不尽相同DBMS不同数据模型不同 18 练习 1 与集中式DB相比 分布式DB具有 特点 与分散式DB相比 又具有 特点 2 区别系统是分散式还是分布式就是判定系统是否支持 3 在分布式DB中 用户看到的系统如同一个集中式DBS 这是因为分布式系统具有 和 特点 4 如果各个场地都采用同类型数据模型 但DBMS不同型号 这种系统属于 型DBMS 1 数据分布性 逻辑整体性2 全局应用3 位置透明性 复制透明性4 同构异质型DDBS 19 数据库分布式的管理 在技术上引起新问题 是由一个节点来统一管理各分数据库呢 还是各节点在必要时 都挺身而出代行管理的职能呢 这是集中与分散的问题 每个节点的数据只在本节点保留一份呢 还是存储备份于其他各节点以防数据的破坏丢失呢 这是可靠性与节约之间的矛盾 当数据库操作涉及多个分数据库上的数据时 应该把这些数据传送到哪个节点上去进行操作最佳呢 这是运筹帷幄的优化问题 等等 20 关键问题 分布式系统实现考虑的核心问题 尽量将网络的使用减到最小 即尽量缩减消息的数量和大小 具体涉及到 分布数据库设计分布查询处理分布目录管理分布并发控制分布死锁管理分布DDBMS的可靠性操作系统的支持 如何提供一致的操作系统支持 21 2分布式数据库系统的体系结构 2 1分布式数据存储 1 数据分配数据分配是指数据在计算机网络各场地上的分配策略 集中式 所有数据均安排在同一个场地上 分割式 所有数据只有一份 分布被安置在若干个场地 全复制式 数据在每个场地重复存储 混合式 数据库分成若干可相交的子集 每一子集安置在一个或多个场地上 但是每一场地未必保存全部数据 22 分布式数据存储 2 数据分片 分布式数据库中的数据可以被分割和复制在物理场地的各个物理数据库中 优点将关系分片 有利于按用户需求组织数据的分布 如产品 内销产品 出口产品 分片方式水平分片垂直分片导出分片混合分片 23 分布式数据存储 24 分布式数据存储 1 水平分片将关系r按行分为若干子集r1 r2 rn 每个子集ri称为一个水平片段 一个水平片段可以看成是关系上的一个选择 ri P i r 如M S sex M S 关系的重构可以通过并运算来实现 r r1 r2 rn 分布式数据存储 2 垂直分片将关系r按列分为若干属性子集r1 r2 rn 每个子集ri称为一个垂直片段 一个垂直片段可以看成是关系上的一个投影 ri Ri r 其中Ri是r的一个属性子集 如P S SNO SNAME S 关系的重构可以通过连接运算来实现 r r1r2 rn要求所有垂直分片的片段都包括关系的键 26 分布式数据存储 3 混合分片关系按某种方式分片后 得到的片段再按另一种方式继续分片 如SC S C G DNO 按学生系别分片 再对每个片段按成绩 及格 不及格 分片 27 分布式数据存储 定义各种分片时必须遵守下面三个条件 1 完备性条件 必须把全局关系的所有数据映射到各个片段中 绝不允许发生属于全局关系的某个数据不属于任何一个片段 2 重构条件 划分所采用的方法必须确保能够由各个分段重建全局关系 3 不相交条件 要求一个全局关系被划分后得到的各个数据片段互相不重叠 目的是为了在数据分片时容易控制数据的复制 28 2 2分布式数据库系统的体系结构 全局外模式全局应用的用户视图 全局概念模式定义D DBS中数据的整体逻辑结构 数据如同没有分布一样 分片模式每一个关系可以分为若干互不相交的部分 每一部分称为一个片段 分配 分布 模式定义片段的存放地点 用户视图 用户视图 全局视图 分片视图 分配视图 局部概念视图 局部概念视图 局部内视图 局部内视图 局部DB 局部DB 分布式 集中式 分片视图 分片视图 分配视图 分配视图 局部概念视图 局部内视图 局部DB 举例 逻辑片段 物理映像 一个全局关系的片段所对应的存储片段组成两个物理映像可以相同 31 2 3分布透明性 分布 网络 透明性分片透明性 全局视图和分片视图之间 用户或应用程序只对全局关系进行操作而不必考虑关系的分片 如果分片模式改变了 通过调整全局模式与分片模式之间的映象关系来保持全局模式不变 位置透明性 分片视图和分配视图之间 用户或应用程序不必了解片段的存储位置 局部数据模型透明性 分配视图和局部概念视图之间 用户或应用程序不必了解局部场地上使用的是哪种数据模型 32 33 2 4分布式数据库管理系统的功能及组成 1 DDBMS的主要功能 用户能够对网络上任意场地数据库的数据进行远程存取 执行全局应用 支持透明存取 提供一定级别的分布透明性 支持对分布式数据库的管理与控制 支持对分布式事务的并发控制和恢复 34 为一个典型DDBMS的结构图 包括四个部分 全局数据库管理系统GDBMS 全局数据字典GDD 局部数据库管理系统LDBMS 通信管理CM 35 1 全局数据库管理系统GDBMSGDBMS是DDBMS的核心 负责提供分布透明性 协调全局事务的执行及协调各场地上的LDBMS共同完成全局应用 GDBMS通常包括 1 用户接口层 提供一个用于检验用户身份的接口 用户的应用程序经用户接口处理 作为一个全局事务由DDBMS执行 2 语言处理层 负责查询语言的语法 词法分析 把查询语句转换成某种内部表示形式 如用语法树表示查询 36 3 分布式数据管理层 主要完成查询分解 优化和确定查询计划 4 分布式事务管理层 用于对分布式事务进行并发控制 并提供全局恢复功能 5 全局数据与局部数据之间的转换层 对异构系统 需将数据转换成系统可接受的形式 具体的转换有 数据模型的转换 数字代码格式 字长 精度 单位等的转换 操作命令 完整性规则 安全性规则的转换等 37 2 全局数据字典GDDGDD负责提供系统的各种描述 管理和控制信息 如为系统提供各级模式描述 网络描述 存取权限 事务优先级 完整性约束与相容性约束 数据的分割及其定义 副本数据及其所在场地 存取路径 死锁检测 预防及故障恢复 与数据库运行质量有关的统计信息等 数据字典又称数据目录 是面向系统的 它由系统定义 在初始化时由系统自动生成并为系统所用 由于数据是分布的 因此数据字典也存在一个分布策略及管理问题 数据字典中的数据与冗余也需要进行优化 38 3 局部数据库管理系统LDBMSLDBMS用来建立和管理各场地上的局部数据库LDB 提供场地的自治能力 可执行局部应用和全局查询的子查询 4 通信管理CMCM遵循网络协议 实现各场地之间数据的可靠传送 完成系统的通信功能 39 分布式数据库管理系统的分类 1 按LDBMS类型分类 1 同构型DDBMS HomogeneousDDBMS 同构型 也称均质型 系统是指系统中每个场地的LDBMS类型都相同 即它们支持相同的数据模型 访问方法 优化策略 并发控制算法 以及相同的命令语言和查询语言等 2 异构型DDBMS HeterogeneousDDBMS 异构型 也称异质型 系统是指系统中每个场地可以有不同类型的LDBMS 它们可以是不同的数据模型 也可以是同一数据模型但由不同厂商提供的产品 40 2 按全局控制方式分类 1 全局集中控制的DDBMS这种方式的GDBMS和GDD集中在一个中心场地上 由该场地完成全局事务的协调和局部数据库转换等一切控制问题 2 全局控制分散的DDBMSGDBMS和GDD分散存放在各个场地上 即每个场地都有控制信息的一个副本 都能完成全局事务的协调和局部数据库转换的控制问题 41 3 全局控制部分分散的DDBMS这种方式根据应用的需要将GDBMS和GDD分散在某些场地上 即只在部分场地包含控制信息的副本 性能介于以上两种类型之间 42 分布式数据库管理系统的分类 3 按数据在逻辑上集中 分布分类 1 物理上分布 逻辑上集中的DDBMS这种方式数据库在逻辑上是集中的 用户感觉不到数据的分布 看到的似乎是一个数据模式为全局数据模式的集中式数据库 2 物理上分布 逻辑上分布的DDBMS这种分布式数据库系统又称联邦分布式数据库系统 FederatedDistributedDatabaseSystems 系统中每个场地所看到的数据模式是不同的 好像有多个逻辑数据库存在 43 分布式数据库管理系统的分类 4 按功能分类 1 综合型体系结构设计一个全新的DDBMS时 设计人员可综合权衡用户需求 采用自顶向下的设计方法 设计一个完整的DDBMS 然后把系统的功能按一定的策略分散配置在一个分布式环境中 这种结构称为DDBMS 2 联合型体系结构在原有DBMS基础上建立分布式DBMS 按照使用LDBMS类型的不同又分为同构型和异构型DDBMS 44 分布式数据库管理系统的分类 5 按层次分类法分类 1 单层结构DDBMS指一个分布式数据库中 在同一全局DBMS控制管理下 其数据物理分布在网络的多个场地上 每个场地不存在独立的DBMS 但可以包含全局DBMS的子部件 2 多层结构DDBMS如果一个分布式数据库是来自一些相互连接的场地上的数据库中数据的逻辑集合 则称该系统为多层结构的DDBMS 在这种系统中 每个场地都有一个独立的DBMS 而且每个场地可以是另一个单层或多层结构的DDBMS 45 2 5分布式数据库系统中存在的问题 1 不同场地的通信速度 与局部DBS的存储部件的存取速度相比 是非常慢的 2 通信系统有较高的存取延迟时间 3 在CPU上处理通信的代价很高 4 不同通信系统有不同意义的字符 数据转换速度也不一样 可以相差1000倍 存取延迟时间可能相差106倍 46 3分布式查询处理 分布式数据库系统中由于数据分布在各个场地 因此 查询的处理比集中式数据库复杂 3 1查询处理的传输代价 Site 1 Site 2 EMPLOYEE104个记录每个记录100字节 DEPARTMENT100个记录每个记录100字节 检索每个职工的姓名 地址及工作部门名selectENAME ADDRESS DNAMEfromEMPLOYEE DEPARTMENTwhereDNO DNUMBER 网络传输速度104字节 秒 48 分布式查询处理 把关系EMPLOYEE和DEPARTMENT分布从场地1和场地2传到场地3 然后在场地3站进行查询传送时间T 104 100 100 35 104 100s 3 2 传送时间T 总传输延迟 总数据量 传输速度 1 49 分布式查询处理 把关系EMPLOYEE传送到场地2 在场地2作联接 再把操作结构从场地2传到场地3 传送时间T 104 100 400000 104 140s 1 3 2 50 分布式查询处理 3 把关系DEPARTMENT传送到场地1 在场地1作联接 再把操作结构从场地1传到场地3 传送时间T 3500 400000 104 40s 51 分布式查询处理 2 在场地3有一个查询 检索每个部门的名字和其经理的姓名 地址 selectDNAME ENAME ADDRESSfromEMPLOYEE DEPARTMENTwhereMGRENO ENO 52 分布式查询处理 把关系EMPLOYEE和DEPARTMENT分布从场地1和场地2传到场地3 然后在场地3站进行查询传送时间T 104 100 3500 104 100s 3 2 传送时间T 总传输延迟 总数据量 传输速度 1 53 分布式查询处理 把关系EMPLOYEE传送到场地2 在场地2作联接 再把操作结构从场地2传到场地3 传送时间T 104 100 4000 104 100s 1 3 2 54 分布式查询处理 3 把关系DEPARTMENT传送到场地1 在场地1作联接 再把操作结构从场地1传到场地3 传送时间T 3500 4000 104 0 75s 55 分布式查询处理 3 如果在场地2提出上述两个查询Q1和Q2 可以有两种方法 4 把关系EMPLOYEE传送到场地2 在场地2作联接 此时Q1和Q2的传输量都是1000000 时间都是100秒 1 2 Q1 Q2 56 分布式查询处理 5 把关系DEPARTMENT传送到场地1 在场地1作联接 再把结果从场地1传到场地2 此时Q1的传输量为 3500 400000 403500 时间是40秒 Q2的传输量都是3500 4000 7500 时间是0 75秒 57 3 2基于半联接的查询优化策略 数据在网络中传输 如果都以整个关系传输 显然是一种冗余 不参与联接的值或无用的值不必在网络中来回传输 1 基于半联接的查询实例 如果在场地2提出上述两个查询Q1和Q2 可以有两种方法 把关系DEPARTMENT传送到场地1 在场地1作联接 再把结果从场地1传到场地2 可以改进 1 在场地2 用投影求得关系DEPARTMENT中参与联接操作的属性值 把投影结果传输到场地1 Q1 数据传输量是400字节 DEPARTMENT在DNUMBER上的投影 Q2 数据传输量是900字节 DEPARTMENT在MGRENO上的投影 58 3 2基于半联接的查询优化策略 2 在场地1 执行联接操作 并用投影求出所需的属性值 把结果送到场地2 Q1 数据传输量是340000字节 Q2 数据传输量是3900字节 3 在场地2 执行联接操作 把结果给用户 Q1 总的数据传输量是34040

温馨提示

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

评论

0/150

提交评论