4

在 Oracle 的文档中,对于优化器中的估计器,有这样的架构: https ://docs.oracle.com/database/121/TGSQL/img/GUID-22630970-B584-41C9-B104-200CEA2F4707-default.gif

通常,据我所知,计划生成器会生成计划并将这些计划连续处理给估算器,以估算其成本。但是,在此模式中,在查询转换器之后,查询直接传递给估计器。但目前还没有任何计划。

我的问题是,当查询首先从查询转换器处理到估计器时会发生什么?因为还没有计划。那么它是如何计算成本的呢?还是在第一时间没有任何成本直接传递给计划生成器?

提前致谢。

4

1 回答 1

1

估计器参与查询优化器过程。它的主要任务是测量提供计划生成器的计划。

估算器的最终目标是估算给定计划的总成本。如果统计数据可用(如果您注意到旁边图像中的统计数据),那么估计器会使用它们来计算度量。统计数据提高了测量的准确程度。

于 2018-12-19T11:07:26.053 回答