数据库物理设计与分布式架构全解析
1. 数据库查询成本评估与优化
在数据库操作中,评估查询成本是非常必要的。查询成本是由构成查询计划的所有操作的累积成本之和得出的。为了找到最优解决方案,通常会采用一种名为“分支限界”的运筹学技术,舍弃那些部分成本高于全局策略成本的子树方案,从而精确或近似地消除这些子树。
中间结果常常会利用操作的流水线特性存储在缓冲区中,并在生成后立即丢弃。流水线操作是指对提取的每个元组遍历整个操作树,而不是对所有元组完全执行每个操作。不过,有时需要将中间操作的结果重写到二级存储器中,此时重写中间结果的成本就会成为查询策略成本的一部分。
查询优化器通常满足于获得“良好”的解决方案,即成本接近最优解的方案。特别是采用“编译即运行”的方法来寻找“良好”的解决方案。因为如果用耗时较长的方法去寻找最优解,而在较短时间内就能找到“良好”解,并且执行该策略的总时间(包括优化时间)比执行最优解的总时间还要短,那么寻找最优解就没有意义了。
2. 数据库物理设计概述
数据库设计的最后阶段是物理设计,它会生成数据库的物理模式,包括关系的定义、使用的物理访问结构以及相关参数。物理设计的输入是数据库的逻辑模式和对应用负载的预测,并且依赖于所选择的数据库管理系统(DBMS)的特性。
物理数据库设计的活动可能非常复杂,除了选择物理结构外,还需要定义许多参数:
- 设置物理文件的初始尺寸以及动态扩展的可能性。
- 为DBMS分配缓冲区空间。
- 选择在同一页面中分配来自多个数据集的数据(例如,来自两个不同表的相关元组)。
有些系统提供数十个参数,这些参数的值对应用程序的性能可能很重
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



