機械翻訳について

Autonomous Data Warehouse上のOracle Data Pumpを使用したデータのインポート

Oracle Data Pumpは、OracleデータベースとAutonomous Data Warehouseとの間の非常に高速の大量のデータおよびメタデータの移動を提供します。

Data Pump Importでは、Oracle Cloud Infrastructure Object Storage、Microsoft Azure、AWS S3およびOracle Cloud Infrastructure Object Storage ClassicにあるData Pumpファイルからデータをインポートできます。 Cloud Object Storeにデータを保存し、Oracle Data Pumpを使用してAutonomous Data Warehouseにデータをロードすることができます。

Autonomous Data Warehouseにインポートする既存のOracle Databaseをエクスポート

Oracle Data Pumpエクスポートを使用して、既存のOracle DatabaseスキーマをAutonomous Data Warehouseにエクスポートするには、Oracle Data Pumpインポートを使用してエクスポートする必要があります。

Autonomous Data Warehouseへのより迅速かつ簡単な移行には、次のData Pump Exportパラメータを使用することをお薦めします:

exclude=index,cluster,indextype,materialized_view,materialized_view_log,materialized_zonemap,db_link
data_options=group_partition_table_data 
parallel=n
schemas=schema_name
dumpfile=export%u.dmp

Oracle Data Pumpエクスポートにはいくつかのエクスポート・モードがありますが、スキーマ・モードを使用してAutonomous Data Warehouseに移行することをお薦めします。 schemasパラメータを使用して、エクスポートするスキーマをリストすることができます。

移行を高速化するには、スキーマを複数のData Pumpファイルにエクスポートし、並列処理を使用します。 dumpfileパラメータを使用して、使用するダンプ・ファイル名の形式を指定することができます。 parallelパラメータを、少なくともAutonomous Data WarehouseデータベースにあるCPUの数に設定します。

excludeパラメータとdata_optionsパラメータを使用すると、Autonomous Data Warehouseで必要ないオブジェクト・タイプがエクスポートされず、表パーティションがグループ化されて、Autonomous Data Warehouseへのインポート時に速くインポートできるようになります。 既存の索引、マテリアライズド・ビューおよびマテリアライズド・ビュー・ログをAutonomous Data Warehouseに移行して手動で管理する場合は、それらのオブジェクト型も除外リストから削除できます。 同様に、既存のパーティション表を非パーティション表に変換せずにそのまま移行する場合、手動で管理するには、パーティション表をそのままエクスポートするdata_options引数を削除します。 詳細は、「パーティション、索引およびマテリアライズド・ビューの管理」を参照してください。

encryption_pwd_prompt=yes Oracle Data Pumpエクスポートでは、ダンプ・ファイルを暗号化するための暗号化パスワードを入力するように求められます。

次の例では、16個のCPUを持つAutonomous Data Warehouseデータベースに移行するために、ソースOracle DatabaseからSHスキーマをエクスポートします:

expdp sh/sh@orcl \
exclude=index,cluster,indextype,materialized_view,materialized_view_log,materialized_zonemap,db_link \
data_options=group_partition_table_data  \
parallel=16 \
schemas=sh \
dumpfile=export%u.dmp \
encryption_pwd_prompt=yes

注意:

expdpによるエクスポートでencryption_pwd_prompt=yesパラメータを使用する場合は、encryption_pwd_prompt=yesもインポートで使用し、impdpプロンプトで同じパスワードを入力してダンプ・ファイルを復号化します(エクスポート時に指定したパスワードを記憶してください)。 暗号化パスワードの最大長は128バイトです。

要件に応じて、圧縮などの他のData Pump Exportパラメータを使用できます。 Oracle Data Pumpエクスポートの詳細については、Oracle Databaseユーティリティを参照してください。

Oracle Data Pump Version 18.3以降を使用したデータのインポート

データ・ポンプ・ファイルからAutonomous Data Warehouseにデータをインポートする場合は、最新のOracle Data Pumpバージョンを使用することをお薦めします。

プラットフォームの「Oracle Instant Clientダウンロード」からOracle Data Pumpを含む最新バージョンのOracle Instant Clientをダウンロードします。 Oracle Instant Clientをダウンロードした後に必要なインストール・ステップは、プラットフォームのインストール・ダウンロード・ページのインストール・ステップを参照してください。

Oracle Data Pumpバージョン18.3以降では、「資格証明」引数によって、ソース・ファイルに使用しているCloud Object Storageサービスにデータ・ポンプが認証されます。 dumpfile引数は、Data PumpファイルのURLのカンマ区切りのリストです。

Oracle Data Pumpで、ソース・ファイルがOracle Cloud Infrastructure Object Storageに存在する場合は、Oracle Cloud InfrastructureネイティブURIまたはSwift URIを使用できます。 これらのファイルURI形式の詳細は、「DBMS_CLOUDパッケージ・ファイルのURI形式」を参照してください。

Oracle Data Pumpでのインポートとcredentialパラメータの設定

  1. DBMS_CLOUD.CREATE_CREDENTIALを使用してCloud Object Storage資格証明を保管します。 次に例を示します。
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adwc_user@example.com',
        password => 'password'
      );
    END;
    /

    異なるCloud Object Storageサービスの資格証明の詳細については、「CREATE_CREDENTIALプロシージャ」を参照してください。

  2. Run Data Pump Import dumpfileパラメータをCloud Object StorageのファイルURLのリストに設定し、credentialパラメータを前のステップで作成した資格証明の名前に設定します。 次に例を示します。
    impdp admin/password@ADWC1_high \       
         directory=data_pump_dir \       
         credential=def_cred_name \      
         dumpfile= https://objectstorage.us-ashburn-1.oraclecloud.com/n/adwc/b/adwc_user/o/export%u.dmp \
         parallel=16 \
         encryption_pwd_prompt=yes \
         partition_options=merge \ 
         transform=segment_attributes:n \
         transform=dwcs_cvt_iots:y transform=constraint_use_default_index:y \
         exclude=index,cluster,indextype,materialized_view,materialized_view_log,materialized_zonemap,db_link
    

    注意:

    expdpを使用したエクスポートでencryption_pwd_prompt=yesパラメータを使用した場合、encryption_pwd_prompt=yesを使用して、エクスポート時に指定したimpdpプロンプトに同じパスワードを入力します。

    最良のインポート・パフォーマンスを得るには、インポート接続でHIGHデータベース・サービスを使用し、PARALLELパラメータをAutonomous Data Warehouse内のCPUs数に設定します(例を参照)。

    データ・ポンプ・インポートを実行するために接続するデータベース・サービス名については、「Autonomous Data Warehouseの並行性と優先度の管理」を参照してください。

    異なるCloud Object Storageサービスのダンプ・ファイルのURL形式については、「DBMS_CLOUDパッケージ・ファイルのURI形式」を参照してください。

    この例は、Autonomous Data Warehouseにインポートするための推奨パラメータを示しています。

    この例では、次のようになります。

    • パーティション表は、非パーティション表に変換されます。

    • 表のストレージ属性は無視されます。

    • 索引構成表は通常表に変換されます。

    • 主キーと一意キー制約用に作成されたインデックスは、制約名に変更されます。

    • 索引、クラスタ、索引タイプ、マテリアライズド・ビュー、マテリアライズド・ビュー・ログおよびゾーン・マップは、データ・ポンプ・インポート中に除外されます。

    注意:

    全インポートを実行したり、他のユーザーが所有するオブジェクトをインポートするには、DATAPUMP_CLOUD_IMPのロールが必要です。

    Autonomous Data Warehouseの許可されていないオブジェクトについては、「SQLコマンドの制限事項」を参照してください。

    Oracle Data Pumpインポート・パラメータの詳細については、Oracle Databaseユーティリティを参照してください。

Oracle Data Pump (バージョン12.2.0.1および以前)を使用したデータのインポート

データ・ポンプ・ファイルのデータをAutonomous Data Warehouseにインポートするには、データ・ポンプのクライアント・バージョン12.2.0.1以前でdefault_credentialパラメータを設定します。

データ・ポンプ・インポートのバージョン(12.2.0.1)以前に「資格証明」パラメータがありません。 古いバージョンのData Pump Importを使用している場合は、Autonomous Data Warehouseのデフォルトの資格証明プロパティを定義し、dumpfileパラメータにdefault_credentialキーワードを使用する必要があります。

以前のOracle Data Pumpバージョンでのインポートとdefault_credentialの設定

  1. DBMS_CLOUD.CREATE_CREDENTIALを使用してCloud Object Storage資格証明を保管します。 次に例を示します。
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adwc_user@example.com',
        password => 'password'
      );
    END;
    /

    異なるCloud Object Storageサービスの資格証明の詳細については、「CREATE_CREDENTIALプロシージャ」を参照してください。

  2. 資格証明を「Autonomous Data Warehouseのデフォルト資格証明として設定」ADMINユーザーとして追加します。 次に例を示します。:
    ALTER DATABASE PROPERTY SET DEFAULT_CREDENTIAL = 'ADMIN.DEF_CRED_NAME'
  3. Run Data Pump dumpfileパラメータをCloud Object StorageのファイルURLのリストに設定してインポートし、default_credentialキーワードを設定します。 次に例を示します。
    impdp admin/password@ADWC1_high \      
         directory=data_pump_dir \
         dumpfile=default_credential:https://objectstorage.us-ashburn-1.oraclecloud.com/n/adwc/b/adwc_user/o/export%u.dmp \
         parallel=16 \
         encryption_pwd_prompt=yes \      
         partition_options=merge \ 
         transform=segment_attributes:n \      
         exclude=index,cluster,indextype,materialized_view,materialized_view_log,materialized_zonemap,db_link
    

    注意:

    expdpを使用したエクスポートでencryption_pwd_prompt=yesパラメータを使用した場合、encryption_pwd_prompt=yesを使用して、エクスポート時に指定したimpdpプロンプトに同じパスワードを入力します。

    最高のインポート・パフォーマンスを得るには、インポート接続にHIGHデータベース・サービスを使用し、例に示すようにPARALLELパラメータをAutonomous Data WarehouseのCPU数に設定します。

    データ・ポンプ・インポートを実行するために接続するデータベース・サービス名については、「Autonomous Data Warehouseの並行性と優先度の管理」を参照してください。

    異なるCloud Object Storageサービスのダンプ・ファイルのURL形式については、「DBMS_CLOUDパッケージ・ファイルのURI形式」を参照してください。

    この例は、Autonomous Data Warehouseにインポートするための推奨パラメータを示しています。

    この例では、次のようになります。

    • パーティション表は、非パーティション表に変換されます。

    • 表のストレージ属性は無視されます。

    • 索引、クラスタ、索引タイプ、マテリアライズド・ビュー、マテリアライズド・ビュー・ログおよびゾーン・マップは、データ・ポンプ・インポート中に除外されます。

注意:

全インポートを実行したり、他のユーザーが所有するオブジェクトをインポートするには、DATAPUMP_CLOUD_IMPのロールが必要です。

Autonomous Data Warehouseの許可されていないオブジェクトについては、「SQLコマンドの制限事項」を参照してください。

Oracle Data Pumpインポート・パラメータの詳細については、Oracle Databaseユーティリティを参照してください。

データ・ポンプ・インポートのログ・ファイルへのアクセス

Data Pump Import操作のログ・ファイルは、データ・ポンプのimpdp directoryパラメータで指定したディレクトリに格納されます。

ログ・ファイルにアクセスするには、DBMS_CLOUD.PUT_OBJECTプロシージャを使用してログ・ファイルをCloud Object Storageに移動する必要があります。 たとえば、次のPL/SQLブロックは、ファイルimport.logをCloud Object Storageに移動します。

BEGIN
  DBMS_CLOUD.PUT_OBJECT(
    credential_name => 'DEF_CRED_NAME',
    object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/n/adwc/b/adwc_user/o/import.log',
    directory_name  => 'DATA_PUMP_DIR',
    file_name => 'import.log');
END;
/

詳細は、「DBMS_CLOUDサブプログラムの要約」を参照してください。