2016-11-30 66 views
0

我正在對分區進行研究,並且在子分區主題上遇到了一些問題。Oracle中的子分區會妨礙分區性能

以下是我在oracle手冊(https://docs.oracle.com/cd/B19306_01/server.102/b14231/partiti.htm)發現:

「的範圍列表分區表的分區的邏輯結構只是,因爲它們的數據存儲在它們的子分區的段。列表子分區與列表分區具有相同的特徵。您可以指定默認子分區,就像您爲列表分區指定默認分區一樣。「

因此,首先,我得出結論,因爲子分區具有自己的」分段「,所以它們有自己的文件。我對麼?其次,我想知道是否阻礙了分區的有效性。這裏是我的意思:

如果我們有一個分區,通常它是在一個表空間&文件(請糾正我,如果我錯了,我甚至不知道是否有可能傳播它幾個表空間/文件)。這意味着當我們專門在分區中搜索時,它只會查看一個文件。如果子分區是通過幾個段(文件)甚至在幾個表空間中實現的,那麼這是不是意味着當我們查詢分區(而不是子分區)時,需要更多時間(相對)?

最後,我沒有時間,也沒有可能測試這個理論,這就是爲什麼我問。我的項目結束了(完全是我的錯),我無法真正測試我公司服務器上的分區。

在此先感謝!

回答

3

段與文件之間沒有直接關係。段由表空間分配空間,該表空間由一個或多個文件組成。訪問的文件數量不是影響性能的重要因素。

+1

還有一些內容來自於文檔:https://docs.oracle.com/cd/E11882_01/server.112/e40540/physical.htm#CNCPT1389 –

1

其實術語SUBPARTITION有點誤導,因爲它預計你有一個「分區內的分區」。對於某些操作(例如DROP PARTITION),這是正確的,但對於其他操作,情況並非如此。如果表具有SUBPARTITIONS,則無法運行ALTER INDEX ... REBUILD PARTITION

考慮一個PARTITION一個屬性來確定,無論是RANGELISTINTERVALHASH

SUBPARTITION基本上是相同的,但通過RANGELISTINTERVALHASH 屬性來確定。

就性能或物理存儲而言,分區和子分區之間沒有區別。