【问题标题】:Does Subpartition in Oracle hinder partition performanceOracle中的子分区是否会影响分区性能
【发布时间】:2016-11-30 10:29:06
【问题描述】:

我正在对分区进行研究,但在子分区主题上遇到了一些死胡同。

这是我在 oracle 手册 (https://docs.oracle.com/cd/B19306_01/server.102/b14231/partiti.htm) 中找到的内容:

“范围列表分区表的分区只是逻辑结构,因为它们的数据存储在其子分区的段中。列表子分区与列表分区具有相同的特征。您可以指定默认子分区,就像您为列表分区指定默认分区一样。”

所以,首先,我得出的结论是,由于子分区有自己的“段”,所以他们有自己的文件。我说的对吗?

其次,我想知道这是否会妨碍分区的有效性。这就是我的意思:

如果我们有一个分区,通常它位于单个表空间和文件上(如果我错了请纠正我,我什至不知道是否可以将它分布在多个表空间/文件上)。这意味着当我们专门在分区中搜索时,它只会查看一个文件。

那么,如果子分区是通过几个段(文件),甚至是几个表空间来实现的,是不是意味着我们查询分区(不是子分区)的时候(相对来说)会花费更多的时间?

最后,我没有时间,也没有可能测试这个理论,这就是我问的原因。我的项目快结束了(完全是我的错),我无法真正在公司的服务器上测试分区。

提前致谢!

【问题讨论】:

    标签: sql oracle plsql


    【解决方案1】:

    段和文件之间没有直接关系。段是从一个表空间中分配的空间,该表空间由一个或多个文件组成。访问的文件数量不是影响性能的重要因素。

    【讨论】:

    【解决方案2】:

    实际上术语SUBPARTITION 有点误导,因为它预计您有一个“PARTITION inside a PARTITION”。对于某些操作(例如DROP PARTITION),这是正确的,但对于其他操作,情况并非如此,例如如果表有 SUBPARTITIONS,则不能运行 ALTER INDEX ... REBUILD PARTITION

    认为PARTITION一个 属性确定,RANGELISTINTERVALHASH

    一个SUBPARTITION基本相同,但由RANGELISTINTERVALHASH两个属性决定。

    就性能或物理存储而言,分区和子分区没有区别。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-19
      • 1970-01-01
      • 1970-01-01
      • 2018-02-08
      • 2014-06-10
      • 1970-01-01
      相关资源
      最近更新 更多