Oracle的簇和簇表

來源:互聯網
上載者:User

Oracle的簇和簇表

簇由一組共用相同資料區塊的多個表組成,它將這些表的相關行一起儲存到相同資料區塊中,這樣可以減少查詢資料所需的磁碟讀取量。建立簇後,使用者可以在簇中建立表,這些表成為簇表。

例如,scott使用者中有一個員工資訊表emp、部門資訊表dept,這兩個表共用部門編號deptno列。當將emp和dept表組成簇後,在物理上Oracle將emp和dept表中有關每個部門的所有員工資訊和部門資訊行儲存到相同的資料區塊中。因為簇將不同表的相關行一起儲存到相同的資料區塊中,所以合理使用簇可以協助減少查詢資料所需的磁碟讀取量。而對於經常單獨使用的表不應該使用簇。

建立簇
建立簇的文法形式如下:

CREATE CLUSTER cluster_name(COLUMN date_type[,COLUMN date_type]...)
[PCTUSED 40 | INTEGER]
[PCTFREE 10 | INTEGER]
[SIZE INTEGER]
[INITRANS 1 | INTEGER]
[MAXTRANS 255 | INTEGER]
[TABLESPACE tablespace_name]
[STORAGE storage]1
例1:
以SYSDBA角色登入並賦予使用者相關許可權:

GRANT  ALTER ANY CLUSTER TO siege;1

然後建立簇:

CREATE CLUSTER cluster_student(sid NUMBER)
PCTUSED 40
PCTFREE 10
SIZE 1024
STORAGE (
        INITIAL 128k
        NEXT 128k
        MINEXTENTS 2
        MAXEXTENTS 20
)TABLESPACE learning;

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.