【问题标题】:Oracle explain plan cost interpretationOracle解释计划成本解释
【发布时间】:2012-11-12 21:06:13
【问题描述】:

我想知道 Oracle 中的解释计划成本是否始终确定特定查询是否比其他查询最有效(在性能、资源使用、磁盘访问等方面)? p>

我的问题是因为我有两张桌子。

  • 具有本地分区索引。
  • 另一个具有全局分区索引。

两者具有相同的结构和相同的数据。然后我有一个查询,成本明显不同。全局分区索引一的开销很小,而本地分区索引一的开销很大。但是当我在SQL Developer中运行查询时,全局分区索引的表的响应时间更长。

谢谢。

【问题讨论】:

    标签: oracle partitioning


    【解决方案1】:

    两个不同的 SQL 语句之间的成本不具有可比性。不能也不应该推断出更高的成本 = 更高的运行时间或 IO/CPU 使用率。

    成本只是 oracle 在计算特定 sql 语句的所有可能 sql 计划时应用的内部排名。 如您所见,一条低成本的 sql 比高成本的 sql 运行时间更长。成本数字受很多因素的影响,例如 sql 提示(first_rows 等)、表统计信息、系统级统计信息(负载统计信息或在 optimizer_index_cost_adj/optimizer_index_caching 上设置不同的数字等)。

    始终按 IO/CPU(即实际资源使用情况)调整 SQL。真的忽略“成本”。

    另见此处:http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:313416745628

    【讨论】:

      猜你喜欢
      • 2012-12-16
      • 2021-02-21
      • 2011-02-04
      • 1970-01-01
      • 1970-01-01
      • 2012-04-16
      • 2017-11-05
      • 2013-02-02
      • 2019-08-12
      相关资源
      最近更新 更多