AWS SCT を使用してテラデータ BTEQ スクリプトを Amazon Redshift RSQL に変換する - AWS Schema Conversion Tool

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SCT を使用してテラデータ BTEQ スクリプトを Amazon Redshift RSQL に変換する

AWS Schema Conversion Tool(AWS SCT) を使用して、Teradata Basic Teradata Query (BTEQ) スクリプトを Amazon Redshift RSQL に変換できます。

次のアーキテクチャ図は、抽出、変換、ロード (ETL) スクリプトから Amazon Redshift RSQL への変換を含むデータベース移行プロジェクトを示しています。

ETL スクリプトから RSQL への変換を示す図です。

BTEQ スクリプトを AWS SCT プロジェクトに追加する

複数のスクリプトを単一の AWS SCT プロジェクトに追加できます。

BTEQ スクリプトを AWS SCT プロジェクトに追加するには
  1. AWS SCT で新しいプロジェクトを作成するか、既存のプロジェクトを開きます。詳細については、「AWS SCT プロジェクトの作成」を参照してください。

  2. メニューから [ソースを追加] を選択し、次に [Teradata] を選択してソースデータベースをプロジェクトに追加します。詳細については、「ソースとしての Teradata の使用」を参照してください。

  3. メニューから [ターゲットを追加] を選択し、ターゲット Amazon Redshift データベースを AWS SCT プロジェクトに追加します。

    仮想 Amazon Redshift ターゲットデータベースプラットフォームを使用できます。詳細については、「仮想ターゲットの使用」を参照してください。

  4. ソース Teradata データベースと Amazon Redshift ターゲットを含む新しいマッピングルールを作成します。詳細については、「新しいマッピングルールの追加」を参照してください。

  5. [ビュー] メニューで、[メインビュー] を選択します。

  6. 左側のパネルで、[スクリプト] ノードを展開します。

  7. [BTEQ スクリプト] を選択し、コンテキスト (右クリック) メニューを開いてから、[スクリプトのロード] を選択します。

  8. Teradata BTEQ スクリプトのソースコードの場所を入力し、[フォルダの選択] を選択します。

    AWS SCT で、[スクリプトのロード] ウィンドウが表示されます。

  9. 次のいずれかを実行します。

    1. Teradata BTEQ スクリプトに代替変数が含まれていない場合は、[代替変数なし] を選択し、[OK] を選択してスクリプトを AWS SCT プロジェクトに追加します。

    2. Teradata BTEQ スクリプトに代替変数が含まれている場合は、代替変数を設定します。詳細については、「BTEQ スクリプトでの代替変数の設定」を参照してください。

BTEQ スクリプトの代替変数を AWS SCT で設定する

Teradata BTEQ スクリプトには代替変数を含めることができます。たとえば、1 つの BTEQ スクリプトと代替変数を使用して、複数のデータベース環境で同じコマンドセットを実行できます。AWS SCT を使用して BTEQ スクリプト内の代替変数を設定できます。

代替変数を使用して BTEQ スクリプトを実行する前に、必ずすべての変数に値を割り当ててください。そのためには、Bash スクリプト、UC4 (Automic) など、他のツールやアプリケーションを使用できます。AWS SCT は、値を割り当てた後でのみ置換変数を解決および変換できます。

BTEQ スクリプトで代替変数を設定するには
  1. BTEQ スクリプトを AWS SCT プロジェクトに追加します。詳細については、「BTEQ スクリプトを AWS SCT プロジェクトに追加する」を参照してください。

    スクリプトを追加するときは、[代替変数が使用される] を選択します。

  2. [変数フォーマットの定義] には、スクリプト内のすべての代替変数と一致する正規表現を入力します。

    たとえば、代替変数の名前が ${ で始まり、} で終わる場合は、\$\{\w+\} 正規表現を使用します。ドル記号またはパーセント記号で始まる代替変数を照合するには、\$\w+|\%\w+ 正規表現を使用します。

    AWS SCT の正規表現は、Java の正規表現の構文に準拠しています。詳細については、Java ドキュメントの「java.util.regex クラスパターン」を参照してください。

  3. [OK] を選択してスクリプトを AWS SCT プロジェクトにロードし、[OK] を選択して [スクリプトのロード] ウィンドウを閉じます。

  4. [変数] を選択すると、検出されたすべての代替変数とその値が表示されます。

  5. [] には、代替変数の値を入力します。

AWS SCT を使用してテラデータ BTEQ スクリプトを Amazon Redshift RSQL に変換する

以下では、AWS SCT を使用して BTEQ ETL スクリプトを Amazon Redshift RSQL に変換する方法について説明します。

テラデータ BTEQ スクリプトを Amazon Redshift RSQL に変換するには
  1. BTEQ スクリプトを AWS SCT プロジェクトに追加します。詳細については、「BTEQ スクリプトを AWS SCT プロジェクトに追加する」を参照してください。

  2. 代替変数を設定します。詳細については、「BTEQ スクリプトでの代替変数の設定」を参照してください。

  3. 左側のパネルで、[スクリプト] ノードを展開します。

  4. 次のいずれかを実行します。

    • 1 つの BTEQ スクリプトを変換するには、[BTEQスクリプト] ノードを展開し、変換するスクリプトを選択して、コンテキスト (右クリック) メニューから [Convert to RSQL に変換] を選択します。

    • 複数のスクリプトを変換するには、変換するスクリプトをすべて選択してください。次に [BTEQ スクリプト] を選択し、コンテキスト (右クリック) メニューを開いて、[スクリプトの変換] で [RSQL に変換] を選択します。

    AWS SCT は、選択したすべての Teradata BTEQ スクリプトを Amazon Redshift RSQL と互換性のある形式に変換します。変換されたスクリプトは、ターゲットデータベースパネルの [スクリプト] ノードにあります。

  5. 変換した Amazon Redshift RSQL スクリプトを編集するか、保存してください。詳細については、「変換された BTEQ スクリプトの編集と保存」を参照してください。

AWS SCT を使用した BTEQ スクリプトの管理

複数の BTEQ スクリプトを追加したり、AWS SCT プロジェクトから BTEQ スクリプトを削除したりできます。

BTEQ スクリプトを AWS SCT プロジェクトに追加するには
  1. 左パネルの [スクリプト] ノードを展開します。

  2. [BTEQ スクリプト] ノードを開き、コンテキスト (右クリック) メニューを開きます。

  3. [スクリプトのロード] を選択します。

  4. 新しい BTEQ スクリプトを追加し、代替変数を設定するのに必要な情報を入力します。詳細については、「BTEQ スクリプトを AWS SCT プロジェクトに追加する」および「BTEQ スクリプトでの代替変数の設定」を参照してください。

BTEQ スクリプトを AWS SCT プロジェクトから削除するには
  1. 左パネルの[スクリプト] の下にある [BTEQ スクリプト] ノードを展開します。

  2. 削除するスクリプトを選択して、コンテキスト (右クリック) メニューを開きます。

  3. [スクリプトを削除] を選択します。

AWS SCT での BTEQ スクリプト変換評価レポートの作成

BTEQ スクリプト変換評価レポートには、BTEQ スクリプトの BTEQ コマンドと SQL ステートメントを Amazon Redshift RSQL と互換性のある形式に変換する方法に関する情報が記載されています。評価レポートには、BTEQ コマンドのアクション項目と、AWS SCT が変換できない SQL ステートメントが含まれます。

BTEQ スクリプト変換評価レポートを作成するには
  1. 左側のパネルの [スクリプト] にある [BTEQ スクリプト] ノードを展開します。

  2. 変換するスクリプトを選択して、オブジェクトのコンテキスト (右クリック) メニューを開きます。

  3. [レポートの作成] で [RSQL に変換] を選択します。

  4. [概要] タブを表示します。[概要] タブには、BTEQ スクリプト評価レポートの要約が表示されます。BTEQ スクリプトからのすべての BTEQ コマンドと SQL ステートメントの変換結果が含まれます。

  5. (オプション) BTEQ スクリプト変換評価レポートのローカルコピーを PDF ファイルまたはカンマ区切り値 (CSV) のどちらかとして保存します。

    • BTEQ スクリプト変換評価レポートを PDF ファイルとして保存するには、右上の [PDF に保存] を選択します。

      PDF ファイルには、スクリプト変換に関するエグゼクティブサマリー、アクション項目、推奨事項が含まれています。

    • BTEQ スクリプト変換評価レポートを CSV ファイルとして保存するには、右上の [Save to CSV] を選択します。

      CSV ファイルには、アクション項目、推奨アクション、およびスクリプトの変換に必要な推定手作業の複雑さが含まれています。

  6. [アクション項目] タブを選択します。このタブには、Amazon Redshift RSQL への手動変換が必要な項目のリストが含まれます。リストからアクション項目を選択すると、そのアクション項目が適用されるソース BTEQ スクリプトの項目が AWS SCT によって強調表示されます。

AWS SCT を使用して変換された BTEQ スクリプトの編集と保存

変換したスクリプトは AWS SCT プロジェクトの下部パネルで編集できます。AWS SCT は、編集された、プロジェクトの一部として編集された、スクリプトを保存します。

変換されたスクリプトを保存するには
  1. ターゲットデータベースパネルの [スクリプト] にある [RSQL スクリプト] ノードを展開します。

  2. 変換された、コンテキスト (右クリック) メニューを開いてから、[スクリプトを保存] を選択します。

  3. 変換したスクリプトを保存するフォルダへのパスを入力し、[保存] を選択します。

    AWS SCT は変換したスクリプトをファイルに保存し、このファイルを開きます。