1概念理解
当系统的存储空间不足时或我们为了节省存储空间,一般都会想到数据压缩技术,在ORACLE系统中使用数据压缩技术不仅能够节省我们的存储空间,而且还会减少我们的内存占用、提高我们的I/O及查询速度。数据压缩技术常使用在OLAP系统中,我们知道通常OLAP系统一般数据量比较大,一次加载的数据量比较多,且多不存在DML操作,所以数据压缩比较适合OLAP系统,但需要注意的是数据压缩技术会消耗更多的时间和资料,特别是CUP资源。
压缩表实现可以从创建表时实现,也可以把一个已存在的表变为压缩表,下面我们将从这两方面去演示。
2创建压缩表验证压缩效果
创建两张同样的表,一张压缩一张不压缩经行比较:
查看表属性:
查看压缩后的效果:
从上面的图中可以看到压缩后的表占用了18个区,使用了384个数据块,有3145728个字节,没有压缩的表占用了24个区,使用了1152个数据块,有9437184个字节。对比发现压缩比率达到了约30%。
3对已存在的表进行压缩
创建一张普通数据表:
对TEST表进行分析,统计占用的数据块数:
对TEST表进行分析,统计占用的数据块数:
对表进行解压缩:
在这里我们发现一个有趣的现象,我们对一个已经压缩的表进行解压,发现其占用的数据块并没有增加。
时间: 2024-12-31 03:45:12