数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 1页第 14章 分布式数据库技术本章概述本章的学习目标主要内容数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 2页本章概述
有人说过,在推动技术的发展过程中,客观实践需求的推动作用远远大于一百所大学起到的推动作用。在计算机技术的发展中,这句话再次得到了验证。
当前,许多组织已经不满足集中式数据库的刚性方式和数据库的事务处理,对于更加柔性的、可用性强的分布式数据库技术和可以对决策提供支持的数据分析技术的需求越来越强烈。
因此,随着计算技术、网络技术的深入发展,数据库技术开始向两个方向法展,即广度计算和深度计算。实际上,广度计算就是分布式计算,深度计算就是数据分析。分布式计算依赖于分布式数据库技术,而数据分析依赖于数据仓库技术。
下面研究分布式数据库技术,下一章研究数据仓库技术。
本章将要全面介绍分布式数据库技术的基本概念、优点、缺点以及分布式数据存储技术、分布式数据查询技术的实现,并且研究典型分布式数据库产品的实际应用。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 3页本章的学习目标
理解分布式数据库的基本概念
理解分布式数据库的优点和缺点
掌握分布式数据库存储技术
掌握分布式数据库查询技术
了解 Microsoft SQL Server的分布式计算特点
掌握 Microsoft SQL Server的数据复制技术数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 4页主要内容
14.1 概述
14.2 分布式数据库的概念和特点
14.3 分布式数据存储技术
14.4 分布式数据查询技术
14.5 Microsoft SQL Server的分布式计算特点
14.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 5页
14.1 概述
分布式数据库是与集中式数据库相对的概念,其主要差别在于处理的数据处于不同的地理位置。集中式数据库强调的是所有的数据存储在一个唯一的地方,而分布式数据库强调的是所有的数据作为一个整体存储在多个地理位置不同的地方。在银行业务、航空售票等领域,分布式数据库有广泛的应用。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 6页分布式数据库解决方案示意图数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 7页主要内容
14.1 概述
14.2 分布式数据库的概念和特点
14.3 分布式数据存储技术
14.4 分布式数据查询技术
14.5 Microsoft SQL Server的分布式计算特点
14.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 8页
14.2 分布式数据库的概念和特点
本节首先详细介绍分布式数据库的基本概念,然后总结分布式数据库的特点、优点和缺点。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 9页分布式数据库的概念
分布式计算的概念远远大于分布式数据库的概念。
分布式计算则与集中式计算不同,前者强调的是数据库管理系统安装在多个所处地理位置不同的服务器上、所有的用户数据也随之存储在不同的服务器中、应用程序也可能存储在不同的服务器上。
在分布式计算方式中,如果数据库管理系统安装在多个所处地理位置不同的服务器上,用户的数据也是分布在不同的服务器中。但是,从逻辑上来讲,这些用户的数据是一个整体,构成一个逻辑数据库。本地服务器的用户不仅可以访问本地服务器上数据库中的数据,也可以访问异地服务器上数据库中的数据。这时的数据库称为分布式数据库。
构成分布式数据库的所有硬件系统和软件系统统称为分布式数据库系统,有时也把分布式数据库系统简称为分布式系统或分布式数据库。
顺利完成分布式数据库操作的各种技术,称为分布式数据库技术。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 10页分布式数据库的特点
物理分布性
逻辑整体性
场地自治性
数据共享性
系统可用性数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 11页主要内容
14.1 概述
14.2 分布式数据库的概念和特点
14.3 分布式数据存储技术
14.4 分布式数据查询技术
14.5 Microsoft SQL Server的分布式计算特点
14.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 12页
14.3 分布式数据存储技术
在分布式数据库中,数据的存储可以通过三种方式实现,即复制存储方式、分片存储方式、混合存储方式。
下面,详细研究各种存储方式。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 13页数据复制
在集中式数据库中,数据库中的一个关系只存储一次。但是,在分布式数据库中,可以通过把数据库中的一个关系存储多次而实现分布式存储。
假设需要把关系 books存储到数据库中。如果系统维护关系 books的若干个完全相同的副本,且每一个副本都存储在不同的场地上,那么这种存储方式称为数据复制( Data Replication)。如果分布式系统中所有的场地都存储了 books的一个副本,称这种数据复制方式为全复制。数据复制存储方式示意图如图 14-2所示。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 14页数据分片
如果把关系 books划分成多个片断,每个片断都存储在不同场地上,且所有的片断包含的信息足够重构原始关系
books,那么这种数据存储方式称为数据分片( Data
Fragmentation)。数据分片可以通过的关系代数的基本操作实现,重构也可以通过并运算或连接运算实现。
有三种方式的数据分片,即:
水平分片
垂直分片
混合分片
下面通过研究一个实例来说明这种运算。假设关系模式
books={ISBN,title,pageNumber,bookType,price,
pressName},其关系实例如图 14-3所示。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 15页数据混合存储
如果在数据存储过程中,既包含了水平分片存储方式,又包括了垂直分片存储方式,
那么把这种存储方式称为数据混合存储方式。
图 14-6示意了数据混合存储方式存储过程。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 16页主要内容
14.1 概述
14.2 分布式数据库的概念和特点
14.3 分布式数据存储技术
14.4 分布式数据查询技术
14.5 Microsoft SQL Server的分布式计算特点
14.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 17页
14.4 分布式数据查询技术
与集中式数据查询相比,分布式数据查询由于数据分布在多个不同的场地而非常复杂。分布式数据查询技术就是研究在分布式环境中,如何以最小的代价执行所需要的查询。
下面,通过研究一个示例,探讨基于半连接的优化策略和基于连接的优化策略。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 18页分布式数据查询示例
在集中式数据库的数据查询中,查询代价主要是本地处理代价,具体内容包括 CPU代价和 I/O代价。
但是,在分布式数据库的数据查询中,查询代价除了本地处理代价之外,还包括网络传输代价。
下面主要研究和比较网络传输代价。
图 14-8是一个分布式环境,该分布式环境包括了三个场地,即场地 A、场地 B和场地 C。场地 A上的关系 books={ISBN,title,pageNumber,
bookType,price,pressName},场地 B上关系
writeBook ={ISBN,name},场地 C上的关系
press={pressName,address,postcode}。有关这些关系实例的数据如图所示。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 19页基于半连接的优化策略
在执行分布式查询时,只传输参与连接运算的数据,不传输不参与连接运算的数据,
从而降低传输代价的优化策略称为基于半连接的优化策略。
假设,关系 books和 writeBook分别存储在场地 A和场地 B,希望求
books?writeBook的值,并且在场地 A得到结果。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 20页基于连接的优化策略
前面讲过,对于网络传输代价要求比较严格时,可以使用半连接优化策略。但是,
对于网络传输代价要求比较低,对本地处理代价要求比较高时,可以考虑使用基于连接的优化策略。
基于连接的优化策略的思路是把某个场地的整个关系的元组数据传输到另外的场地执行连接操作。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 21页主要内容
14.1 概述
14.2 分布式数据库的概念和特点
14.3 分布式数据存储技术
14.4 分布式数据查询技术
14.5 Microsoft SQL Server的分布式计算特点
14.6 本章小结数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 22页
14.5 Microsoft SQL Server的分布式计算特点
在 Microsoft SQL Server产品中,提供了许多分布式计算的特点。例如,提供了
Microsoft Distributed Transaction
Coordinator服务,该服务可以确保对多个服务器的操作完全成功或完全失败;提供了链接服务器功能,可以完成分布式查询操作;提供了数据复制功能,可以完成数据复制的操作。
数据库系统原理与应用教程 (第二版 ) 第 14章 分布式数据库技术 第 23页主要内容
14.1 概述
14.2 分布式数据库的概念和特点
14.3 分布式数据存储技术
14.4 分布式数据查询技术
14.5 Microsoft SQL Server的分布式计算特点
14.6 本章小结