详述Oracle 11g中的Reference Partition(3)

数据分布正确。说明:子表分区分布的依据完全在于主表记录对应的分区编号。相同主表分区记录对应的子表记录,一定在相同的子表分区上。不同主表分区记录对应的子表记录,不可能在相同的子表分区上。

为便于实验,多插入一些数据:

SQL> insert into t_detail select seq_t_detail.nextval, object_id, object_name, object_type from dba_objects where object_name not in 

('SEQ_T_DETAIL');

120361 rows inserted

SQL> commit;

Commit complete

SQL> exec dbms_stats.gather_table_stats(user,'T_DETAIL',cascade => true);

PL/SQL procedure successfully completed

SQL> select table_name, partition_name, high_value,num_rows from dba_tab_partitions where table_owner='SYS' and table_name in ('T_DETAIL');

TABLE_NAME    PARTITION_NAME      HIGH_VALUE        NUM_ROWS

------------------------------ -------------------- --------------- ----------

T_DETAIL      P0                                        67992

T_DETAIL      P1                                        75634

T_DETAIL      P3                                        97096

那么,Reference Partition在实际运维场景下的意义在于何处呢?

经过笔者之前的讨论,Partition技术的出发点无非在于性能和管理两个角度。性能上最典型的代表是分区裁剪、本地索引;管理最典型代表就是分区摘除、Swip分区归档。最早期Partition是针对性能方面因素比较多,近年来随着硬件性能的提升,管理方面带来的优势,越来越受到重视。

下篇中,我们将从性能和管理两个角度,讨论Reference Partition的作用。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/5eaca089b099d6c8036cbc0feb55cf29.html