查询成本估算2024 年 8 月 28 日 | 阅读 2 分钟 在前一节中,我们了解了查询处理步骤和评估计划。虽然系统可以为查询创建多个计划,但选择的方法应该是所有方法中最好的。这可以通过根据预估成本比较每个可能的计划来实现。要计算任何计划的净预估成本,应确定计划中每个操作的成本,并将它们组合起来以获得查询评估计划的净预估成本。 查询评估计划的成本估算以各种资源来计算,包括:
为了估算查询评估计划的成本,我们使用从磁盘传输的块数以及磁盘寻道次数。假设磁盘的平均块访问时间为 ts 秒,传输 x 个数据块需要 tT 秒。块访问时间是磁盘寻道时间和旋转延迟之和。如果执行 S 次寻道,则所需时间为 b*tT + S*tS 秒。如果 tT=0.1 毫秒,tS =4 毫秒,块大小为 4 KB,传输速率为每秒 40 MB。通过这些,我们可以轻松计算给定查询评估计划的预估成本。 通常,在估算成本时,我们会考虑可能发生的 worst case。用户假设最初数据仅从磁盘读取。但信息可能已存在于主内存中。然而,用户通常会忽略这一点,因此实际执行成本会低于估算值。 响应时间,即执行计划所需的时间,可用于估算查询评估计划的成本。但由于以下原因,在不实际执行查询评估计划的情况下计算响应时间会变得困难:
下一主题DBMS 中的查询处理 |
我们请求您订阅我们的新闻通讯以获取最新更新。