10g資料泵和匯入匯出效能對比(六)

yangtingkun發表於2009-06-22

前一段時間在一次遷移中同時用到了資料泵和EXP,發現二者效率的差別還是相當大的。這裡透過一個例子簡單比較一下。

這篇文章同時使用直接路徑和並行來加速資料泵匯入。

10g資料泵和匯入匯出效能對比(一):http://yangtingkun.itpub.net/post/468/321482

10g資料泵和匯入匯出效能對比(二):http://yangtingkun.itpub.net/post/468/323899

10g資料泵和匯入匯出效能對比(三):http://yangtingkun.itpub.net/post/468/328465

10g資料泵和匯入匯出效能對比(四):http://yangtingkun.itpub.net/post/468/457459

10g資料泵和匯入匯出效能對比(五):http://yangtingkun.itpub.net/post/468/486194

 

 

上一篇結束了資料泵匯入在非歸檔模式下獲得大幅的效能提高,當然IMP也能從非歸檔模式中得到效能的提升,當前環境下,imp匯入的例子:

bash-2.03$ imp zhejiang/zhejiang file=/data1/backup/zhejiang_regular.dmp full=y buffer=20480000 log=/data1/zj_regular.log

Import: Release 10.2.0.3.0 - Production on 星期三 4 22 21:36:51 2009

Copyright (c) 1982, 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

經由直接路徑由 EXPORT:V10.02.01 建立的匯出檔案
已經完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的匯入
.
正在將 ZHEJIANG 的物件匯入到 ZHEJIANG
. .
正在匯入表                             "A"匯入了        1216
. .
正在匯入表               "ASS_BBS_ARTICLE"匯入了           0
. .
正在匯入表               "ASS_BBS_CATALOG"匯入了           0
.
.
.
. .
正在匯入表             "Z_INVITE_COMM_PUB"匯入了         147
即將啟用約束條件...
成功終止匯入, 但出現警告。
bash-2.03$ ls -l /data1/zj_regular.log
-rw-r--r--   1 oracle   oinstall   41303 Apr 23 00:33 /data1/zj_regular.log

在非歸檔模式下,常規匯入方法用了2小時57左右,比歸檔模式下的3小時17分提高了20分鐘。

而上一篇文章中測試的資料泵提高了46分鐘,顯然資料泵與常規匯入相比,使用了直接路徑的匯入方式,更能利用非歸檔的優勢。

在前面的文章中提到過使用並行能極大的提高匯入效能,而上一篇文章也展示了資料泵的直接路徑方式的匯入效能,下面將兩個方面結合在一起,檢查資料泵的匯入效能。

首先仍然是匯出,為了匯入可以使用並行,在匯出的時候也使用相同的並行度:

bash-2.03$ expdp zhejiang/zhejiang dumpfile=zhejiang_p1.dp, zhejiang_p2.dp directory=d_test parallel=2

Export: Release 10.2.0.3.0 - 64bit Production on 星期三, 22 4, 2009 18:41:45

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
啟動 "ZHEJIANG"."SYS_EXPORT_SCHEMA_01":  zhejiang/******** dumpfile=zhejiang_p1.dp, zhejiang_p2.dp directory=d_test parallel=2
正在使用 BLOCKS 方法進行估計...
處理物件型別 SCHEMA_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的總估計: 22.69 GB
處理物件型別 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/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
處理物件型別 SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY
處理物件型別 SCHEMA_EXPORT/TYPE/TYPE_BODY
處理物件型別 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
處理物件型別 SCHEMA_EXPORT/TABLE/TRIGGER
處理物件型別 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"."ORD_HIT_COMM"                   3.255 GB 4176146
. .
匯出了 "ZHEJIANG"."CON_LIST_ITEM"                  4.505 MB    7985
.
.
.
. .
匯出了 "ZHEJIANG"."UNC_USER_NON"                       0 KB       0
. .
匯出了 "ZHEJIANG"."USR_USER_PLAT_ROLE"                 0 KB       0
已成功載入/解除安裝了主表 "ZHEJIANG"."SYS_EXPORT_SCHEMA_01"
******************************************************************************
ZHEJIANG.SYS_EXPORT_SCHEMA_01
的轉儲檔案集為:
  /data1/backup/zhejiang_p1.dp
  /data1/backup/zhejiang_p2.dp
作業 "ZHEJIANG"."SYS_EXPORT_SCHEMA_01" 已於 18:51:09 成功完成

利用並行的匯出,只用了10分鐘不到。

下面刪除浙江使用者,重建浙江使用者並授權:

SQL> drop user zhejiang cascade;

使用者已刪除。

SQL> create user zhejiang identified by zhejiang default tablespace zhejiang;

使用者已建立。

SQL> grant connect, resource to zhejiang;

授權成功。

SQL> grant create database link, create synonym, create view to zhejiang;

授權成功。

SQL> grant read, write on directory d_test to zhejiang;

授權成功。

執行匯入操作,並設定並行度為2

bash-2.03$ impdp zhejiang/zhejiang directory=d_test dumpfile=zhejiang_p1.dp, zhejiang_p2.dp parallel=2 logfile=zhejiang_p.log

Import: Release 10.2.0.3.0 - 64bit Production on 星期三, 22 4, 2009 19:04:02

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
已成功載入/解除安裝了主表 "ZHEJIANG"."SYS_IMPORT_FULL_01"
啟動 "ZHEJIANG"."SYS_IMPORT_FULL_01":  zhejiang/******** directory=d_test dumpfile=zhejiang_p1.dp, zhejiang_p2.dp parallel=2 logfile=zhejiang_p.log
處理物件型別 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
. .
匯入了 "ZHEJIANG"."CON_LIST_ITEM"                  4.505 MB    7985
.
.
.
. .
匯入了 "ZHEJIANG"."UNC_USER_NON"                       0 KB       0
. .
匯入了 "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
處理物件型別 SCHEMA_EXPORT/PACKAGE/PACKAGE_BODY
處理物件型別 SCHEMA_EXPORT/TYPE/TYPE_BODY
處理物件型別 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
處理物件型別 SCHEMA_EXPORT/TABLE/TRIGGER
處理物件型別 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:58:34 完成)

匯入總用時1小時5432秒,比不使用並行提高了將近30分鐘,比非直接路徑的並行匯入也提高了35分鐘左右。

因此最佳化資料泵的匯入效能可以從並行和直接路徑兩個主要方面入手。

 

 

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

相關文章