第九讲分布式地图数据库王泽根2003年6月第六讲分布式地图数据库分布式数据库系统概述分布式数据存储分布式数据库系统的模式结构DDBMS的功能及组成分布式查询处理分布式事务管理一、分布式数据库系统概述网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊一个分布式数据库系统支持全局应用也支持局部应用一、分布式数据库系统概述只支持全局应用DB1后台服务器1DB2后台服务器2DB3后台服务器3网络前台客户机客户客户客户一个多处理机系统不支持局部应用一、分布式数据库系统——定义网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统物理上分散、逻辑上集中支持局部应用,也参与全局应用一、分布式数据库系统——特点网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统(1)物理分布性(2)逻辑整体性(3)场地自治性(4)场地之间的协作性一、分布式数据库系统——特点网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统(5)数据独立性(6)集中与自治相结合的控制结构(7)适当数据冗余(8)全局一致性、可串行性和可恢复性一、分布式数据库系统——优点网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统(1)灵活的体系结构(2)适应分布式的管理和控制机构(3)经济性能优越(4)局部应用的响应速度快(5)系统的可靠性高、可用性好(6)可扩展性好,易于集成现有系统一、分布式数据库系统——缺点网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统(1)系统开销较大,主要花在通信部分(2)复杂的存取结构(如辅助索引、文件的链接技术)(3)数据的安全性和保密性较难处理一、分布式数据库系统——分类网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统(1)同构同质型DDBS(2)同构异质型DDBS(3)异构型DDBS一、分布式数据库系统——分类网络服务器2DB2客户…┉服务器3DB3客户…┉DB1服务器1客户┊分布式数据库系统(1)适应部门分布的组织结构,降低费用(2)提高系统的可靠性和可用性(3)充分利用现有数据库资源(4)逐步扩展处理能力和系统规模二、分布式数据存储——数据分片水平分片垂直分片混合分片12…n12…n1234-14-24-34-41234-14-24-34-4二、分布式数据存储——数据分配(1)集中式(2)分割式(3)全复制式(4)混合式三、分布式数据库系统模式结构模式存贮模式子模式存贮模式模式/存贮映射模式子模式/模式映射子模式A子模式B子模式C用户集A用户集B用户集C终端用户应用软件数据库管理系统操作系统三、分布式数据库系统的模式结构分布式数据库系统的模式结构映象4映象3全局外模式全局外模式全局外模式全局概念模式分片模式分配模式局部概念模式局部概念模式局部概念模式局部内模式局部内模式局部内模式全局DBMS局部DBMS局部数据库局部数据库局部数据库分布式数据库增加的集中式数据库原有的映象1映象2三、分布式数据库系统——六层模式结构映象4映象3全局外模式全局外模式全局外模式全局概念模式分片模式分配模式局部概念模式局部概念模式局部概念模式局部内模式局部内模式局部内模式全局DBMS局部DBMS局部数据库局部数据库局部数据库分布式数据库增加的集中式数据库原有的映象1映象2全局外模式全局外模式全局外模式全局概念模式分片模式分配模式局部概念模式局部概念模式局部概念模式局部内模式局部内模式局部内模式四、DDBMS的功能及组成全局用户GDDGDB局部用户LDDLDB计算机GDBMSLDBMS计算机GDBMSLDBMS局部用户LDDLDB全局用户GDDGDB计算机GDBMSLDBMS全局用户GDDGDB局部用户LDDLDB网络DDBS的组成框架四、DDBMS的功能及组成数据定位错误对网络的监视信息分布策略数据局部处理命令用户查询查询分析优化算法调度处理模块计算机LDBMSDB查询处理模块网络完整性处理模块可靠性处理模块系统DB图9-6DDBMS的一般功能结构需要的数据实际的数据五、分布式查询处理查询分类:局部查询全局查询远程查询在本地(机)进行在远程进行涉及多个结点的数据一个结点:查询优化采用的技术就是集中式数据库的查询优化技术(1)查询分解(2)选择操作执行的次序(3)选择执行操作的方法五、分布式查询处理——优化目标查询开销:集中式数据库分布式数据库I/O代价+CPU代价I/O代价+CPU代价+通讯代价TC(X)=C0+X*C1通讯代价查询执行时其通信代价最省首要目标五、分布式查询处理——连接查询优化半连接:结点s表S结点r表R1、投影∏B(S)2、发送3、半连接R′4、发送R′5、连接五、分布式查询处理——连接查询优化半连接代价CSJ=2C0+C1(Size(B)+Val(B[S])+Size(R)+Card(R′))直接连接CJN=C0+C1*Size(R)*Card(R)代价结点s表S结点r表R发送--表S六、分布式事务管理——事务恢复故障类型:(1)集中式数据库故障;(2)通信网络中通信信息的丢失、长时间延迟、网络线路中断等事故。场地A场地B场地C局部事务管理器局部事务管理器局部事务管理器全局事务管理器全局事务协调管理局部子事务六、分布式事务管理——事务恢复对所有场地的子事务采用同样的策略:要么都提交,要么都滚回。全局事务协调两段提交协议场地C场地A场地B参与者参与者参与者协调者场地X六、分布式事务管理——并发控制基于时标(TimeStamp)乐观方法封锁方法程序A检索更新保护性排他性检索更新检索更新程序B检索YYYYNN更新YYNNNN保护性检索YNYNNN保护性更新YNNNNN排他性检索NNNNNN排他性更新NNNNNN六、分布式事务管理——并发控制多副本封锁(1)对写操作,要申请对所有副本的X锁。对于读操作,只要申请对某个副本的S锁。(2)无论是写操作还是读操作都要对多数(大于半数)副本申请X锁或S锁。(3)规定某个场地上的副本为主副本,所有的读写操作均申请对主副本的封锁。