Amazon S3 上のファイルからのデータのロード

以前に Amazon S3 上にアップロードしたデータ・ファイルからクラウド・データベースにデータをロードできます。このデータ・ファイルは、ホーム・ディレクトリーのフリー・スペースの 80% を超える大きさであってはなりません。

ローカル・データ・ファイルからクラウド・データベースにデータをロードするには、次のステップを実行します。

データ・ファイルの作成

データをロードできるようにするには、コンマ区切り (CSV) ファイルのように区切り文字で区切られているファイルにデータを保存する必要があります。

区切り文字で区切られた形式のファイルを作成するには、データベース・ユーティリティーを使用して、データ・ストアまたは DBMS からファイルにデータを抽出します。 各データ・ファイルに含めることができるのは、1 つの表のデータのみです。

ヒント: 複数のデータ・ファイルを作成している場合、ご使用のデータベースのターゲット表にファイルを自動的にマップするには、ファイル名に schema.table という形式を使用します。例えば、FRUIT.GRAPES.gz という名前のファイルを作成したあとのロード処理時には、このファイルはデータベースの FRUIT スキーマの GRAPES 表に自動的にマップされます。
DBMS 詳細 詳しい説明
Oracle Oracle Application Express® などのユーティリティーを使用して、Oracle からデータをアンロードします。 アンロード処理に関する Oracle 資料: Using Oracle Application Express Utilities
MySQL MySQL Workbench や phpMyAdmin などのユーティリティーを使用して、MySQL からデータをエクスポートします。 エクスポート処理に関する MySQL 資料: Data export
DB2® コマンド行ユーティリティーを使用して Db2 からデータをエクスポートします。 エクスポート処理に関する Db2 資料: Exporting data

Amazon S3 へのファイルの移動

データ・ファイルを Amazon S3 に移動するには、S3 ブラウザー (http://s3browser.com/download.php および https://s3browser.com/buypro.php から入手可能) を使用します。 ファイルを含めるには、S3 ブラウザーでバケットを作成する必要があります。複数のファイルまたはファイルのフォルダーをご使用のファイル・システムから Amazon S3 に移動できます。大量のデータがある場合、Amazon S3 に用意されているデータ配送オプションを使用して、Amazon が Amazon S3 にデータをロードできるようにします。

参照トピック:

Amazon S3 資料: Get Started With Amazon Simple Storage Service

Amazon S3 での DataStage の使用

IBM® InfoSphere® DataStage® を使用してデータベースからデータを抽出したり、そのデータを Amazon S3 などのプラットフォームに移動したりすることもできます。DataStage Designer クライアントには、データ管理ジョブの基本的な構成要素を 形成するツールが入ったパレットがあります。

DataStage の並列処理

DataStage を使用して、ソース・データ・オブジェクトとターゲット・データ・オブジェクトが含まれたジョブを設計および実行できます。 ソース・データ・オブジェクトはデータベースに関連付けられ、抽出する表名とメタデータを指定します。ターゲット・データ・オブジェクトは Amazon S3 に関連付けられ、ターゲット・データを格納するデータ・ファイルの名前と場所を指定します。

参照トピック:

DataStage 資料: Designing DataStage and QualityStage® jobs

ターゲット表の作成

データベースにデータをロードする前に、データ用のターゲット表を作成する必要があります。ターゲット表定義は、データ・ファイル内のデータの構造およびデータ・タイプと一致している必要があります。

以下のいずれかの方法でターゲット表を作成できます。
  • Db2® が生成した SQL DDL ステートメントを使用して、データが格納された区切り文字で区切られているテキスト・ファイルに基づいて表を作成する。
  • 自分で SQL DDL ステートメントを記述して表を作成する。 DDL ステートメントの作成に特定のアプリケーションを使用しない場合は、IBM InfoSphere Data Architect を使用できます。 詳しくは、InfoSphere Data Architect Knowledge Center の Generating DDL scripts を参照してください。

Amazon S3 からのデータのロード

Amazon S3 からデータをロードするには、以下のいずれかの方式を選択します。
  • Web コンソールから。「ロード」 > 「Amazon S3」Web コンソール を使用して Amazon S3 からデータをロードするには、ソースとして Amazon S3 を選択します。 セグメント化されたファイルをロードする場合は、ロードするファイルを選択するときに、関連付けられたマニフェスト・ファイルを選択します。
  • 外部のテーブルから直接。次に、SQL ステートメントの例を示します。
    INSERT INTO <table-name> SELECT * FROM EXTERNAL '<mys3file.txt>' USING
      (CCSID 1208 s3('s3.amazonaws.com', 
      '<S3-access-key-ID>',
      '<S3-secret-access-key>', 
      '<my_bucket>'
         )
      )
  • パフォーマンスを向上させるために、Db2 LOAD コマンドを使用して、Amazon S3 からデータをロードすることもできます。例えば、次のコマンドを使用します。
    CALL SYSPROC.ADMIN_CMD('LOAD FROM "S3::<amazon-s3-URL>::<s3-access-key-id>::<s3-secret-access-key>:
    :<s3-bucket-name>::<path-to-data-file>" OF <filetype> <additional-load-options> INTO <table-name>)
    次に、Db2 LOAD コマンドの使用例を示します。
    CALL SYSPROC.ADMIN_CMD('load from "S3::s3-us-west-2.amazonaws.com::<s3-access-key-id>:
    :<s3-secret-access-key>::ibm-state-store::bdidata2TB/web_site.dat" of DEL modified by codepage=1208 
    coldel0x7c WARNINGCOUNT 1000 MESSAGES ON SERVER INSERT into BDINSIGHTS2.web_site ');

    サポートされているコマンド・オプションについては、LOAD コマンドを参照してください。