[网络课摘抄]6.2示例演示数据压缩的效果

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

[网络课摘抄]6.2示例演示数据压缩的效果的相关文章

[网络课摘抄]5.2演示数据块整理(合并)的效果

1概念理解 由于对表空间进行频繁的DML操作,在空间的分配上势必会产生一些空间碎片影响系统效率.对磁盘碎片整理上可以使用的方法有重建表.move.shrink等.另一种情况是DELETE操作并不会回收HWM高水位线,ORACLE扫描表时依然是从第1个数据块扫描到HWM,当有新记录插入时,也是从HWM后开始插入,之前标记为删除的记录所占用的空间并没有释放,这不光影响了我们数据扫描的性能而且验证浪费了空间使用,下面我们就分别利用move\shrink两中技术来整理合并数据块. 2环境准备 创建一张表

[网络课摘抄]4.演示一个导致ora-01555错误的场景

1创建一个undo表空间 2查看当前undo配置 3更该默认undo表空间 4确认更改的配置 5创建一张测试表 6模拟批量操作 7 查询2分钟前的数据 从这里可以到当查询2分钟前的数据时候,系统报出ORA-01555错误,提示我们快照太老.导致这种错误出现的原因是因为由于设置的回滚段太小且回滚段循环使用,在查询之前某个时刻数据状态时需要从回滚段中勾勒出数据的前映像,由于保存数据前映像的回滚段已经被覆盖,导致查询无法实现一致性读,查询失败,报出ORA-01555错误.

[网络课摘抄]1.DBA日常工作内容和职责

1.统计数据库总容量 按表空间分别统计: 总容量(单位为M): 2.计算用户下所有对象大小 3计算USERS表空间的大小 4计算该USERS表空间对象大小 -----------------------------------------------以下摘抄于网络----------------------------------------------- DBA 职责及日常工作职责: 1.安装和升级数据库服务器,以及应用程序工具构建和配置网络环境. 2.熟悉数据库系统的存储结构预测未来的存储需

[网络课摘抄]3.利用logminer恢复delete误删除操作的数据

1环境准备 日志挖掘可以基于日志.基于时间.基于SCN分析,这里我们将演示一个基于SCN的分析案例. 开启补充日志功能(必须开始,否则不能捕获DML操作日志): 创建一张livan表,往里面插入了14条数据,如图: 2查看当前日志 3确认SCN删除测试表数据 查看当前SCN: 执行delete操作,删除了14条数据: 查看此时的SCN: 4 logminer加载日志文件并分析 加载日志文件: 开始日志挖掘: 5查询v$logmnr_contents视图 6结束日志挖掘 exec dbms_log

[网络课摘抄]8.4 rman恢复误删除的一张表(不完全恢复)

恢复误删除的一张表可以使用很多方法,如日志挖掘.闪回等,rman恢复(不完全恢复)肯定不是最好的,也不建议用, 现在我们只是演示一下这种恢复. 1 RMAN备份数据库 2创建测试表 3查看此时的SCN并删除表 4恢复数据测试表 5验证测试表是否恢复过来

linux使用tcpdump抓包工具抓取网络数据包,多示例演示

tcpdump是linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是ubuntu 12.04. tcpdump的命令格式 tcpdump的参数众多,通过man tcpdump可以查看tcpdump的详细说明,这边只列一些笔者自己常用的参数: tcpdump [-i 网卡] -nnAX '表达式' 各参数说明如下: -i:interface 监听的网卡. -nn:表示以ip和port的方式显示来源主机和目的主机,而不是用主机名和服务. -A:以ascii的方式显示数据包,

[网络课摘抄]5.1 PCTUSED和PCTFREE对数据操作的影响

1概念理解 首先PCTUSED和PCTFREE都是针对数据块的存储属性,单位都是%.其中PCTFREE决定了数据块什么时候从free list中移除,系统就不可以再往该数据块中插入数据,对于数据块中已有数据的更新可以使用数据块的保留空间(当update数据块时,剩余空间不足于满足update后的空间要求时,将会发生行迁移). PCTUSED决定了数据块什么时候被重新放置于free list中去,系统又可以往该块总插入数据(当insert数据到数据块时,剩余空间不满足insert 时的空间要求且重

[网络课摘抄]8.2模拟状态为inactive的日志损坏的恢复实验(完全恢复)

1查看当前日志状态 从这里可以看到我们现在有三组日志,每组日志中只有1个成员.为了演示这个实验,我们为每个组增加1个成员. 2为每组增加组成员 添加后我们验证一下目前各日志成员的状态: 从上面的视图中可以看到我们的日志组成员已经加到了我们的日志组中,增加到的日志成员为INVALID的状态. 3切换3组日志归档 查看此时日志状态: 可以发现此时日志组1和日志组2都是INACTIVE状态. 4删除INACTIVE状态日志 根据前面的确认,我们现在的日志组1和日志组2都是INACTIVE状态,现在我们

[网络课摘抄]8.1模拟控制文件丢失后的数据库恢复(完全恢复)

1.环境准备 1.1确认数据库版本 1.2确认数据库归档 1.3备份数据库文件 2模拟控制文件丢失后的数据库恢复(完全恢复). 2.1查看控制文件位置 2.2执行操作后删除控制文件 2.3启动数据库 启动数据库的时候发现数据库发生了报错,提示无法确认控制文件,检查告警文件,我们现在检查一下告警文件里的信息: 2.4重建控制文件 对于日志和数据文件都完整的情况下,如果只是控制文件丢失,那么重建控制文件是最好的一种解决方式,一般重建控制文件能够解决99%的问题,现在我们就重建控制文件. 2.5尝试打