データ・ポンプでは、すべての使用可能なリソースを最大限に使用して、スループットの最大化およびジョブ経過時間の最小化が行われるように設計されています。これを実現するには、システムでCPU、メモリー、I/O間でバランスがとられている必要があります。また、パフォーマンス・チューニングの標準原理が適用されます。たとえば、ダンプ・ファイル・セット内のダンプ・ファイルの書込みおよび読取りはパラレルで行われるため、最大のパフォーマンスを得るにはそれらのダンプ・ファイルを個別のディスクに常駐させる必要があります。また、それらのダンプ・ファイルは、ソースまたはターゲットの表領域が常駐するディスクとは別のディスクに常駐させる必要があります。
パフォーマンス・チューニングを行う場合は、パフォーマンスとリソース消費のバランスをとることが必要です。
この項の内容は、次のとおりです。
データ・ポンプ・エクスポートおよびインポート・ユーティリティを使用すると、ジョブごとのリソース消費量を動的に増減できます。これを実行するには、データ・ポンプのPARALLEL
パラメータを使用してそのジョブの並列度を指定します。最大のスループットを得るには、PARALLEL
をCPU数の2倍(CPUごとに2つのワーカー)以下に設定してください。
並列度を増加すると、CPU使用量、メモリー使用量およびI/O帯域幅使用も増大します。これらのリソースの使用可能な量が適切であることを確認してください。必要に応じて、異なるディスク・デバイスまたはチャネル間にファイルを分散して、必要なI/O帯域幅を確保できます。
並列度を最大にするには、並列度ごとに少なくとも1つのファイルを提供する必要があります。これを簡単に行うには、たとえばfile%u.dmp
のように、ファイル名に置換変数を使用します。ただし、ディスク設定によっては(たとえば、単純な非ストライプ・ディスクなどの場合)、すべてのダンプ・ファイルを1つのデバイスに配置しない場合があります。その場合は、置換変数を使用して複数のファイル名を指定し、それぞれのファイルを別々のディレクトリ(別々のディスク)に配置します。高速CPUと高速ディスクを使用する場合でも、CPUとディスク間のパスは、持続可能な並列度の量を制約する要因になることがあります。
データ・ポンプのPARALLEL
パラメータは、Oracle Database 11g以上のEnterprise Editionでのみ有効です。
圧縮および暗号化に関連するデータ・ポンプ・パラメータを使用すると、特にネットワーク・モードで実行されるジョブの場合にパフォーマンスが向上する可能性があります。ただし、RAWデータの変換を実行するために必要な追加のCPUリソースが原因で、パフォーマンスが低下する場合もあることに注意してください。両者はトレードオフの関係にあります。
12.1より前のリリースで作成され、統計データが大量に含まれるデータ・ポンプ・エクスポート・ダンプ・ファイルでは、インポート操作で大量のメモリーを消費する場合があります。インポート操作時のメモリーの不足を回避するには、インポートの開始前に十分にメモリーを割り当てる必要があります。必要とされるメモリーの正確な量は、インポートするデータの量、使用しているプラットフォーム、または使用する構成に固有の要素によって異なります。
この問題にまとめて対処するには、エクスポートまたはインポート操作のいずれかの際にデータ・ポンプのEXCLUDE=STATISTICS
パラメータを設定します。DBMS_STATS
PL/SQLパッケージを使用すると、インポートが完了した後にターゲット・データベースで統計を再生成することができます。