您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Oracle的数据表压缩

2024/3/22 13:34:07发布17次查看
oracle的数据表压缩,压缩原理:将同一个block里所有行的重复列值存储在表头的一块区域。该块区域被称为符号表(symbol table)。
oracle的数据表压缩
压缩原理:将同一个block里所有行的重复列值存储在表头的一块区域。该块区域被称为符号表(symbol table)。行里如果有某列的值等于
符号表里存储的值,则不存储实际的值,只存储该值在符号表里的地址。
表压缩技术适合的对象:
block里含有重复列值的数据表;
读取较多,更改较少的表。
数据表压缩的优点:
对于block里含有重复列值的数据表,可以极大的节省存储空间,并减少io和占用的内存。
数据表压缩的缺点:
cpu需要进行压缩和解压操作,存在额外的消耗。
dba需对数据的分布有一个较好的认识。
create table a
(a number(5),
b varchar2(30) )
compress;
create table b
(a number(5),
b varchar2(30) );
insert into a values(1,'aaaaaaaaaaaaaaaa');
insert into a values(2,'aaaaaaaaaaaaaaaa');
insert into a values(3,'aaaaaaaaaaaaaaaa');
insert into b values(1,'aaaaaaaaaaaaaaaa');
insert into b values(2,'aaaaaaaaaaaaaaaa');
insert into b values(3,'aaaaaaaaaaaaaaaa');
data_block_dump,data header at 0x2b3b07180264
===============
tsiz: 0x1f98
hsiz: 0x18
pbl: 0x2b3b07180264
76543210
flag=--------
ntab=1
nrow=3
frre=-1
fsbo=0x18
fseo=0x1f53
avsp=0x1f3b
tosp=0x1f3b
0xe:pti[0] nrow=3 offs=0
0x12:pri[0] offs=0x1f81
0x14:pri[1] offs=0x1f6a
0x16:pri[2] offs=0x1f53
block_row_dump:
tab 0, row 0, @0x1f81
tl: 23 fb: --h-fl-- lb: 0x1 cc: 2
col 0: [ 2] c1 02
col 1: [16] 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
tab 0, row 1, @0x1f6a
tl: 23 fb: --h-fl-- lb: 0x1 cc: 2
col 0: [ 2] c1 03
col 1: [16] 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
tab 0, row 2, @0x1f53
tl: 23 fb: --h-fl-- lb: 0x1 cc: 2
col 0: [ 2] c1 04
col 1: [16] 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
end_of_block_dump
block dump from cache:
data_block_dump,data header at 0xf427c064
===============
tsiz: 0x1f98
hsiz: 0x18
pbl: 0xf427c064
76543210
flag=--------
ntab=1
nrow=3
frre=-1
fsbo=0x18
fseo=0x1f53
avsp=0x1f3b
tosp=0x1f3b
0xe:pti[0] nrow=3 offs=0
0x12:pri[0] offs=0x1f81
0x14:pri[1] offs=0x1f6a
0x16:pri[2] offs=0x1f53
block_row_dump:
tab 0, row 0, @0x1f81
tl: 23 fb: --h-fl-- lb: 0x1 cc: 2
col 0: [ 2] c1 02
col 1: [16] 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
tab 0, row 1, @0x1f6a
tl: 23 fb: --h-fl-- lb: 0x1 cc: 2
col 0: [ 2] c1 03
col 1: [16] 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
tab 0, row 2, @0x1f53
tl: 23 fb: --h-fl-- lb: 0x1 cc: 2
col 0: [ 2] c1 04
col 1: [16] 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
end_of_block_dump
block dump from disk:
这样看来存储起来没有什么不一样。
推荐阅读:
ora-01172、ora-01151错误处理
ora-00600 [2662]错误解决
ora-01078 和 lrm-00109 报错解决方法
ora-00471 处理方法笔记
ora-00314,redolog 损坏,或丢失处理方法
ora-00257 归档日志过大导致无法存储的解决办法

该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product