AWS SCT を使用して SSIS をAWS Glue に変換する - AWS Schema Conversion Tool

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

AWS SCT を使用して SSIS をAWS Glue に変換する

次で、AWS SCT を使用して Microsoft SQL Server Integration Services (SSIS) AWS Glue パッケージを変換する方法を確認することができます。

Microsoft SSIS パッケージを AWS Glue に変換するには、AWS SCT バージョン 1.0.642 以降を使用していることを確認してください。ETL パッケージを使用したお客様の SSIS プロジェクト — ローカルフォルダ内の .dtsx.conmgr、および .params ファイル。

SSIS サーバーをインストールする必要はありません。変換プロセスは、ローカル SSIS ファイルを介して行われます。

AWS SCT を使用して SSIS パッケージを AWS Glue に変換するには
  1. AWS SCT で新しいプロジェクトを作成するか、既存のプロジェクトを開きます。詳細については、「AWS SCT プロジェクトの作成」を参照してください。

  2. メニューから [ソースを追加] を選択し、新しいソース SSIS パッケージをプロジェクトに追加します。

  3. [SQL Server 統合サービス] を選択し、以下を完了します。

    • [接続名] — 接続の名前を入力します。AWS SCT はこの名前をメタデータツリーに表示します。

    • [SSIS パッケージフォルダ] — パッケージを含む SSIS プロジェクトフォルダーのパスを選択します。

    AWS SCT はローカルフォルダからプロジェクトファイル (拡張子の付いたファイル .dtsx.conmgr または .params) をロード、解析し、 のカテゴリツリーに整理します。次に、それらを AWS SCT カテゴリツリーに整理します。

  4. メニューから [ターゲットを追加] を選択し、ソース SSIS パッケージを変換する新しいターゲットプラットフォームを追加します。

  5. [AWS Glue] を選択して、以下の手順を完了します。

    • [接続名] — 接続の名前を入力します。AWS SCT は、この名前をメタデータツリーに表示します。

    • [AWS プロファイルからコピー] — 使用するプロファイルを選択します。

    • [AWS アクセスキー] - AWS のアクセスキーを入力します。

    • [AWS シークレットキー] - AWS のシークレットキーを入力します。

    • [リージョン] — リストから AWS リージョン リージョンを選択します。

    • [Amazon S3 バケットフォルダ] — 使用する予定の Amazon S3 バケットのフォルダパスを入力します。

    仮想 AWS Glue ターゲットを使用できます。この場合、接続認証情報を指定する必要はありません。詳細については、「仮想ターゲットの使用」を参照してください。

  6. ソース SSIS パッケージと AWS Glue ターゲットを含む新しいマッピングルールを作成します。詳細については、「新しいマッピングルールの追加」を参照してください。

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

  8. SSIS ツリービューで、[Connection managers] (接続マネージャ) コンテキスト (右クリック) メニューを開き、[Configure connections] (接続の設定) を選択します。

  9. プロジェクト接続マネージャを設定します。

    SSIS 接続マネージャの接続マッピングを設定するには、対応する SSIS 接続マネージャの AWS Glue 接続を指定します。AWS Glue 接続がすでに作成されていることを確認します。

    1. [Connections] (接続) で、[Project connection] (プロジェクト接続) を選択します。

    2. [Glue カタログ接続] で、適切な AWS Glue 接続を選択します。

  10. パッケージ接続マネージャを設定します。

    1. [接続] で、パッケージを選択します。

    2. [Glue カタログ接続] で、適切な AWS Glue 接続を選択します。

    3. パッケージで使用可能なすべての接続について、これらのアクションを繰り返します。

  11. [Apply (適用)] を選択します。

  12. パッケージを変換します。ソースツリービューで、[パッケージ] を探します。パッケージのコンテキスト (右クリック) メニューを開き、[パッケージの変換] を選択します。

  13. 変換されたスクリプトを Amazon S3 に保存します。ターゲットのツリービューで、[パッケージスクリプト] を見つけます。変換されたスクリプトのコンテキスト (右クリック) メニューを開き、[S3 に保存] を選択します。

  14. AWS Glue ジョブを設定します。ターゲットのツリービューで、[Package スクリプト] を見つけます。変換したスクリプトのコンテキスト (右クリック) メニューを開き、[AWS Glue ジョブの設定] を選択します。

  15. 次に示す、3 つの設定セクションを完了します。

    1. [デザインデータフロー] セクションに入力します。

      • [実行戦略] — ジョブで ETL スクリプトを実行する方法を選択します。[シーケンシャル] を選択すると、ウィザードで指定した順序でスクリプトが実行されます。[並行] を選択すると、ウィザードで指定された順序を無視してスクリプトが並行して実行されます。

      • [スクリプト] — 変換したスクリプトの名前を選択します。

      • [次へ] をクリックします。

    2. [Job プロパティ]セクションに入力します。

      • [名前] – AWS Glue ジョブの名前を入力します。

      • [IAM ロール] – ジョブの実行とデータストアへのアクセスに使用されるリソースの認証に使用する IAM ロールを選択します。

      • [スクリプトファイル名] — 変換したスクリプトの名前を入力します。

      • [スクリプトファイル S3 パス] — 変換されたスクリプトへの Amazon S3 パスを入力します。

      • [SSE-S3 を使用してスクリプトを暗号化] — Amazon S3 が管理する暗号化キー (SSE-S3) によるサーバー側の暗号化を使用してデータを保護するには、このオプションを選択します。

      • [一時ディレクトリ] — 中間結果用の一時ディレクトリへの Amazon S3 パスを入力します。AWS Glue および AWS Glue 組み込みトランスフォームは、このディレクトリを使用して Amazon Redshift への読み取りまたは書き込みを行います。

      • AWS SCT は、Python ライブラリのパスを自動的に生成します。このパスは [生成された Python ライブラリパス] で確認できます。この自動生成されたパスは編集できません。追加の Python ライブラリを使用するには、[ユーザ Python ライブラリパス] にパスを入力します。

      • [ユーザ Python ライブラリパス] — 追加のユーザ Python ライブラリのパスを入力します。Amazon S3 のパスはカンマで区切ります。

      • [依存 jars ファイルのパス] – 依存 .jars ファイルのパスを入力します。Amazon S3 のパスはカンマで区切ります。

      • [参照ファイルパス] — 設定ファイルなど、スクリプトに必要な追加ファイルのパスを入力します。Amazon S3 のパスはカンマで区切ります。

      • [最大キャパシティー] – 最大キャパシティーは、このジョブの実行時に割り当てることができる AWS Glue データ処理ユニット (DPU) の数です。2 から 100 の任意の整数を入力できます。デフォルトは 2 です。

      • [同時実行の最大数] – このジョブで許可される同時実行の最大数を設定します。デフォルトは 1 です。このしきい値に達すると、AWS Glue はエラーを返します。

      • [Job タイムアウト (分)] — ジョブの暴走を防ぐため、ETL ジョブのタイムアウト値を入力します。バッチジョブのデフォルト値は 2880 分 (48 時間) です。ジョブがこの制限を超えると、ジョブの実行状態は TIMEOUT に変わります。

      • [遅延通知のしきい値 (分)] — AWS SCT が遅延通知を送信するまでのしきい値を分単位で入力します。

      • [リトライ回数] — AWS Glue が失敗した場合にジョブを自動的に再開する回数 (0 ~ 10 回) を入力します。タイムアウト制限に達したジョブは再起動されません。デフォルトは 0 です。

      • [次へ] をクリックします。

    3. 必要な接続を設定します。

      1. [すべての接続] AWS Glue から必要な接続を選択し、[選択した接続」のリストに追加します。

      2. [終了] を選択します。

  16. 設定済みの AWS Glue ジョブを作成します。ターゲットのツリービューで、[ETL ジョブ] を見つけて展開します。設定した ETL ジョブのコンテキスト (右クリック) メニューを開き、[AWS Glue ジョブの作成] を選択します。

  17. AWS Glue ジョブを実行します。

    1. https://console.aws.amazon.com/glue/ で AWS Glue コンソール を開きます。

    2. ナビゲーションペインで [Jobs] (ジョブ) を選択します。

    3. [ジョブの追加] タブで、実行するジョブを選択します。

    4. [Action] (アクション) タブで、[Run job] (ジョブの実行) を選択します。

AWS SCT が AWS Glue に変換できる SSIS コンポーネント

AWS SCT を使用して、データフローコンポーネントと制御フローコンポーネントのほか、コンテナ、パラメータ、変数を変換できます。

サポートされるデータフローコンポーネントは次のとおりです。

  • ADO NET 送信先

  • ADO NET 送信元

  • 集計

  • キャッシュ変換

  • キャラクタマップ変換

  • 条件付き分割変換

  • コピー列変換

  • データ変換

  • 派生列変換

  • Excel 送信先

  • Excel 送信元

  • エクスポート列変換

  • フラットファイル送信先

  • フラットファイルソース

  • ファジー検索変換

  • インポート列変換

  • 参照変換

  • マージ結合変換

  • マージ変換

  • マルチキャスト変換

  • ODBC 送信先

  • ODBC 送信元

  • OLE DB コマンド変換

  • OLE DB 送信先

  • OLE DB 送信元

  • パーセンテージサンプリング変換

  • ピボット変換

  • raw ファイル送信先

  • raw ファイル送信元

  • RecordSet 送信先

  • 行数変換

  • 行サンプリング変換

  • ソート変換

  • SQL Server 送信先

  • Union All 変換

  • ピボット解除変換

  • XML ソース

サポートされている制御フローコンポーネントは以下のとおりです。

  • 一括挿入タスク

  • パッケージ実行タスク

  • SQL 実行タスク

  • T-SQL ステートメント実行タスク

  • 式タスク

  • ファイルシステムタスク

  • オペレーター通知タスク

  • メール送信タスク

サポートされているSSIS コンテナは次のとおりです。

  • ループコンテナ用

  • Foreach ループコンテナ

  • シーケンスコンテナ