oracle数据量大时候分区索引思路
有一个分区表,按list分区,只有一个本地唯一索引,没有外键和触发器 分析应该是维护索引导致的性能问题,有什么方法可以改善?
有人反映, 失效索引后重建: 插入612,627 行数据耗费30.7秒 不分区: 分区: 非索引 612,627 行已插入。 16.518秒 带索引 612,627 行已插入。 108.081秒 ---------------------------------------------------------------相关实验及语句 ---按日期进行分区 select table_name,partition_name from user_tab_partitions where table_name='ACT_HI_VARINSTSPAN'; create table ACT_HI_VARINSTSPAN ( id_ NVARCHAR2(64) not null,proc_inst_id_ NVARCHAR2(64),execution_id_ NVARCHAR2(64),task_id_ NVARCHAR2(64),name_ NVARCHAR2(255) not null,var_type_ NVARCHAR2(100),rev_ INTEGER,bytearray_id_ NVARCHAR2(64),double_ NUMBER(*,10),long_ NUMBER(19),text_ NVARCHAR2(2000),text2_ NVARCHAR2(2000),create_time_ TIMESTAMP(6),last_updated_time_ TIMESTAMP(6) ) partition by range(create_time_) interval (numtodsinterval(1,'day')) ( partition create_time_ values less than (to_date('2016-01-01','yyyy-mm-dd')) ); -- 查看分区表 SELECT * FROM USER_PART_TABLES; -- 查看表分区 select table_name,partition_name from user_tab_partitions where table_name='ACT_HI_VARINSTSPAN'; -- 为分区进行建立索引 CREATE INDEX ACT_HI_VARINSTSPAN_INDEXSPAN1 ON ACT_HI_VARINSTSPAN(ID_) LOCAL; -- 查看分区进行建立索引 select INDEX_NAME,PARTITION_NAME,HIGH_VALUE,STATUS from dba_ind_partitions where index_name='ACT_HI_VARINSTSPAN_INDEXSPAN1'; -- 查看分区进行建立索引 SELECT * FROM USER_PART_INDEXES --重建分区索引 alter index ACT_HI_VARINSTSPAN_INDEXSPAN1 rebuild partition SYS_P718; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |