【问题标题】:How does Oracle database decides if a table is small?Oracle 数据库如何判断一个表是否很小?
【发布时间】:2021-07-25 14:34:49
【问题描述】:

当我阅读 Oracle 中的查询性能时,我多次看到“小表”一词。例如,有人说,Oracle 仅在表较小时才使用排序合并连接。 那么,如果表很小,数据库服务器是否使用任何公式,或者是否有任意数量的行等?

【问题讨论】:

    标签: oracle query-optimization database-administration sqlperformance oracle19c


    【解决方案1】:

    这取决于上下文。在 sort-merge join 方面,与其说是根据一些预定义的公式表很小,不如说是优化器做出了基于成本的决策。事实证明,与其他计划相比,一张小桌子更有可能以更低的成本结束。 还有“小桌门槛”的概念。这是表(或段,严格来说)的大小,其中一部分缓冲区高速缓存用于读取表。这被计算为缓冲区高速缓存大小的 2%。如果表符合小表阈值,您可能会看到使用小表复制而不是广播的执行计划。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-05
      • 1970-01-01
      • 1970-01-01
      • 2011-01-01
      • 2023-03-12
      • 1970-01-01
      相关资源
      最近更新 更多