oracle壓縮技術

oracle_mao發表於2013-12-19

 大概在2個月前聽說了資料壓縮,但是知道的是表級別的壓縮儲存,但一直都沒有實驗也沒有深入研究,很多時候看書,如果不實驗,就很容易忘記。
11g在資料壓縮方面有一些特性如下:
Compression for Table Data
Compression for File Data
Compression for Backup Data
Compression for Network Traffic

1.  Compression for Table Data
 對於表中資料的壓縮,其實就是將塊中重複的記錄壓縮,重複資料越多,壓縮比例越高,一般都是到2倍到4倍左右。壓縮不光可以節省空間,還可以減少物理讀。關於塊是何時被壓縮的,其實最開始塊中沒有資料的時候是不被壓縮的,只有當塊中資料達到一個閥值後,才開始壓縮。所以塊壓縮對資料寫入有一定的影響。
 建立表是可以指定COMPRESS FOR OLTP表示該表為壓縮格式。如果表已經建立,那可以通過alter table COMPRESS FOR OLTP來調整,從此只對調整後的dml發生壓縮,對以前的資料還是不壓縮的。
1)alter table .. move compress將一個存在的錶轉化成壓縮表
SQL> select segment_name,bytes from dba_segments where segment_name = 'T11';

SEGMENT_NAME                                                                           BYTES
--------------------------------------------------------------------------------- ----------
T11                                                                                301989888

SQL> alter table t11 move compress;

Table altered.

SQL>  select segment_name,bytes from dba_segments where segment_name = 'T11';

SEGMENT_NAME                                                                           BYTES
--------------------------------------------------------------------------------- ----------
T11                                                                                100663296---縮小了2/3。
SQL>  select table_name,compression from user_tables where table_name='T11';

TABLE_NAME                     COMPRESS
------------------------------ --------
T11                            ENABLED
2)表空間的壓縮
 SQL> alter tablespace …… default compress;
 SQL> alter tablespace …… default nocompress;
如果定義表空間是壓縮模式,那在此下面的所有物件(出索引意外)將都為壓縮模式。
3)物化檢視的壓縮
 SQL> create materialized view 。。 compress as select。。where 。。。;
 SQL> alter materialized view……compress;
4)分割槽表的壓縮
 SQL> alter table。。move partition 。。 compress;
可以單獨對某個分割槽進行設定,如果對錶設定的話,那就將每個分割槽都啟動了壓縮機制。
5)索引的壓縮
索引中,基本可以肯定重複值很少,所以我們基本不需要在索引上設定壓縮。
2. Compression for File Data
 找了很多資料,都沒有發現這個啥功能。
3. Compression for Backup Data
 備份壓縮,例如rman中的那些種壓縮方式,還有expdp/impdp
4. Compression for Network Traffic
 指的是dg中redo的傳輸時,壓縮和解壓縮。

 

 

 

 

 

 

 


 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24500180/viewspace-1063782/,如需轉載,請註明出處,否則將追究法律責任。

相關文章