签到成功

知道了

CNDBA社区CNDBA社区

Oracle索引比表大

2021-10-03 09:15 1154 0 原创 oracle
作者: hbhe0316

有一些时候发现某些表的索引大小会超出表的大小,而且索引字段比表字段少很多,测试如下。http://www.cndba.cn/hbhe0316/article/4854

http://www.cndba.cn/hbhe0316/article/4854
http://www.cndba.cn/hbhe0316/article/4854

SQL> create table t1(id ,name,owner,type) as select object_id , object_name,owner,object_type from dba_objects;

Table created.

SQL> create index idx_t1 on t1(id , name);

Index created.

SQL> begin 
  2   for i in 1..1000000
  3     loop update t1 set id=id+0.1 where id=i; 
  4   end loop; 
  5   end; 
  6  /

PL/SQL procedure successfully completed.

SQL> commit;

Commit complete.

SQL> analyze index idx_t1 VALIDATE STRUCTURE;

Index analyzed.

SQL> analyze table t1 compute statistics; 

Table analyzed.

SQL> analyze index idx_t1 compute statistics;

Index analyzed.

SQL> SELECT SEGMENT_NAME,BYTES,BLOCKS FROM USER_SEGMENTS WHERE SEGMENT_NAME IN ('T1','IDX_T1') ;

SEGMENT_NAME
--------------------------------------------------------------------------------
     BYTES     BLOCKS
---------- ----------
IDX_T1
   9437184       1152

T1
   5242880        640


SQL> alter index idx_t1 rebuild;

Index altered.

SQL> SELECT SEGMENT_NAME,BYTES,BLOCKS FROM USER_SEGMENTS WHERE SEGMENT_NAME IN ('T1','IDX_T1') ;

SEGMENT_NAME
--------------------------------------------------------------------------------
     BYTES     BLOCKS
---------- ----------
IDX_T1
   5242880        640

T1
   5242880        640

当数据update操作频繁,对index的维护会导致其占用空间过大,通过rebuild可以恢复到原始状态。http://www.cndba.cn/hbhe0316/article/4854

http://www.cndba.cn/hbhe0316/article/4854
http://www.cndba.cn/hbhe0316/article/4854
http://www.cndba.cn/hbhe0316/article/4854
http://www.cndba.cn/hbhe0316/article/4854http://www.cndba.cn/hbhe0316/article/4854http://www.cndba.cn/hbhe0316/article/4854

版权声明:本文为博主原创文章,未经博主允许不得转载。

Linux,oracle

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
hbhe0316

hbhe0316

关注

1.只有承认无知,才能装下新的东西; 2.进步来自一点点滴滴的积累; 3.广博让你更优秀,而专业让你无法替代; 4.挫折和失败能够转换为一种财富。

  • 889
    原创
  • 1
    翻译
  • 13
    转载
  • 24
    评论
  • 访问:1039774次
  • 积分:1523
  • 等级:核心会员
  • 排名:第6名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ