AWS S3からAutonomous AI Databaseへのデータのロード

この例では、Amazon S3オブジェクト・ストレージからAutonomous AI Databaseにデータをロードする方法を示します。

Autonomous AI Databaseへのデータ・ロードを実行するには、次のような様々なオプションがあります。

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

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

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

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

  • この例で説明するSQLコマンドの使用。

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

Amazon S3バケット内のオブジェクトにアクセスするには、ユーザー・アカウント認証用のAWSアクセス資格証明とオブジェクトURLが必要です。

Amazon S3バケットからデータをロードするには:

  1. Autonomous AI DatabaseでAWSユーザー・アカウントの資格証明を作成します。

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

AWS S3からのデータのロードの準備

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

前提条件として、インポートできるAmazon S3バケットにdata.txtなどのデータファイルが存在します。この例のサンプル・ファイルの内容は次のとおりです。

1,Direct Sales
2,Tele Sales
3,Catalog
4,Internet
5,Partners

AWS側で、AWSアカウントにログインし、次の操作を行います。

  1. Amazon S3バケットのAWS IAMユーザーにアクセス権限を付与します。

    詳細は、ユーザー・ポリシーによるバケットへのアクセスの制御を参照してください。

  2. ユーザーのアクセス・キーを作成します。

    詳細は、IAMユーザーのアクセス・キーの管理を参照してください。

  3. Amazon S3バケットに格納されているデータファイルのオブジェクトURLを取得します。

    詳細は、Amazon S3バケットへのアクセスとリストを参照してください。

AWS S3からデータをロードするステップ

次のステップを実行して、Amazon S3からAutonomous AI Databaseにデータをロードします。

  1. 自律型AIデータベースにAWSアクセス資格証明を格納し、資格証明名を指定します。これにより、データベースはAWSユーザー・アカウントで認証し、S3バケット内のアイテムにアクセスできます。

    SET DEFINE OFF
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'AWS_CRED_NAME',
        username => 'username',
        password => 'password'
      );
    END;
    /

    ノート

    ノート:ここでは、usernameはAWSのアクセス・キーIDで、passwordはユーザーのアクセス・キーになります。

    パラメータの詳細は、「CREATE_CREDENTIALプロシージャ」を参照。

    Amazonリソース名(ARN)を有効にした場合、AWSリソースにアクセスするための資格証明の作成は必要ありません。詳細は、「Amazonリソース・ネーム(ARN)を使用したAWSリソースへのアクセス」を参照してください。

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

    SELECT * FROM DBMS_CLOUD.LIST_OBJECTS('AWS_CRED_NAME', ' https://aws-bucket-01.s3.amazonaws.com/');
  2. データをロードする表をデータベースに作成します。

    CREATE TABLE mytable (id NUMBER, name VARCHAR2(64));
  3. Amazon S3バケットからAutonomous AI Databaseにデータをインポートします。

    表名およびAWS資格証明名の後にS3オブジェクトURLを指定します。

    BEGIN
          DBMS_CLOUD.COPY_DATA(
              table_name => 'mytable',
              credential_name => 'AWS_CRED_NAME',
              file_uri_list => https://aws-bucket-01.s3.amazonaws.com/data.txt',
              format => json_object('delimiter' value ',')
          );
    END;
    /

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

Amazon S3からAutonomous AI Databaseにデータを正常にインポートしました。この文を実行して、表内のデータを検証できます。

SELECT * FROM mytable;
ID  NAME
--  --------------
 1  Direct Sales
 2  Tele Sales
 3  Catalog
 4  Internet
 5  Partners

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