11g 匯出資料時的幾種壓縮方法

楊奇龍發表於2011-03-30
做一個簡單的實驗說明compress 引數的用法。
compression=all:對於ALL方式,資料泵會對匯出的源資料和表資料都進行壓縮,顧名思義,這種方式得到的資料泵匯出檔案是最小的,不過用時相對也會比較長:
在我這裡由於資料量的關係,時間大小不具有可比性。
C:\Users\aaaa>expdp yang/yang tables=yang_part3 directory=dumpdir dumpfile=yang_all.dmp compression=all
Export: Release 11.1.0.6.0 - Production on 星期三, 30 3月, 2011 22:58:10
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
啟動 "YANG"."SYS_EXPORT_TABLE_01":  yang/******** tables=yang_part3 directory=dumpdir dumpfile=yang_
all.dmp compression=all
正在使用 BLOCKS 方法進行估計...
處理物件型別 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 832 KB
處理物件型別 TABLE_EXPORT/TABLE/TABLE
. . 匯出了 "YANG"."YANG_PART3":"P201004"               119.7 KB    4513 行
. . 匯出了 "YANG"."YANG_PART3":"P201002"               62.79 KB    2258 行
. . 匯出了 "YANG"."YANG_PART3":"P201003"               64.47 KB    2325 行
. . 匯出了 "YANG"."YANG_PART3":"P201001"               28.35 KB     904 行
. . 匯出了 "YANG"."YANG_PART3":"P2009"                     0 KB       0 行
已成功載入/解除安裝了主表 "YANG"."SYS_EXPORT_TABLE_01"
******************************************************************************
YANG.SYS_EXPORT_TABLE_01 的轉儲檔案集為:
  D:\DUMP\YANG_ALL.DMP
作業 "YANG"."SYS_EXPORT_TABLE_01" 已於 22:58:26 成功完成
耗時:16秒
compression=data_only:對於DATA_ONLY方式,資料泵對錶資料進行壓縮,這種壓縮方式對於大資料量的匯出效果明顯,一般來說,這種方式回比METADATA_ONLY方式得到更小的壓縮檔案:
C:\Users\aaaa>expdp yang/yang tables=yang_part3 directory=dumpdir dumpfile=yang_data.dmp compression=data_only
Export: Release 11.1.0.6.0 - Production on 星期三, 30 3月, 2011 22:59:42
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
啟動 "YANG"."SYS_EXPORT_TABLE_01":  yang/******** tables=yang_part3 directory=dumpdir
dumpfile=yang_data.dmp compression=data_only
正在使用 BLOCKS 方法進行估計...
處理物件型別 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 832 KB
處理物件型別 TABLE_EXPORT/TABLE/TABLE
. . 匯出了 "YANG"."YANG_PART3":"P201004"               119.7 KB    4513 行
. . 匯出了 "YANG"."YANG_PART3":"P201002"               62.79 KB    2258 行
. . 匯出了 "YANG"."YANG_PART3":"P201003"               64.47 KB    2325 行
. . 匯出了 "YANG"."YANG_PART3":"P201001"               28.35 KB     904 行
. . 匯出了 "YANG"."YANG_PART3":"P2009"                     0 KB       0 行
已成功載入/解除安裝了主表 "YANG"."SYS_EXPORT_TABLE_01"
******************************************************************************
YANG.SYS_EXPORT_TABLE_01 的轉儲檔案集為:
  D:\DUMP\YANG_DATA.DMP
作業 "YANG"."SYS_EXPORT_TABLE_01" 已於 23:00:01 成功完成
耗時:19秒

compression=none不進行任何的壓縮,匯出後資料檔案也是最大的:
C:\Users\aaaa>expdp yang/yang tables=yang_part3 directory=dumpdir dumpfile=yang_none.dmp compression=none
Export: Release 11.1.0.6.0 - Production on 星期三, 30 3月, 2011 23:00:49
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
啟動 "YANG"."SYS_EXPORT_TABLE_01":  yang/******** tables=yang_part3 directory=dumpdir
dumpfile=yang_none.dmp compression=none
正在使用 BLOCKS 方法進行估計...
處理物件型別 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 832 KB
處理物件型別 TABLE_EXPORT/TABLE/TABLE
. . 匯出了 "YANG"."YANG_PART3":"P201004"               217.6 KB    4513 行
. . 匯出了 "YANG"."YANG_PART3":"P201002"                 112 KB    2258 行
. . 匯出了 "YANG"."YANG_PART3":"P201003"               115.1 KB    2325 行
. . 匯出了 "YANG"."YANG_PART3":"P201001"               48.56 KB     904 行
. . 匯出了 "YANG"."YANG_PART3":"P2009"                     0 KB       0 行
已成功載入/解除安裝了主表 "YANG"."SYS_EXPORT_TABLE_01"
******************************************************************************
YANG.SYS_EXPORT_TABLE_01 的轉儲檔案集為:
  D:\DUMP\YANG_NONE.DMP
作業 "YANG"."SYS_EXPORT_TABLE_01" 已於 23:01:16 成功完成
耗時27秒

對於METADATA_ONLY方式,資料泵只對源資料進行壓縮,而不會壓縮資料檔案,這種壓縮執行後效果一般不是很明顯,不過速度比較快:
C:\Users\aaaa>expdp yang/yang tables=yang_part3 directory=dumpdir dumpfile=yang_metadata_only.dmp compression=metadata_only

Export: Release 11.1.0.6.0 - Production on 星期三, 30 3月, 2011 23:01:50
Copyright (c) 2003, 2007, Oracle.  All rights reserved.
連線到: Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
啟動 "YANG"."SYS_EXPORT_TABLE_01":  yang/******** tables=yang_part3 directory=dumpdir dumpfile=yang_
metadata_only.dmp compression=metadata_only
正在使用 BLOCKS 方法進行估計...
處理物件型別 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 832 KB
處理物件型別 TABLE_EXPORT/TABLE/TABLE
. . 匯出了 "YANG"."YANG_PART3":"P201004"               217.6 KB    4513 行
. . 匯出了 "YANG"."YANG_PART3":"P201002"                 112 KB    2258 行
. . 匯出了 "YANG"."YANG_PART3":"P201003"               115.1 KB    2325 行
. . 匯出了 "YANG"."YANG_PART3":"P201001"               48.56 KB     904 行
. . 匯出了 "YANG"."YANG_PART3":"P2009"                     0 KB       0 行
已成功載入/解除安裝了主表 "YANG"."SYS_EXPORT_TABLE_01"
******************************************************************************
YANG.SYS_EXPORT_TABLE_01 的轉儲檔案集為:
  D:\DUMP\YANG_METADATA_ONLY.DMP
作業 "YANG"."SYS_EXPORT_TABLE_01" 已於 23:02:11 成功完成

耗時21秒
C:\Users\aaaa>

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

相關文章