读书笔记整理十三:并行与压缩
PCT_INCREASE ---->>>表示EXTENT扩展时,每次增加的百分数
FREELISTS---->>>段中的空闲数据块列表
CACHE---->>>是否缓存到内存中
对于OLAP系统,我们最应该关注的是下面两个对象属性:
DEGREE
COMPRESSION
当索引的键值重复率越高,压缩率就越大。也就是说,只有键值重复率
高的时候,索引压缩才有意义。对于主键或者唯一约束上的索引压缩,通常
没有太大的作用,反正会造成额外的空间开销。
只有在下面的几种情况下才会发生数据的压缩处理,而其他的DML操作时不会对数据进行压缩的:
alter table move
creae table as select
insert /*+ append */
sqlldr+direct path
对于update操作来说,如果数据本身已经被压缩了,那么通过update修改后的数据将不再被压缩,
也就是说,update操作会对要操作的数据进行解压缩(decompress)的操作
alter table table_name move compress;
对于OLTP系统来说,可以进行如下的操作来达到数据压缩的目的:
首先将分区表的分区属性设为压缩
然后按照这个属性创建新的分区
对于老分区,通过alter table move partition方式对分区的数据进行压缩
PCT_INCREASE ---->>>表示EXTENT扩展时,每次增加的百分数
FREELISTS---->>>段中的空闲数据块列表
CACHE---->>>是否缓存到内存中
对于OLAP系统,我们最应该关注的是下面两个对象属性:
DEGREE
COMPRESSION
当索引的键值重复率越高,压缩率就越大。也就是说,只有键值重复率
高的时候,索引压缩才有意义。对于主键或者唯一约束上的索引压缩,通常
没有太大的作用,反正会造成额外的空间开销。
只有在下面的几种情况下才会发生数据的压缩处理,而其他的DML操作时不会对数据进行压缩的:
alter table move
creae table as select
insert /*+ append */
sqlldr+direct path
对于update操作来说,如果数据本身已经被压缩了,那么通过update修改后的数据将不再被压缩,
也就是说,update操作会对要操作的数据进行解压缩(decompress)的操作
alter table table_name move compress;
对于OLTP系统来说,可以进行如下的操作来达到数据压缩的目的:
首先将分区表的分区属性设为压缩
然后按照这个属性创建新的分区
对于老分区,通过alter table move partition方式对分区的数据进行压缩
------------------------整理自《让oracle跑得更快2谭怀远》