News
DBA-Tipp: DataPump --verbose

Die Information ist ein schnelllebiges Gut. Jeden Tag werden wir mit hunderten Informationen zugemüllt. Deshalb sind wir bestrebt uns auf das Wesentliche zu konzentrieren und nur substantiell nachhaltige Informationen bereitzustellen.

Icon Unternehmen

Abgesehen von der Tatsache, dass die konventionellen Export- und Import-Utilities exp und imp seit Version 11g von Oracle desupportet sind, hat das neue Export- und Import-Utility Oracle DataPump viele signifikante Vorteile und interessante Erweiterungen zu bieten. Es gibt mittlerweile keinen triftigen Grund mehr, DataPump nicht endgültig zum Mittel der Wahl für den Ex- und Import von Daten aus einer bzw. in eine Oracle Datenbank zu machen. Spätestens seit Version 11gR2 ist DataPump durch Einführung der Legacy-Parameter ja auch hinsichtlich der Parameter kompatibel zu den desupporteten, konventionellen Utilities.

Neben den offenkundigen und den meisten von Ihnen sicher mittlerweile aus der täglichen Praxis bekannten und geschätzten Neuerungen kennt DataPump seit Version 11gR2 den Parameter "metrics", der im heutigen DBA-Tipp kurz vorgestellt werden soll.

Anders als die konventionellen Utilities exp und imp trägt DataPump bereits per Default Start- und Endezeit des Exports bzw. Imports ins Logfile ein. Auch die Anzahl der exportierten, respektive importierten Zeilen je Tabelle werden im Log vermerkt. Letzteres war ja bereits mit exp und imp der Fall. Ein detaillierteres Logging ist jedoch auch im DataPump per default erst einmal nicht aktiviert. Hier kommt nun der Parameter metrics zum Tragen, der, auf „yes“ gestellt, für jeden exportierten bzw. importierten Objekttyp sowohl Laufzeit als auch Anzahl der abgearbeiteten Objekte aufzeichnet.

So sieht ein Exportlog mit der Standardeinstellung (metrics=no) so aus ...

expdp userid=system metrics=no

Export: Release 11.2.0.4.0 - Production on Wed Dec 11 18:53:19 2013

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
Password:                                                                   

Connected to: Oracle Database 11g Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options
Starting "SYSTEM"."SYS_EXPORT_SCHEMA_01":  userid=system/******** metrics=no
Estimate in progress using BLOCKS method...                                 
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA                       
Total estimation using BLOCKS method: 320 KB                                
Processing object type SCHEMA_EXPORT/USER                        
...
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT                       
Processing object type SCHEMA_EXPORT/TABLE/TRIGGER                                         
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS                     
Processing object type SCHEMA_EXPORT/TABLE/POST_TABLE_ACTION                    
Processing object type SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA                            
. . exported "SYSTEM"."REPCAT$_AUDIT_ATTRIBUTE"          6.328 KB       2 rows             
. . exported "SYSTEM"."REPCAT$_OBJECT_TYPES"             6.882 KB      28 rows             
. . exported "SYSTEM"."REPCAT$_RESOLUTION_METHOD"        5.835 KB      19 rows             
. . exported "SYSTEM"."REPCAT$_TEMPLATE_STATUS"          5.484 KB       3 rows             
. . exported "SYSTEM"."REPCAT$_TEMPLATE_TYPES"           6.289 KB       2 rows             
. . exported "SYSTEM"."DEF$_AQCALL"                          0 KB       0 rows             
...
Master table "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_01 is:
  /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/log/expdat.dmp
Job "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully completed at Wed Dec 11 18:54:08 2013 elapsed 0 00:00:46

... während der gleiche Export mit metrics=yes folgendes Log liefert:

expdp userid=system metrics=yes

Export: Release 11.2.0.4.0 - Production on Wed Dec 11 18:54:38 2013

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
Password:                                                                   

Connected to: Oracle Database 11g Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options
Starting "SYSTEM"."SYS_EXPORT_SCHEMA_01":  userid=system/******** metrics=yes
Startup took 2 seconds                                                       
Estimate in progress using BLOCKS method...                                  
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA                        
     Estimated 56 TABLE_DATA objects in 2 seconds                            
Total estimation using BLOCKS method: 320 KB                                 
Processing object type SCHEMA_EXPORT/USER                                    
     Completed 1 USER objects in 0 seconds                                   
...
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT                       
     Completed 36 REF_CONSTRAINT objects in 1 seconds                                      
Processing object type SCHEMA_EXPORT/TABLE/TRIGGER                                         
     Completed 2 TRIGGER objects in 1 seconds                                              
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS                     
     Completed 56 TABLE_STATISTICS objects in 1 seconds                                    
Processing object type SCHEMA_EXPORT/TABLE/POST_TABLE_ACTION                  
     Completed 3 POST_TABLE_ACTION objects in 0 seconds                                    
Processing object type SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA                            
     Completed 1 PROCACT_SCHEMA objects in 0 seconds                                       
. . exported "SYSTEM"."REPCAT$_AUDIT_ATTRIBUTE"          6.328 KB       2 rows             
. . exported "SYSTEM"."REPCAT$_OBJECT_TYPES"             6.882 KB      28 rows             
. . exported "SYSTEM"."REPCAT$_RESOLUTION_METHOD"        5.835 KB      19 rows             
. . exported "SYSTEM"."REPCAT$_TEMPLATE_STATUS"          5.484 KB       3 rows             
. . exported "SYSTEM"."REPCAT$_TEMPLATE_TYPES"           6.289 KB       2 rows             
. . exported "SYSTEM"."DEF$_AQCALL"                          0 KB       0 rows             
...
     Completed 56 SCHEMA_EXPORT/TABLE/TABLE_DATA objects in 1 seconds
Master table "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_01 is:
  /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/log/expdat.dmp
Job "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully completed at Wed Dec 11 18:55:27 2013 elapsed 0 00:00:45

Fazit:

Die Verwendung des metrics-Parameters führt zu einem detaillierteren Logging des DataPump, das für jeden Objekttyp Anzahl der abgearbeiteten Objekte und Laufzeit der Einzelschritte protokolliert. Mittels dieser Zusatzinformationen sind bereits anhand des Logfiles z.B.  Kontrollen möglich, ob

  • die Anzahl der erwarteten Objekte mit der Anzahl der tatsächlichen erwarteten konform ist
  • ggf. semantische Fehler in der Formulierung von include- oder exclude-Patterns vorliegen
  • die Laufzeit gegenüber früheren oder vergleichbaren DataPump-Läufen erheblich abweicht
  • welche Wartezeit noch bis zur Bereitstellung bestimmter Objekttypen einzuplanen ist
  • mögliche Performance- oder Lastprobleme auf der Datenbank vorliegen

Aufgrund der Vorteile und basierend auf der Annahme, dass das erweiterte Logging keinen spürbaren Einfluss auf die Laufzeit der DataPump Ex- oder Importe haben dürfte, sollte dieser Parameter Einzug in alle Ihre DataPump-Skripts halten.