分布式数据库
.1 基本概念
分布式数据库是分布式数据库系统中各场地上数据库的逻辑集合
.2 分布式数据库目标与数据分布策略
目标
本地自治
非集中管理
高可用性
位置独立性
数据分片独立性
数据复制独立性
分布式查询处理
分布式事务管理
硬件独立性
操作系统独立性
网络独立性
数据库管理系统独立性
数据分布策略
基本概念
一般先做数据分片,在做数据分配,数据分片按照一定规则将某一个全局关系划分为片段,数据分配则在此基础上将这些片段分配存储在各个场地上
数据分片
水平分片
垂直分片
导出分片
混合分片
数据分配
集中式
分割式
全复制式
混合式
.3 分布式数据库系统的体系结构
参考模型结构
全局外模式
全局概念模式
分片模式
分配模式
局部概念模式
局部内模式
分布透明性
分片透明性(最高级别)
位置透明性
局部数据模型透明性
分布式数据库管理系统
全局数据库管理系统GDBMS(核心)
全局数据字典GDD
局部数据库管理系统LDBMS
通信管理CM
.4 分布式数据库的相关技术
分布式查询
查询代价
集中式数据库
主要是CPU 代价和IO代价
分布式数据库
由于数据分布在多个不同的场地上,使得查询处理中还要考虑站点间传输数据的通信代价
分布式查询考虑策略
操作执行的顺序
操作的执行算法
不同场地间数据流动的顺序
注意:在分布式数据库的查询中,导致数据传输量大的主要原因是数据间的连接操作和并操作
分布式事务管理
恢复控制
两阶段提交协议
三阶段提交协议
并发控制
封锁协议
2 并行数据库
2.1 并行数据库系统结构
共享内存结构
共享磁盘结构
无共享结构
层次结构
2.2 数据划分与并行算法
数据划分
基本概念
是根据关系的某一个属性的值来划分整个关系,这个属性称为划分属性
一维数据划分
轮转法
散列划分
范围划分
多维数据划分
CMD多维划分法
BERD多维划分法
MAGIC多维划分法
并行算法
并行连接
并行排序
3 云计算数据库架构
3.1 基本概念
云计算是一种商业计算模型,它通过集中所有的计算资源,采用硬件虚拟化技术,为云计算使用者提供强大的计算力、存储和带宽资源
云计算包含互联网上的应用服务及在数据中心提供这些服务的软硬件设施,通常包括软件即服务、平台即服务、基础设施即服务
云计算的目标是通过网络提供越来越多的服务,实现一切即服务
3.2 体系结构
BIgTable数据模型
是Google的云数据库,是一个分布式的结构化数据存储系统,它用于对海量数据进行处理、存储和查询
特点
表中的行关键字可以是任意的字符串
列族是由列关键字组成的集合,是访问控制的基本单位
时间戳记录了Bigtable中每一个数据项包含的不同版本的数据的时间标识
BigTable的体系结构
就像一个巨大的Excel,包含了多个Table,每个Table是一个多维的稀疏表
使用SSTable作为底层存储数据的格式
使用了Chubby服务实现锁服务
BigTable服务器分为一个Master服务器和多个Tablet服务器
3.3 与传统数据库比较
缺点
数据安全问题
对云的管理问题
对因特网的依赖
4 XML数据库
基本概念
是一种支持对XML格式文档进行存储和查询等操作的数据库管理系统
三种类型
XML Enabled Database即能处理XML的数据库
Native XML Database 纯XML数据库
Hybrid XML Database混合XML数据库
与传统数据库相比的优势
XML数据库能够对半结构化数据进行有效的存取和管理
提供对标签和路径的操作
当数据本身具有层次特征时,由于XML数据格式能够清晰的表达数据的层次特征,因此XML数据库便于对层次化的数据进行操作