AWS Schema Conversion Tool を使用した FastLoad ジョブスクリプトの Amazon Redshift RSQL への変換
AWS Schema Conversion Tool(AWS SCT) を使用して Teradata FastLoad ジョブスクリプトを Amazon Redshift RSQL に変換できます。
Teradata FastLoad スクリプトは、複数のセッションを使用して Teradata データベースの空のテーブルにデータをロードする一連のコマンドです。Teradata FastLoad は一連の Teradata FastLoad コマンドと SQL ステートメントを処理します。Teradata FastLoad コマンドは、データ転送のセッション制御とデータ処理を行います。SQL ステートメントはテーブルを作成、管理、削除します。
AWS SCT は、Teradata FastLoad コマンドと SQL ステートメントを Amazon Redshift RSQL と互換性のある形式に変換します。Teradata データベースを Amazon Redshift に移行したら、変換されたこれらのスクリプトを使用して Amazon Redshift データベースにデータをロードできます。
トピック
FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加する
複数のスクリプトを単一の AWS SCT プロジェクトに追加できます。
FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加するには
-
AWS SCT で新しいプロジェクトを作成するか、既存のプロジェクトを開きます。詳細については、「AWS SCT でのプロジェクトの開始と管理」を参照してください。
-
メニューから [ソースを追加] を選択し、次に [Teradata] を選択してソースデータベースをプロジェクトに追加します。詳細については、「Teradata データベース」を参照してください。
-
メニューから [ターゲットを追加] を選択し、ターゲットの Amazon Redshift データベースを AWS SCT プロジェクトに追加します。
仮想 Amazon Redshift ターゲットデータベースプラットフォームを使用できます。詳細については、「AWS Schema Conversion Tool の仮想ターゲットへのマッピング」を参照してください。
-
ソース Teradata データベースと Amazon Redshift ターゲットを含む新しいマッピングルールを作成します。詳細については、「AWS Schema Conversion Tool での新しいデータ型のマッピング」を参照してください。
-
[ビュー] メニューで、[メインビュー] を選択します。
-
左側のパネルで、[スクリプト] ノードを展開します。
-
[FastLoad] を選択し、コンテキスト (右クリック) メニューを開いてから、[スクリプトのロード] を選択します。
-
ソース Teradata FastLoad ジョブスクリプトの場所を入力し、[フォルダを選択] を選択します。
AWS SCT[スクリプトのロード] ウィンドウが表示されます。
-
次のいずれかを行います:
Teradata FastLoad ジョブスクリプトに代替変数が含まれていない場合は、[代替変数なし] を選択し、[OK] を選択してスクリプトを AWS SCT プロジェクトに追加します。
Teradata FastLoad ジョブスクリプトに代替変数が含まれている場合は、代替変数を設定します。詳細については、「FastLoad ジョブスクリプトでの代替変数の設定」を参照してください。
Teradata FastLoad ジョブスクリプトの代替変数は、を使用して構成します。AWS SCT
Teradata FastLoad ジョブスクリプトには代替変数が含まれている場合があります。たとえば、代替変数を含む 1 つのスクリプトを使用して、データをさまざまなデータベースにロードできます。
代替変数を使用して FastLoad ジョブスクリプトを実行する前に、必ずすべての変数に値を割り当ててください。そのためには、Bash スクリプト、UC4 (Automic) など、他のツールやアプリケーションを使用できます。
AWS SCT は、値を割り当てた後にのみ代替変数を解決および変換できます。ソース Teradata FastLoad ジョブスクリプトの変換を開始する前に、必ずすべての代替変数に値を割り当ててください。AWS SCT を使用して Teradata スクリプトで代替変数を設定できます。
FastLoad ジョブスクリプトで代替変数を設定するには
ソース Teradata FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加するときに、[代替変数が使用される] を選択します。これらのスクリプトの追加についての詳細は、「FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加する」をご参照ください。
[変数フォーマットの定義] には、スクリプト内のすべての代替変数と一致する正規表現を入力します。
たとえば、代替変数の名前が
${で始まり、}で終わる場合は、\$\{\w+\}正規表現を使用します。ドル記号またはパーセント記号で始まる代替変数を照合するには、\$\w+|\%\w+正規表現を使用します。AWS SCT の正規表現は、Java の正規表現の構文に準拠しています。詳細については、Java ドキュメントの「java.util.regex クラスパターン
」を参照してください。 [OK] を選択してスクリプトを AWS SCT プロジェクトにロードし、[OK] を選択して [スクリプトのロード] ウィンドウを閉じます。
-
左側のパネルで、[スクリプト] ノードを展開します。[FastLoad] を選択し、スクリプトが保存されているフォルダを選択します。コンテキスト (右クリック) メニューを開き、[代替変数] で、[変数をエクスポート] を選択します。
また、1 つのスクリプトの代替変数をエクスポートすることもできます。スクリプトを含むフォルダを展開し、スクリプトを選択し、コンテキスト (右クリック) メニューを開き、[代替変数] で [変数をエクスポート] を選択します。
代替変数を保存するカンマ区切り値 (CSV) ファイルの名前を入力し、[保存] を選択します。
この CSV ファイルを開き、代替変数の値を入力します。
オペレーティング システムに応じて、AWS SCT は CSV ファイルに異なる形式を使用されます。ファイル内の値は、引用符で囲まれていてもいなくてもかまいません。代替変数の値には、ファイル内の他の値と同じ形式を使用してください。AWS SCT は、値が異なる形式の CSV ファイルはインポートできません。
CSV ファイルを保存します。
左側のパネルで、[スクリプト] ノードを展開します。[FastLoad] を選択し、スクリプトを選択します。コンテキスト (右クリック) メニューを開き、[代替変数] で、[変数をインポート] を選択します。
CSV ファイルを選択し、[開く] を選択します。
[変数] を選択すると、検出されたすべての代替変数とその値が表示されます。
AWS SCT を使用した Teradata FastLoad ジョブスクリプトの変換
以下では、AWS SCT を使用して Teradata FastLoad ジョブを Amazon Redshift RSQL に変換する方法について説明します。
Teradata FastLoad ジョブスクリプトを Amazon Redshift RSQL に変換するには
FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加します。詳細については、「FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加する」を参照してください。
代替変数を設定します。詳細については、「FastLoad ジョブスクリプトでの代替変数の設定」を参照してください。
左側のパネルで、[スクリプト] ノードを展開します。
次のいずれかを行います:
-
1 つの FastLoad ジョブスクリプトを変換するには、[FastLoad] ノードを展開し、変換するスクリプトを選択して、コンテキスト (右クリック) メニューから [スクリプトの変換] を選択します。
-
複数のスクリプトを変換するには、変換するスクリプトをすべて選択してください。[FastLoad] を選択し、コンテキスト (右クリック) メニューを開いてから、[スクリプトの変換] を選択します。次に、以下のいずれかを行ってください。
-
Amazon S3 にソースデータファイルを保存する場合は、[ソースデータファイルの場所] に [S3 オブジェクトパス] を選択します。
ソースデータファイルのマニフェストファイルの [Amazon S3 バケットフォルダ] と [Amazon S3 バケット] の値を入力します。
-
Amazon S3 にソースデータファイルを保存しない場合は、[ソースデータファイルの場所] に [ホストアドレス] を選択します。
ホストの [URL または IP アドレス]、[ホストユーザーのログイン名]、およびソースデータファイルの [マニフェストファイルの Amazon S3 バケット] の値を入力します。
-
-
-
[OK] を選択してください。
AWS SCT は、選択したすべての Teradata FastLoad ジョブスクリプトを Amazon Redshift RSQL と互換性のある形式に変換します。変換されたスクリプトは、ターゲットデータベースパネルの [スクリプト] ノードにあります。
変換した Amazon Redshift RSQL スクリプトを編集するか、保存してください。詳細については、「変換された FastLoad ジョブスクリプトの編集と保存」を参照してください。
AWS SCT による Teradata FastLoad ジョブスクリプトの管理
複数の Teradata FastLoad ジョブスクリプトを追加したり、FastLoad ジョブスクリプト AWS SCT をプロジェクトから削除したりできます。
新しい FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加するには
左パネルの [スクリプト] ノードを展開します。
[FastLoad] ノードを選択し、コンテキスト (右クリック) メニューを開きます。
[スクリプトのロード] を選択します。
新しい FastLoad ジョブスクリプトを追加し、代替変数を設定するのに必要な情報を入力します。詳細については、「FastLoad ジョブスクリプトを AWS SCT プロジェクトに追加する」および「FastLoad ジョブスクリプトでの代替変数の設定」を参照してください。
FastLoad ジョブスクリプトを AWS SCT プロジェクトから削除するには
左側のパネルの [スクリプト] の下にある [FastLoad] ノードを展開します。
削除するスクリプトを選択して、コンテキスト (右クリック) メニューを開きます。
[スクリプトを削除] を選択します。
AWS SCT を使用して Teradata FastLoad ジョブスクリプト変換の評価レポートを作成します。
FastLoad ジョブスクリプト変換評価レポートには、FastLoad コマンドと SQL ステートメントの変換に関する情報が記載されています。ソーススクリプトから Amazon Redshift RSQL と互換性のある形式への変換が行われます。評価レポートには、FastLoad コマンドのアクション項目と、AWS SCT が変換できない SQL ステートメントが含まれています。
Teradata FastLoad ジョブのスクリプト変換評価レポートを作成するには
左側のパネルの [スクリプト] の下にある [FastLoad] ノードを展開します。
変換するスクリプトを選択し、コンテキスト (右クリック) メニューを開いてから、[レポートの作成] を選択します。
-
[概要] タブを表示します。
[概要] タブには、FastLoad ジョブスクリプト評価レポートからのエグゼクティブサマリー情報が表示されます。これには、ソーススクリプトからのすべての FastLoad コマンドと SQL ステートメントの変換結果が含まれます。
-
(オプション) FastLoad ジョブスクリプト変換評価レポートのローカルコピーを PDF ファイルまたはカンマ区切り値 (CSV) のどちらかとして保存します。
-
FastLoad ジョブスクリプト変換評価レポートを PDF ファイルとして保存するには、右上の [PDF に保存] を選択します。
PDF ファイルには、スクリプト変換に関するエグゼクティブサマリー、アクション項目、推奨事項が含まれています。
-
FastLoad ジョブスクリプト変換評価レポートを CSV ファイルとして保存するには、右上の [CSV に保存] を選択します。
CSV ファイルには、アクション項目、推奨アクション、およびスクリプトの変換に必要な推定手作業の複雑さが含まれています。
-
-
[アクション項目] タブを選択します。このタブには、Amazon Redshift RSQL への手動変換が必要な項目のリストが含まれます。リストからアクション項目を選択すると、アクション項目が適用されるソース FastLoad ジョブスクリプトが AWS SCT によって強調表示されます。
AWS SCT で変換された Teradata FastLoad ジョブスクリプトの編集と保存
変換したスクリプトは AWS SCT プロジェクトの下部パネルで編集できます。AWS SCT は、プロジェクトの一部として編集されたスクリプトを保存します。
変換されたスクリプトを保存するには
-
ターゲットデータベースパネルの [スクリプト] にある [RSQL スクリプト] ノードを展開します。
-
変換された、コンテキスト (右クリック) メニューを開いて、[スクリプトの保存] を選択します。
-
変換したスクリプトを保存するフォルダへのパスを入力し、[保存] を選択します。
AWS SCT は変換したスクリプトをファイルに保存し、このファイルを開きます。