ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 索引压缩研究(二)

索引压缩研究(二)

原创 Linux操作系统 作者:279531451 时间:2009-10-25 18:50:23 0 删除 编辑
继续索引压缩的研究,前一节我只使用compress 1 只压缩索引列的第一列。今天演示一下压缩两列,空间发生怎样的变化?
 索引压缩
   compress1 只压缩索引列的第一列
   compress2 压缩两列,看看压缩两列和一列在使用空间上有多大区别
   SQL> drop index t_idx_2 ;
索引已删除。
SQL> create index t_idx_2 on t(owner,object_type,object_name) compress 2;
索引已创建。
SQL> exec show_space('T_IDX_2',USER,'INDEX');
PL/SQL 过程已成功完成。
SQL> set serveroutput on;
SQL> exec show_space('T_IDX_2',USER,'INDEX');
Free Blocks.............................0
Total Blocks............................384
Total Bytes.............................3145728
Unused Blocks...........................24
Unused Bytes............................196608
Last Used Ext FileId....................6
Last Used Ext BlockId...................1792
Last Used Block.........................104
PL/SQL 过程已成功完成。
显然空间减少大约20%多。他是根据数据重复的多少去压缩。那么压缩在空间上,的确少, 但在其他性能方面肯定有影响,因为压缩索引在算法上更加复杂。那么在查询上和维护索引上,都会花费更多的处理时间。压缩索引可以减少IO的处理时间。如果系统受CPU限制,使用压缩索引降低处理速度,如果是IO方面的限制,使用压缩索引可以提高速度
所以,什么时候使用压缩索引,要根据具体情况具体分析了,去决定使用压缩索引

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7551038/viewspace-617374/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 基于函数的索引
请登录后发表评论 登录
全部评论

注册时间:2009-09-01

  • 博文量
    100
  • 访问量
    153843