デフォルト: 1
用途
エクスポート・ジョブのために動作するアクティブな実行プロセスの最大数を指定します。この実行セットはワーカー・プロセスおよびパラレルI/Oサーバーの処理の組合せで構成されています。パラレル問合せ操作で問合せコーディネータとして動作するマスター制御プロセスおよびワーカー・プロセスは、この合計数には加算されません。
このパラメータを使用して、リソース消費と経過時間のバランスをとることができます。
構文および説明
PARALLEL=integer
integer
に指定する値は、ダンプ・ファイル・セット内のファイル数以下にする必要があります(または、ダンプ・ファイル指定に置換変数を指定する必要があります)。アクティブなワーカー・プロセスまたはI/Oサーバー・プロセスは、1つのファイルに対してそれぞれが同時に排他的に書込みを行うため、ファイル数が不足していると、逆効果になります。ファイルの待機中に、一部のワーカー・プロセスがアイドル状態になるため、そのジョブの全体的なパフォーマンスが低下します。また、パラレルI/Oサーバー・プロセスを共有で実行しているメンバーが出力用ファイルを取得できない場合は、ORA-39095
エラーを返してエクスポート操作が停止します。いずれの場合も、データ・ポンプ・エクスポート・ユーティリティを使用してジョブに接続することによって、問題を解決できます。接続後、対話方式モードで、ADD_FILE
コマンドを使用してファイルを追加し、ジョブが停止した場合は、ジョブを再開します。
ジョブの実行中にPARALLEL
の値を増減するには、対話方式コマンド・モードを使用します。並列度を下げても、ジョブに関連付けられたワーカー・プロセスは減少しません。任意の時点で実行されるワーカー・プロセスの数が減少します。また、プロセス数が減少する前に、継続中の処理が適正な完了ポイントに到達する必要があります。そのため、値を小さくした効果の確認に時間がかかる場合があります。アイドル状態のワーカーは、ジョブが終了するまで削除されません。
パラレル実行できる処理が存在する場合、並列度の増加はすぐに反映されます。
Oracle RAC環境でのエクスポートにおけるPARALLELの使用
Oracle Real Application Clusters(Oracle RAC)環境内でPARALLEL=1
としてエクスポート操作を実行すると、すべてのデータ・ポンプ・プロセスは、ジョブが開始されたインスタンス上に配置されます。そのため、ディレクトリ・オブジェクトは、そのインスタンスのローカル記憶域を示すことができます。
PARALLEL
を1より大きな値に設定してエクスポート操作を実行する場合は、ジョブが開始されたインスタンス以外のインスタンスにもデータ・ポンプ・プロセスを置くことができます。そのため、ディレクトリ・オブジェクトは、Oracle RACのすべてのインスタンスからアクセス可能な共有記憶域を示す必要があります。
制限事項
このパラメータは、Oracle Database 11g以上のEnterprise Editionでのみ有効です。
表および表パーティションを、パラレルで(PQスレーブを使用して)エクスポートするには、DATAPUMP_EXP_FULL_DATABASE
ロールが必要です。
例
次に、PARALLEL
パラメータの使用例を示します。
> expdp hr DIRECTORY=dpump_dir1 LOGFILE=parallel_export.log JOB_NAME=par4_job DUMPFILE=par_exp%u.dmp PARALLEL=4
この例では、hr
スキーマのスキーマ・モード・エクスポート(デフォルトのモード)が実行され、ディレクトリ・オブジェクトdpump_dir1
に指定されたパスに、最大で4つのファイルが作成されます。