Oracle Data Pumpの概要


Oracle Data Pumpは、Oracle Databaseの独自の新機能です。 新しいパブリック・インタフェース・パッケージであるDBMS_DATAPUMPは、Oracleデータベース間でデータとメタデータを高速移動するためのサーバー側のインフラストラクチャを提供します。 これは、高パフォーマンスのデータ移動によってデータベース管理者の作業時間が大幅に短縮される、大規模データベースやデータウェアハウス環境に最適です。

Data Pumpではスループットを最大化するために、アンロードとロードの複数のパラレル・ストリームを自動的に管理します。 並列度は、オンザフライで調整できます。 WebベースのEnterprise Managerエクスポート/インポート・インタフェースに加え、新しく、使いやすいExportおよびImportユーティリティ(expdpおよびimpdp)が用意されています。

Data PumpはOracle Database の不可欠な機能であり、すべての構成で使用できます。 ただし、パラレル処理機能はEnterprise Editionでのみ使用できます。

おもな特長

 

高速パフォーマンス

新しいData Pump ExportおよびImportユーティリティで実行される操作は、通常、これまでのExportおよびImportユーティリティで実行される操作に比べてはるかに高速です。 Data Pump Exportでは、アンロードのダイレクト・パス方式が使用された場合、データ・アンロードの単一ストリームはこれまでのExportに比べて約2倍高速です。 これは、ダイレクト・パスAPIが、以前よりさらに効率的になるように変更されたためです。 並列度によっては、パフォーマンスがさらに向上する場合があります。

Data Pump Importでは、データ・ロードの単一ストリームはこれまでのImportに比べて約15~45倍高速です。 これは、これまでのImportが従来のモードの挿入のみを使用するのに対して、Data Pump Importはロードのダイレクト・パス方式を使用するためです。 Exportと同様に、並列度によっては、パフォーマンスがさらに向上する場合があります。

Data Pumpの最大パフォーマンスを実現するのにデータベース・チューニングは必要ありません。 初期化パラメータは標準の設定で十分です。

管理の再開の強化

すべてのData Pump操作には、Data Pumpのジョブを実行しているユーザーのスキーマで作成されたマスター表が割り当てられます。 このマスター表には、エクスポートまたはインポートされたすべてのオブジェクトの現在の状態や、ダンプ・ファイル・セット内の場所など、そのジョブのすべての側面に関する情報が保持されています。

ジョブの計画停止または計画外停止が発生した場合、Data Pumpは、その時点でどのオブジェクトが処理されていたか、および正常に完了したかどうかを認識できます。 そのため、ジョブの停止中にマスター表とダンプ・ファイル・セットが変更されずに残されている限り、Data Pumpの停止されたすべてのジョブを、データを失うことなく再開できます。

ファイングレイン・オブジェクト選択

Data Pumpのジョブには、あらゆるタイプのオブジェクト、およびあるタイプ内のオブジェクトの任意のサブセットを除外したり、含めたりできます。 次のクライアント・パラメータが使用されます。

  • EXCLUDEパラメータは、オブジェクトやオブジェクト・タイプを指定することによってエクスポートおよびインポートされたメタデータを、現在の操作から除外されるようにフィルタリングします。 オプションの名前修飾子を使用すると、指定した各オブジェクト・タイプ内でさらに細かく選択できます。
  • INCLUDEパラメータは、オブジェクトやオブジェクト・タイプを指定することによってエクスポートおよびインポートされたメタデータを、現在の操作に含まれるようにフィルタリングします。 オプションの名前修飾子を使用すると、指定した各オブジェクト・タイプ内でさらに細かく選択できます。
  • CONTENTパラメータは、メタデータのみ、データのみ、またはその両方のいずれかをエクスポートまたはインポートするかを指定します。
  • QUERYパラメータは、エクスポート・ジョブ内のすべての表または特定の表に適用される、SQL SELECT文の句を指定することによってデータをフィルタリングします。

機能の監視および見積り

クライアントによってログ・ファイルに出力される標準の進捗メッセージやエラー・メッセージに加えて、新しいインタラクティブなSTATUSコマンドは、ジョブの累積ステータスを現在の操作の説明とともに表示します。 また、見積もられたジョブが完了した割合も返されます。 さらにユーザーは、特定の間隔での自動ステータス更新の期間(秒単位)を指定することもできます。

実行中のジョブには複数のクライアントを接続できるため、ユーザーは仕事中にジョブを開始した後、切断して帰宅し、自宅でそのジョブに再接続して、夜間に監視できます。

すべてのエクスポート・ジョブの開始に、アンロードされるすべてのデータの概略の量が判定される見積りフェーズが含まれるようになりました。 これにより、ユーザーは、ダンプ・ファイル・セットに十分な量のディスク領域を割り当てることができます。

ネットワーク・モード

Data Pump ExportおよびImportはどちらも、ジョブのソースがリモートのOracleインスタンスであるネットワーク・モードをサポートしています。 ネットワーク経由でインポートを実行する場合は、ソースがダンプ・ファイル・セットではなく、別のデータベースであるため、関連するダンプ・ファイルは存在しません。

ネットワーク経由でエクスポートを実行する場合は、ソースを別のシステム上の読取り専用データベースにできます。 ダンプ・ファイルは、ローカル(ネットワーク経由でない)エクスポートの場合と同様に、ローカル・システムで書き出されます。

まとめ

Oracle Data Pumpは、データベース間でのバルク・データとメタデータのきわめて効率的な移動のためのサーバー側のインフラストラクチャ、および高速でパラレルの新しいExportおよびImportユーティリティを提供します。 データベース管理者は、データベース間でデータとメタデータを以前よりも高速かつ簡単に移動できるようになりました。


>> Data Pump関連資料はこちらにあります>>
 Database ユーティリティ