oracle压缩.txt
需积分: 0 185 浏览量
更新于2021-02-01
收藏 5KB TXT 举报
### Oracle数据库中的表压缩技术详解
#### 一、概述
Oracle数据库提供了多种压缩技术来减少存储空间的需求,提高I/O效率。这些技术包括基本压缩(Basic Compression)、在线事务处理压缩(OLTP Compression)、仓库压缩(Warehouse Compression)以及归档压缩(Archive Compression)等。本文将详细介绍Oracle中的表压缩技术及其应用场景。
#### 二、表压缩的重要性
表压缩通过减少数据存储空间来优化数据库性能,具体好处包括:
- **减少存储成本**:通过压缩数据减少所需的物理磁盘空间。
- **提高I/O效率**:压缩后的数据能够更快地读取到内存中,从而提高应用程序响应速度。
- **降低CPU消耗**:虽然压缩和解压缩操作会增加CPU负载,但对于大多数应用场景来说,这种额外的CPU消耗是值得的,因为它带来了更高的I/O效率。
#### 三、压缩选项及应用场景
##### 1. 基本压缩(Basic Compression)
- **压缩比**:较高
- **CPU消耗**:最小
- **应用场景**:决策支持系统(DSS)
- **特点**:仅支持直接路径写入操作时的数据压缩。
##### 2. 在线事务处理压缩(OLTP Compression)
- **压缩比**:较高
- **CPU消耗**:最小
- **应用场景**:在线事务处理(OLTP)、决策支持系统(DSS)
- **特点**:支持所有类型的SQL数据压缩。
##### 3. 仓库压缩(Warehouse Compression)
- **压缩比**:更高
- **CPU消耗**:较高
- **应用场景**:决策支持系统(DSS)
- **特点**:采用混合列式压缩(Hybrid Columnar Compression),对于非直接路径写入的数据使用较低的压缩模式,而对于直接路径写入的数据则使用更高的压缩模式。
##### 4. 归档压缩(Archive Compression)
- **压缩比**:最高
- **CPU消耗**:最高
- **应用场景**:历史数据归档
- **特点**:同样采用混合列式压缩,适用于长期保存的历史数据压缩。
#### 四、如何创建和管理压缩表
1. **创建压缩表**
- 可以通过`CREATE TABLE`语句直接指定压缩选项,例如:
```sql
CREATE TABLE table_name (columns...) COMPRESS FOR OLTP;
```
- 或者先创建表再使用`ALTER TABLE`语句进行压缩设置:
```sql
ALTER TABLE table_name COMPRESS FOR OLTP;
```
2. **查看压缩状态**
- 使用以下查询语句查看表的压缩状态:
```sql
SELECT table_name, compression, compress_for FROM user_tables WHERE table_name = 'EMP';
```
3. **改变表的压缩状态**
- 启用或禁用表压缩:
```sql
ALTER TABLE table_name COMPRESS FOR type; -- 启用表压缩
ALTER TABLE table_name NOCOMPRESS; -- 禁用表压缩
```
4. **表分区压缩**
- 分区压缩的选项默认与表相同,但也可以单独指定或更改:
```sql
ALTER TABLE table_name MODIFY PARTITION partition_name COMPRESS FOR type; -- 新数据压缩
ALTER TABLE table_name MOVE PARTITION partition_name COMPRESS; -- 新旧数据均压缩
```
5. **在压缩表上添加和删除列**
- 对于使用`BASIC`压缩级别的表,新增列时不能指定默认值:
```sql
ALTER TABLE employees ADD(column_name column_type DEFAULT value); -- 不支持默认值
```
#### 五、注意事项
1. **OLTP表压缩限制**:不支持超过255个字段的表,也不支持LONG数据类型。
2. **块大小与压缩比率**:更大块大小并不一定意味着更好的OLTP表压缩比率。
3. **LOB数据的处理**:建议使用Secure Files LOBs存储在Oracle数据库中,并使用Secure Files压缩和重复数据删除来减少LOB请求的存储量。
#### 六、总结
通过合理运用Oracle数据库中的压缩技术,不仅可以显著减少存储成本,还能有效提升系统的整体性能。开发者应根据不同的应用场景选择合适的压缩方案,并适时调整以达到最佳效果。
nixmen
- 粉丝: 0
- 资源: 5
最新资源
- AllSort(直接插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序)
- 模拟qsort,改造冒泡排序使其能排序任意数据类型,即日常练习
- 数组经典习题之顺序排序和二分查找和冒泡排序
- 基于 Oops Framework 提供的游戏项目开发模板,项目中提供了最新版本 Cocos Creator 3.x 插件与游戏资源初始化通用逻辑
- live-ai这是一个深度学习的资料
- FeiQ.rar 局域网内通信服务软件
- 172.16.100.195
- 光储并网simulink仿真模型,直流微电网 光伏系统采用扰动观察法是实现mppt控制,储能可由单独蓄电池构成,也可由蓄电池和超级电容构成的混合储能系统,并采用lpf进行功率分配 并网采用pq控制
- python编写微信读取smart200plc的数据发送给微信联系人
- 光储并网VSG系统Matlab simulink仿真模型,附参考文献 系统前级直流部分包括光伏阵列、变器、储能系统和双向dcdc变器,后级交流子系统包括逆变器LC滤波器,交流负载 光储并网VSG系