View a markdown version of this page

SQL Server のモダナイゼーション - AWS 変換

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

SQL Server のモダナイゼーション

AWS Transform for SQL Server Modernization は、Microsoft SQL Server データベースおよび関連する .NET アプリケーションの Amazon Aurora PostgreSQL へのフルスタックのモダナイゼーションを自動化する AI を活用したサービスです。このサービスは、スキーマ変換、データ移行、新しいターゲット PostgreSQL に合わせてアプリケーションコードを変更する移行ジャーニー全体を調整し、複雑で手間のかかるタスクを自動化することでチームの生産性を向上させます。

サポート対象のリージョン

AWS Transform for SQL Server が米国東部 (バージニア北部) - us-east-1 で利用可能に

クロスリージョン使用状況: サポートされていないリージョンのデータベースの場合、データベースをサポートされているリージョンにクローンして変換し、結果をターゲットリージョンにデプロイできます。

機能と主要機能

データベース変換

  • スキーマ変換: テーブル、ビュー、インデックス、制約、関係など、SQL Server スキーマを Aurora PostgreSQL に自動的に変換します

  • ストアドプロシージャ変換: T-SQL ストアドプロシージャを AI で強化された精度で PL/pgSQL に変換します

  • データ移行: AWS Database Migration Service (DMS) を使用して整合性検証でデータを移行する

  • データベースオブジェクト: トリガー、関数、ビュー、計算列、および ID 列をサポート

  • 検証: 自動データ整合性検証と参照整合性チェック

アプリケーション変換

  • Entity Framework 変換: PostgreSQL の Entity Framework 6.3-6.5 および EF Core 1.0-8.0 設定を更新します

  • ADO.NET 変換: SQL Server から PostgreSQL プロバイダーに ADO.NET データアクセスコードを変換します。

  • 接続文字列の更新: すべてのデータベース接続文字列を新しいターゲット PostgreSQL データベースに自動的に更新します。

  • データベースプロバイダーの変更: SQL Server プロバイダーを Npgsql (PostgreSQL プロバイダー) に置き換えます

  • ORM 設定の更新: データ型マッピング、ID 列、およびデータベース固有の設定を変更します。

オーケストレーションと検証

  • ウェーブベースのモダナイゼーション: 大規模な資産を論理的な移行フェーズに整理する

  • 依存関係マッピング: アプリケーションとデータベース間の関係を識別します

  • ヒューHuman-in-the-loop (HITL) チェックポイント: 重要な段階でレビューと承認のゲートを提供します

  • 自動検証: スキーマの互換性、データ整合性、アプリケーション機能をテストします

  • CI/CD 統合: 既存の開発パイプラインと統合

デプロイメント

  • Amazon ECS および Amazon EC2 デプロイ: 自動スケーリングサポートによるコンテナ化された自動デプロイ

  • Infrastructure-as-code 生成: CloudFormation テンプレートまたは AWS CDK テンプレートを作成します。

  • 自動デプロイ検証: ヘルスチェックで正常なデプロイを検証します

  • ロールバック機能: 問題が発生した場合のロールバック手順をサポートします

サポートされているバージョンとプロジェクトタイプ

SQL Server バージョン

AWS Transform は、次の SQL Server バージョンをサポートしています。

SQL Server バージョン サポートステータス
SQL Server 2022 サポート
SQL Server 2019 サポート
SQL Server 2017 サポート
SQL Server 2016 サポート
SQL Server 2014 サポート
SQL Server 2012 サポート
SQL Server 2008 R2 サポート
注記

SQL Server のすべてのエディションがサポートされています (Express、Standard、Enterprise)。SQL Server は、 AWS (Amazon RDS for SQL Server または Amazon EC2 の SQL Server) でホストすることも、 の外部でホストすることもできます AWS。

.NET バージョン

.NET バージョン サポートステータス
.NET 10 サポート
.NET 8 サポート
.NET 7 サポート
.NET 6 (コア) サポート
.NET Framework 4.x 以前 サポート外
重要

レガシー .NET Framework 4.x 以前のバージョンはサポートされていません。アプリケーションで .NET Framework を使用している場合は、SQL Server 変換機能を使用する前に、まず AWS Transform for .NET モダナイゼーションを使用して .NET Core 6+ にアップグレードする必要があります。

Entity Framework のバージョン

フレームワーク サポートされるバージョン
エンティティフレームワーク 6 6.3、6.4、6.5
エンティティフレームワークコア 1.0 から 8.0
ADO.NET すべてのバージョン (GA)

ソースコードリポジトリ

AWS Transform は、次のソースコードプラットフォームをサポートしています。

  • GitHub および GitHub Enterprise Server

  • GitLab.com と GitLab セルフマネージド

  • Bitbucket クラウドと Bitbucket データセンター

  • Azure DevOps と Azure DevOps Server

  • Amazon S3

[Target database] (ターゲットデータベース)

AWS 変換は、最新の Aurora 機能と最適化をサポートする Amazon Aurora PostgreSQL (PostgreSQL 15 以降互換) をターゲットとしています。

技術要件

データベースの要件

  • Microsoft SQL Server バージョン 2008 R2~2022

  • ( AWS Amazon RDS for SQL Server または Amazon EC2 上の SQL Server) でホストされている SQL Server、または の外部でホストされている SQL Server AWS

  • AWSホスト型データベースの場合、データベースと AWS 変換は同じ AWS リージョンにある必要があります。

  • の外部でホストされているデータベースの場合 AWS、 AWS 変換サービスへのネットワーク接続が必要です。

  • VIEW DEFINITION および VIEW DATABASE STATE アクセス許可を持つデータベースユーザー

  • 印刷可能な ASCII 文字のみを使用するデータベースパスワード (「/」、「@」、「」、スペースを除く)

  • ソース SQL Server を含む VPC には、少なくとも 2 つの異なるアベイラビリティーゾーンにサブネットが必要です (DMS レプリケーションサブネットグループで必要)

アプリケーション要件

  • .NET Core 6、7、または 8 アプリケーション

  • Entity Framework 6.3-6.5 または Entity Framework Core 1.0-8.0、または ADO.NET

  • ソースコードで検出可能なデータベース接続

  • アプリケーションが正常にビルドおよび実行される

  • サポートされているリポジトリプラットフォームのソースコード

AWS アカウントの要件

  • AWS 管理者アクセス権を持つ アカウント

  • IAM アイデンティティセンターが有効

  • 必要なサービスロールが作成されました (以下のセットアップ手順を参照)

  • 適切なネットワーク設定を持つ VPC

データ処理とストレージ

処理場所

  • スキーマ処理は VPC 内の DMS インスタンスで行われます

  • データ移行はオプションであり、必要に応じて除外できます。

  • 変換アーティファクトは AWS 変換サービスリージョンに保存されます

保存済みアーティファクト

以下の項目はサービスリージョンに保存されます。

  • エージェントログ

  • 評価結果

  • SQL スキーマファイル

  • DMS 出力アーティファクト

重要

データレジデンシーにとって重要: データ移行がオプトアウトされた場合でも、メタデータと処理アーティファクトはサービスリージョンに保存されます。これは、厳格なデータレジデンシー要件を持つ組織にとって重要です。

アーティファクト管理

  • 独自の KMS キーを使用した暗号化のカスタマーオプション

  • すべてのアーティファクトに定義された TTL (time-to-live期間

  • アーティファクトはオフラインストレージ用にダウンロード可能

アプリケーション要件

レガシー .NET Framework

  • 制限: .NET Framework 4.x 以前のバージョンはサポートされていません。

  • 回避策: AWS Transform for .NET を使用して最初に .NET Core 6+ にアップグレードしてから、SQL Server 変換を使用します。

Entity Framework のバージョン

  • 制限: Entity Framework 6.3-6.5 と EF Core 1.0-8.0 のみがサポートされています。

  • 回避策: 変換前にサポートされている Entity Framework バージョンにアップグレードします。

VB.NET アプリケーション

  • 制限: VB.NET はサポートされていません。

  • 回避策: C# に変換するか、 AWS 変換カスタムを使用して VB.NET から C# に変換します。

クロスデータベースの依存関係

  • 制限: データベーススキーマが複数のデータベース間でやり取りする際の課題。

  • 回避策: 移行前にクロスデータベースクエリを確認してリファクタリングします。データベースの統合または PostgreSQL スキーマの使用を検討してください。

  • 影響: 複雑なデータベース間のシナリオでは、人間による介入が必要になる場合があります。

リポジトリとデータベースの結合

  • 制限: 1 つのリポジトリが複数のデータベースを提供する場合の課題。

  • 回避策: リポジトリの再構築または段階的な移行アプローチを検討してください。

  • 影響: ウェーブベースの移行には追加の計画が必要になる場合があります。

インフラストラクチャ要件

ジョブあたりの単一アカウント/リージョン

  • 制限: 各変換ジョブは 1 つの AWS アカウントとリージョンを対象としています。

  • 回避策: マルチアカウントまたはマルチリージョンデプロイ用に複数の変換ジョブを作成します。

デプロイターゲット

  • 制限: Amazon ECS と Amazon EC2 のデプロイがサポートされています。

リポジトリの要件

プライベート NuGet パッケージ

  • 制限: プライベート NuGet パッケージには追加の設定が必要です。

  • 回避策: ジョブを開始する前に、変換設定でプライベート NuGet フィードを設定します。