Google Cloud StorageからのAutonomous Databaseへのデータのロード

この例では、Google Cloud StorageからAutonomous Databaseにデータをロードする方法を示します。

Autonomous Databaseへのデータ・ロードを実行する様々なオプションがあります。次に例を示します:

  • UIオプションの使用: Data Studioロード・ツールのユーザー・インタフェースを使用して、クラウド・ストアの場所の資格証明を作成し、データを含むファイルを選択して、データ・ロード・ジョブを実行できます。

    「クラウド・ストレージからのデータのロード」を参照してください

  • Rest Data Services APIの使用: Data Studioロード・ツールAPIを使用して、クラウド・ストアの場所へのリンクを作成し、データ・ロード・ジョブを実行できます。

    「PL/SQLでのData Studioデータ・ロードAPIの使用」を参照してください

  • この例で説明するように、SQLコマンドを使用します。

これらのすべてのメソッドは、データのロードに同じPL/SQLパッケージDBMS_CLOUDを使用します。ただし、Data StudioにはSQLコマンドよりも追加の利点があります。ソースの分析および表定義の作成に役立つだけでなく、検証チェックも実行します。

ユーザー・アカウント認証用のGoogle Cloud Platform (GCP)アクセス資格証明と、Google Cloud Storageバケット内のオブジェクトにアクセスするためのオブジェクトURLが必要です。

Google Cloud Storageバケットからデータをロードするには:
  1. Autonomous DatabaseでGCPユーザー・アカウントの資格証明を作成します。

  2. Google Cloud Storageバケットからデータベースにデータをコピーします。

トピック

Google Cloud Storageからのデータのロードの準備

前提条件を確認し、Google Cloud Storageからデータをロードする準備をします。

前提条件

データ・ファイル(たとえば、gcp-data.txt)は、インポートできるGoogle Cloud Storageバケットに存在します。この例のサンプル・ファイルには、次の内容が含まれています。
1,GCP Direct Sales
2,GCP Tele Sales
3,GCP Catalog
4,GCP Internet
5,GCP Partners

Google側で、Google Cloud Platform (GCP)アカウントにログインし、次の操作を行います。

  1. ユーザーのアクセス・キーを作成します。
    詳細は、HMACキーを参照してください。
  2. Google Cloud Storageバケットに格納されているデータ・ファイルのオブジェクトURLを取得します。
    詳細は、リクエスト・エンドポイントを参照してください。

Google Cloud Storageからデータをロードする手順

Google Cloud StorageからAutonomous Databaseにデータをロードするには、次のステップを実行します。

  1. Google Cloud Platform (GCP)アクセス資格証明をAutonomous Databaseに格納し、資格証明名を指定します。これにより、データベースはGCPユーザー・アカウントで認証し、Google Cloud Storageバケット内のアイテムにアクセスできます。
    SET DEFINE OFF
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'GOOGLE_CRED_NAME',
        username => 'username',
        password => 'password'
      );
    END;
    /
    ノート

    ここで、ユーザー名はGoogleアカウント・アクセス・キーで、パスワードはアクセス・キー・シークレットです。

    パラメータの詳細は、CREATE_CREDENTIALプロシージャを参照してください。

    Googleサービス・アカウントを有効にする場合、Google Cloud Platform (GCP)にアクセスするための資格証明を作成する必要はありません。詳細は、Googleサービス・アカウントを使用したGoogle Cloud Platformリソースへのアクセスを参照してください。

    オプションで、この例に示すように、Google Cloud Storageバケットへのアクセスをテストできます。

    SELECT * FROM DBMS_CLOUD.LIST_OBJECTS('GOOGLE_CRED_NAME', 'https://bucketname.storage.googleapis.com/');
    
  2. データをロードする表をデータベースに作成します。
    CREATE TABLE mygoogletable (id NUMBER, name VARCHAR2(64));
    
  3. Google Cloud StorageバケットからAutonomous Databaseにデータをインポートします。
    表名とGCP資格証明名を指定し、その後にGoogle Cloud StorageオブジェクトURLを指定します。
    BEGIN
          DBMS_CLOUD.COPY_DATA(
              table_name => 'mygoogletable',
              credential_name => 'GOOGLE_CRED_NAME',
              file_uri_list => 'https://bucketname.storage.googleapis.com/gcp-data.txt',
              format => json_object('delimiter' value ',')
          );
    END;
    /

    パラメータの詳細は、COPY_DATAプロシージャを参照してください。

Google Cloud StorageからAutonomous Databaseにデータを正常にインポートしました。この文を実行して、表内のデータを検証できます。
SELECT * FROM mygoogletable;
ID  NAME
--  –-------------
 1  GCP Direct Sales
 2  GCP Tele Sales
 3  GCP Catalog
 4  GCP Internet
 5  GCP Partners

データのロードの詳細は、クラウド内のファイルからのデータのロードを参照してください。