1、第 11章 分布式数据库与分布数据处理n 什么是分布式数据库?n SQL Server的分布数据管理方法北京信息科技大学什么是分布式数据库?v 分布式数据库是一个物理上分布于计算机网络的不同地点、而逻辑上又属于同一系统的数据集合。网络上每个地点的数据库都有自治能力,能够完成局部应用;同时每个地点的数据库又属于整个系统,通过网络也可以完成全局应用。2北京信息科技大学分布式应用的例子n 假设某大型企业的总部设在上海,在北京、广州、重庆等地设有分公司。n 以采购业务为例,一般采购业务分公司都可以自主独立完成,而关键部件的重要采购则需要得到总公司的批准。n 假设 重庆分公司需要采购一批货物,本地完成申
2、请、审批后,发现这批货物属于关键部件的重要采购,需要提交上海总公司审批 。n 而上海总公司审核时,又需要了解各分公司的库存,如果 各 分公司库存不够,就同意采购,否则直接由其他分公司调配给重庆分公司。 3北京信息科技大学基本概念n 分布式数据库把整个企业的所有数据管理纳入一个统一的数据库进行管理,但是很多数据物理地分布存储在各分公司的数据库中。n 分布式数据库就是要解决如何实现数据的分布存储和数据的高效利用。4总公司 分公司 1分公司 2局部自治整体统一北京信息科技大学5n 数据的物理分布性n 数据的逻辑整体性n 数据的分布透明性n 场地自治和协调工作n 数据冗余分布式数据库的基本特点分散式数
3、据库和分布式数据库?北京信息科技大学分布式数据库的数据分布方式n 集中式集中式是将所有数据安排在一台服务器上。n 分割式分割式是将全部数据分割成若干部分,分别存放在若干场地的计算机上,或者说是将一个整体数据库分成若干子集,每个子集放在一个数据库服务器上。n 复制式复制式是将一个数据库复制多个副本,在每个数据库服务器上都有一个完整的数据库副本。n 混合式即分割式与复制式的混合。6北京信息科技大学7分布式数据库的数据分布方式n 集中式n 分割式n 复制式n 混合式北京信息科技大学数据分片n 水平分片通过关系代数的选择操作,按一定的条件将全局关系划分成若干个子集,每个子集可以看作是一个数据分片。n
4、垂直分片通过关系代数的投影操作将关系按属性划分成若干个子集,同样,每个子集也可以看作是一个数据分片。n 混合型分片先按水平分片、再按垂直分片,或先按垂直分片、再按水平分片,依此种方法可以将一个全局关系划分成若干子集,或从一个全局关系划分出若干子集。 8北京信息科技大学11.2 SQL Server的分布数据管理概述n 复制技术n 出版、订阅和发行n 紧凑一致和松散一致n 两阶段提交9北京信息科技大学SQL Server提供的分布数据管理策略复制式分布策略集中式分割式复制式混合式n 存储代价的降低和网速的不断提高,人们想以最快的速度得到任何一地的数据,用 复制式分布策略来支持分布数据管理是目前最普遍的方法。