Table Compression表压缩技术概述及其历史演变

Posted SQLplusDB

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Table Compression表压缩技术概述及其历史演变相关的知识,希望对你有一定的参考价值。

概述

本文介绍Oracle表压缩(Table Compression)技术概述及其历史演变

在Oracle数据库中,普通表(即堆表)可以进行压缩技术来提高数据库性能和节省存储空间。

表压缩优缺点

表压缩(Table Compression)的好处和缺点主要如下:

好处:节省磁盘空间、减少buffer cache的使用、减少I/O 、某些情况下还能加快查询执行时读的速度

缺点:加载数据和进行DML时消耗更多的CPU

表压缩分类

表压缩根据压缩方法不同可以分为以下几类:

基本表压缩(Basic table compression)
高级行压缩(Advanced row compression以前的11g版本也称为OLTP压缩)
混合列压缩(Hybrid Columnar Compression 简称EHCC)
    Warehouse compression
    Online archival compression

详细分类还可以参考在线文档中的下表:

Database Administrator’s Guide

20 Managing Tables
Consider Using Table Compression

Database SQL Language Reference

CREATE TABLE
table_compression

表压缩技术的演化

语法演化

9.2&10g版本:

ALTER TABLE <table_name> 
COMPRESS | NOCOMPRESS 

11.1版本:

ALTER TABLE <table_name> 
COMPRESS [ FOR  ALL | DIRECT_LOAD  OPERATIONS ] 
| NOCOMPRESS

11.2版本:

ALTER TABLE <table_name> 
COMPRESS [ BASIC 
           | FOR  OLTP
                 |  QUERY | ARCHIVE  [ LOW | HIGH ]
                 
           ]
| NOCOMPRESS 

其中“COMPRESS FOR OLTP”用于代替11.1版本的“COMPRESS FOR ALL OPERATIONS”。

12.1版本:

ALTER TABLE <table_name> 
COMPRESS
| ROW STORE COMPRESS [ BASIC | ADVANCED ]
| COLUMN STORE COMPRESS [  FOR  QUERY | ARCHIVE  [ LOW | HIGH ] ]
  [ [NO] ROW LEVEL LOCKING ]
| NOCOMPRESS

表压缩的确认

我们可以通过ALL_TABLES/DBA_TABLES等视图的COMPRESSION和COMPRESS_FOR来查看表压缩的设置状况。

SQL> select table_name, compression, compress_for from user_tables;

版权声明:本文为博主原创文章,转载请注明出处,谢谢。http://blog.csdn.net/lukeunique

以上是关于Table Compression表压缩技术概述及其历史演变的主要内容,如果未能解决你的问题,请参考以下文章

Oracle Schema Objects——Tables——Table Compression

Hbase 表设计和高级属性

hive parquet table 配置使用压缩

asp.net core 系列之Performance的 Response compression(响应压缩)

HadoopHadoop IO之Compression和Codecs

[20180814]慎用查看表压缩率脚本.txt