実装フェーズ - AWS 規範ガイダンス

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

実装フェーズ

大規模なアプローチや段階的なアプローチに従う移行には、新しい開発とテストが必要です。 AWS Schema Conversion Tool (AWS SCT) は SSIS パッケージから AWS Glue ジョブを自動的に生成できます。これにより、移行時間と労力が大幅に削減されます。または、 AWS Glue Studio を使用してグラフィカルなインターフェイスベースの開発を行ったり、 AWS Glue または Amazon EMR で実行できる Spark ライブラリを構築したりできます。

以下のセクションでは、 AWS SCT、 AWS Glue、および Amazon EMR を使用するための便利なポインタについて説明します。

AWS SCT

次の画面図は、 によって変換された AWS Glue ジョブスクリプトを示しています AWS SCT。

AWS Glue によって変換された ジョブスクリプト AWS SCT

AWS SCT は SSIS パッケージを AWS Glue ジョブに一括変換できます。スクリプトを編集して既存のロジックを更新したり、新しい設計に基づいて新しいロジックを追加したりできます。 AWS SCT 変換されたスクリプトの命名規則に従って、スクリプトをカスタマイズすることをお勧めします。

詳細については、 AWS SCT ドキュメントの「 AWS Glue を使用して SSIS を に変換 AWS SCTする」を参照してください。

AWS Glue

AWS Glue Studio は、次の画面に示すように、グラフィカルインターフェイスと SSIS に似た開発エクスペリエンスを提供します。

AWS Glue Studio UI

グラフィカルインターフェイスを使用しない場合は、 AWS Glue コンソールから必要な Python ライブラリを使用してカスタムスクリプトを実行することもできます。詳細については、 AWS Glue ドキュメントの「独自のカスタムスクリプトの提供」を参照してください。

AWS Glue には、データを処理するための一連の組み込み変換が用意されています。これらは SSIS データフロー変換に似ています。SSIS ETL ジョブを移行するときは、次のベストプラクティスに従ってください AWS Glue。

  • AWS Glue 変換から同等の SSIS 変換へのマッピングを準備します。

  • 変換を AWS Glue 変換にマッピングできない場合は、Python または Scala カスタムスクリプトを使用して変換を構築します。

  • カスタムログ記録 (読み取られた行、書き込まれた行、不正なレコードなど) には、Amazon CloudWatch に加えてカスタムスクリプトを使用します。

  • 開発エンドポイントを追加して、カスタムスクリプトをローカルで開発およびデバッグします。

Amazon EMR

カスタムスクリプト (Python または Scala で記述) またはコンパイルされた Python ライブラリは、 と同様に EMR クラスターで実行できます AWS Glue。以下のベストプラクティスに従ってください。

  • Spark フレームワークで EMR クラスターを作成するときに、メモリ最適化インスタンスタイプから始めます。(SSIS はメモリバッファを使用します)。

  • 各 SSIS タスクまたは変換と同等の汎用 Python メソッドを構築します。例えば、次の図では、2 つのデータフレームを入力として受け取るメソッドは、2 つのデータフレームから一致するレコードを出力として持つ 3 番目のデータフレームを生成します。これはマージ結合変換として機能します。

SSIS タスクのサンプル Python マージ関数

テスト

データの完全性と正確性を検証するには、テストフレームワークが必要です。このフレームワークは、既存のすべてのシナリオと、ジョブの移行中に行った改善点をカバーする必要があります AWS。

  • 完全性の検証:

    • すべてのジョブはターゲット状態に移行されます。

    • すべての機能は各ジョブで移行されます。

    • ジョブ実行の詳細、エラーメッセージ、不正なレコード、行数など、すべてのタイプのログを使用できます。

  • 正確性の検証:

    • データの品質は、既存環境と新規環境で一貫しています。

    • すべてのテーブルのすべての列が一致しているか、テーブルが改善されています AWS。

    • すべての監査情報とログ情報が一致します。

また、移行したジョブのパフォーマンスが既存のジョブのパフォーマンスと一致することも確認する必要があります。