前一段時間在一次遷移中同時用到了資料泵和EXP,發現二者效率的差別還是相當大的。這裡通過一個例子簡單比較一下。
這篇文章介紹提高IMPDP匯入效率的方法。
上面一篇文章的測試中發現IMPDP的匯入速度和IMP匯入速度相差無幾。而Oracle在介紹資料泵的時候,提到IMPDP的匯入速度最高是IMP的10倍。不過好在IMPDP還是可以最佳化調整的,那就是通過設定PARALLEL來提高IMPDP的並行度。
SQL> show parameter cpu
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cpu_count integer 2
parallel_threads_per_cpu integer 2
由於資料庫伺服器的CPU個數為2,下面嘗試設定PARALLEL為2來進行匯入:
$ impdp zhejiang/zhejiang DUMPFILE=zj_datapump.dp DIRECTORY=d_test FULL=y LOGFILE=zj_datapump.log parallel=2
Import: Release 10.2.0.3.0 - 64bit Production on 星期三, 06 6月, 2007 18:06:19
Copyright (c) 2003, 2005, Oracle. All rights reserved.
串連到: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options
ORA-39154: 外部方案中的對象已從匯入中刪除已成功載入/卸載了主表 "ZHEJIANG"."SYS_IMPORT_FULL_01" 啟動 "ZHEJIANG"."SYS_IMPORT_FULL_01": zhejiang/******** DUMPFILE=zj_datapump.dp DIRECTORY=d_test FULL=y LOGFILE=zj_datapump.log parallel=2 處理物件類型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA處理物件類型 SCHEMA_EXPORT/SYNONYM/SYNONYM處理物件類型 SCHEMA_EXPORT/TYPE/TYPE_SPEC處理物件類型 SCHEMA_EXPORT/DB_LINK處理物件類型 SCHEMA_EXPORT/SEQUENCE/SEQUENCE處理物件類型 SCHEMA_EXPORT/TABLE/TABLE處理物件類型 SCHEMA_EXPORT/TABLE/TABLE_DATA
. . 匯入了 "ZHEJIANG"."ORD_ORDER_ITEM" 1.890 GB 3226647 行
.
.
.
本文URL地址:http://www.bianceng.cn/database/Oracle/201410/45551.htm
. . 匯入了 "ZHEJIANG"."USR_USER_PLAT_ROLE" 0 KB 0 行處理物件類型 SCHEMA_EXPORT/TABLE/INDEX/INDEX處理物件類型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT處理物件類型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS處理物件類型 SCHEMA_EXPORT/TABLE/COMMENT處理物件類型 SCHEMA_EXPORT/PACKAGE/PACKAGE_SPEC處理物件類型 SCHEMA_EXPORT/FUNCTION/FUNCTION處理物件類型 SCHEMA_EXPORT/PROCEDURE/PROCEDURE處理物件類型 SCHEMA_EXPORT/PACKAGE/COMPILE_PACKAGE/PACKAGE_SPEC/ALTER_PACKAGE_SPEC處理物件類型 SCHEMA_EXPORT/FUNCTION/ALTER_FUNCTION處理物件類型 SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE
ORA-39082: 物件類型 ALTER_PROCEDURE:"ZHEJIANG"."PT_ENTER_FACTORY" 已建立, 但帶有編譯警告
.
.
.
ORA-39082: 物件類型 PACKAGE_BODY:"ZHEJIANG"."USR_ROLE$RP" 已建立, 但帶有編譯警告處理物件類型 SCHEMA_EXPORT/TYPE/TYPE_BODY處理物件類型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT處理物件類型 SCHEMA_EXPORT/TABLE/INDEX/FUNCTIONAL_AND_BITMAP/INDEX處理物件類型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/FUNCTIONAL_AND_BITMAP/INDEX_STATISTICS處理物件類型 SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS作業 "ZHEJIANG"."SYS_IMPORT_FULL_01" 已經完成, 但是有 34 個錯誤 (於 20:35:03 完成)
採用並行度為2的匯入方式,發現速度果然提高了很多。並行度為1的匯入速度是3小時8分鐘,而現在用了不到2個半小時。
由於並行度設定不應該超過CPU數的2倍,因此嘗試平行度3和4的匯入,匯入時間和並行度2十分接近。看來已經無法再使用通過提高並行度的方法來提高效能了。