第十三章 大规模数据库架构
第十三章 大规模数据库架构
数据分布策略
数据分片:
对某一个关系进行分片是将关系划分为不同的片断,这些片断中包含足够的信息可以使关系重构。
- 水平分片:从行的角度划分
- 垂直分片:从列的角度划分,分片后需要包含主码,以便通过连接方法恢复关系
- 导出分片:依据其他关系属性的条件划分
- 混合分片:上述三种的混合
数据分配:
- 集中式:所有数据片断都安排在一个场地上。
- 分割式:所有全局数据有且只有一份,它们被分割成若干片断,每个片断被分配在一个特定场地上。
- 全复制式:全局数据有多个副本,每个场地上都有一个完整的数据副本。
- 混合式:全局数据被分成若干个数据子集,每个子集被安排在一个或多个不同场地上,但是每个场地未必保存所有数据。
分布式数据库的体系结构
- 全局外模式:全局应用的用户视图
- 全局概念模式:描述全体数据的逻辑结构和特征
- 分片模式:描述每个数据片断以及全局关系到片断的映像
- 分配模式:描述各片断到物理存放场地的映像
- 局部概念模式:描述全局关系到场地上存储的物理片断的逻辑结构以及特征
- 局部内模式:描述局部概念模式涉及的数据在本场地的物理存储
分布透明性
- 分片透明性:数据分片是用户无需考虑的,完全透明的
- 位置透明性:数据分片的分配位置对用户是透明的
- 局部数据模型透明性:不需要了解各场地上数据库的数据模型
分布式数据库管理系统
分布式查询
在分布式数据库的查询中,导致数据量大的主要原因是数据间的连接操作和并操作。
优化策略:基于半连接的优化策略和基于连接的优化策略。
分布式事务管理
- 恢复控制:两阶段的提交协议。协调者询问参与者是否能够提交,参与者回答;协调者根据回答决定是否提交。
- 并发控制:*协议。
并行数据库系统结构
目的:提高数据库系统吞吐率和减少事务响应时间。
- 共享内存结构:所有的处理机制通过互联网共享一个公共的主存储器
- 共享磁盘结构:所有的处理机拥有独立的主存储器,通过互联网共享磁盘
- 无共享结构:每个处理及拥有独立的主存储器和磁盘,不共享任何资源
- 层次结构:前三种的结合,顶层无共享结构,底层共享磁盘结构和共享内存结构。
无共享结构通过最小化共享资源来降低资源竞争,因此具有很高的可扩展性,适合于OLTP应用
数据划分
- 一维数据划分
- 轮转法:按顺序轮流分配数据。负载均衡,但是查询效率低。
- 散列划分:使用散列函数划分。非常适合点查询。
- 范围划分:按属性的取值范围划分数据。适合范围查询,点查询。
- 多维数据划分