Amazon Web Services ブログ

New – AWS Database Migration Service のフルマネージド Schema Conversion

2016 年に AWS Database Migration Service (AWS DMS) をリリースしてから、お客様は 800,000 を超えるデータベースを最小限のダウンタイムで安全に AWS に移行してきました。AWS DMS は、Oracle から Amazon Aurora MySQLMySQL から Amazon Relational Database (Amazon RDS) MySQLMicrosoft SQL Server から Amazon Aurora PostgreSQLMongoDB から Amazon DocumentDBOracle から Amazon Redshift、および Amazon Simple Storage Service (Amazon S3) 間 での移行など、20 以上のデータベースおよび分析エンジン間の移行をサポートします。

具体的には、AWS Schema Conversion Tool (AWS SCT) を使用すると、異種データベースやデータウェアハウスの移行が予測可能になり、ソーススキーマや、ビュー、ストアドプロシージャ、関数などのデータベースコードオブジェクトの大部分を、ターゲットエンジンと互換性のある形式に自動的に変換できます。例えば、Oracle PL/SQL と SQL Server T-SQL コードを、SQL の Amazon Aurora MySQL ダイアレクトの同等のコード、または PostgreSQL の同等の PL/pgSQL コードに変換することをサポートしています。Windows または Linux (Fedora と Ubuntu) を含むプラットフォーム用の AWS SCT をダウンロードできます。

11 月 27 日、フルマネージド AWS DMS Schema Conversion を発表します。これは、スキーマの評価と変換を AWS DMS 内で利用できるようにすることで、データベースの移行を効率化します。DMS Schema Conversion を使用すると、1 つの中心的な DMS サービスで、計画、評価、変換、移行を実行できます。AWS SCT をダウンロードして実行しなくても、AWS マネジメントコンソールで DMS Schema Conversion の機能にアクセスできます。

AWS DMS Schema Conversion は、ソースデータベースのスキーマと大部分のデータベースコードオブジェクトを、ターゲットデータベースと互換性のある形式に自動的に変換します。これには、AWS SCT と同様に、テーブル、ビュー、ストアドプロシージャ、関数、データタイプ、シノニムなどが含まれます。自動的に変換できないオブジェクトには、アクション項目として明確にマークが付されるとともに、手動で AWS に移行する方法についての指示が提示されます。

今回のリリースでは、DMS Schema Conversion は移行プロジェクトのソースとして次のデータベースをサポートします。

  • Microsoft SQL Server バージョン 2008 R2 以降
  • Oracle バージョン 10.2 以降、11g~12.2、18c、19c

DMS Schema Conversion は、移行プロジェクトのターゲットとして次のデータベースをサポートします。

  • Amazon RDS for MySQL バージョン 8.x
  • Amazon RDS for PostgreSQL バージョン 14.x

AWS DMS Schema Conversion の設定
DMS Schema Conversion を開始するには、また AWS DMS を初めて使用する場合は、設定タスクを実行して Amazon VPC サービス、ソース、およびターゲットデータベースを使用して仮想プライベートクラウド (VPC) を作成します。詳細については、AWS ドキュメントの「Prerequisites for AWS Database Migration Service」(AWS Database Migration Service の前提条件) を参照してください。

AWS DMS コンソールでは、[Instance profiles] (インスタンスプロファイル) の設定、[Data providers] (データプロバイダー) の追加、[Migration projects] (移行プロジェクト) の作成を実行するための新しいメニューが表示されます。

移行プロジェクトを作成する前に、左側のペインで [Instance profiles] (インスタンスプロファイル) を選択してインスタンスプロファイルを設定します。インスタンスプロファイルは、DMS Schema Conversion インスタンスのネットワークおよびセキュリティの設定を指定します。複数のインスタンスプロファイルを作成し、各移行プロジェクトのために使用するインスタンスプロファイルを選択できます。

[Create instance profile] (インスタンスプロファイルを作成) を選択し、デフォルトの VPC または新しい VPC、スキーマ変換メタデータを保存する Amazon Simple Storage Service (Amazon S3) バケット、および AWS Key Management Service (AWS KMS) キーなどの追加設定を指定します。

単一の VPC 設定で極めて単純なネットワーク設定を作成できます。 ソースまたはターゲットのデータプロバイダーが異なる VPC にある場合は、いずれかの VPC でインスタンスプロファイルを作成し、VPC ピアリングを使用してこの 2 つの VPC をリンクできます。

次に、左側のペインで [Data providers] (データプロバイダー) を選択して、ソースデータベースとターゲットデータベースのデータストアタイプとロケーション情報を保存するデータプロバイダーを追加できます。データベースごとに 1 つのデータプロバイダーを作成し、それを複数の移行プロジェクトで使用できます。

データプロバイダーは、フルマネージド型の Amazon RDS インスタンスにすることも、オンプレミスまたは Amazon Elastic Compute Cloud (Amazon EC2) インスタンスのいずれかで実行されるセルフマネージドエンジンにすることもできます。

[Create data provider] (データプロバイダーを作成) を選択して、新しいデータプロバイダーを作成します。データプロバイダー用に、データベースエンジン、ドメイン名または IP アドレス、ポート番号、データベース名など、データベースロケーションのタイプを手動で設定できます。ここでは、[RDS database instance] (RDS データベースインスタンス) を選択しました。

データプロバイダーを作成したら、必ず AWS Secrets Manager でデータベース接続の認証情報を追加してください。DMS Schema Conversion は、この情報を使用してデータベースに接続します。

AWS DMS Schema Conversion を使用したデータベーススキーマの変換
これで、左側のペインで [Migration projects] (移行プロジェクト) を選択して、DMS Schema Conversion 用の移行プロジェクトを作成できます。移行プロジェクトは、ソースデータプロバイダーとターゲットデータプロバイダー、インスタンスプロファイル、および移行ルールを記述します。さまざまなソースデータプロバイダーとターゲットデータプロバイダー向けに複数の移行プロジェクトを作成することもできます。

[Create migration project] (移行プロジェクトを作成) を選択し、インスタンスプロファイルと、ソースデータプロバイダーおよびターゲットデータプロバイダーを DMS Schema Conversion 用に選択します。

移行プロジェクトを作成したら、そのプロジェクトを使用して評価レポートを作成し、データベーススキーマを変換できます。リストから移行プロジェクトを選択し、[Schema conversion] (スキーマ変換) タブを選択して [Launch schema conversion] (スキーマ変換を開始) をクリックします。

DMS Schema Conversion の移行プロジェクトは常にサーバーレスです。つまり、AWS DMS は移行プロジェクトのクラウドリソースを自動的にプロビジョニングするため、スキーマ変換インスタンスを管理する必要はありません。

もちろん、DMS Schema Conversion を初めて起動する際には、Schema Conversion インスタンスを起動する必要があります。これには最大で 10~15 分かかる場合があります。このプロセスでは、ソースデータベースとターゲットデータベースからメタデータも読み取ります。初回の起動が成功すると、DMS Schema Conversion により迅速にアクセスできます。

DMS Schema Conversion で重要なことの 1 つとして、すべてのスキーマ変換タスクを要約するデータベース移行評価レポートを生成することが挙げられます。このレポートには、ターゲットデータベースインスタンスの DB エンジンに変換できないスキーマのアクション項目の詳細も記載されます。レポートは AWS DMS コンソールで表示することも、カンマ区切り値 (.csv) ファイルとしてエクスポートすることもできます。

評価レポートを作成するには、評価するソースデータベーススキーマまたはスキーマ項目を選択します。チェックボックスをオンにしたら、ソースデータベースペインの [Actions] (アクション) メニューで [Assess] (評価) を選択します。このレポートは、.csv ファイルとともに S3 バケットにアーカイブされます。S3 バケットを変更するには、インスタンスプロファイルのスキーマ変換設定を編集します。

その後、変換したコードをターゲットデータベースに適用するか、SQL スクリプトとして保存できます。変換されたコードを適用するには、[Source data provider] (ソースデータプロバイダー) ペインで [Convert] (変換) を選択し、[Target data provider] (ターゲットデータプロバイダー) ペインで [Apply changes] (変更を適用) を選択します。

スキーマが正常に変換されたら、AWS DMS を使用してデータベース移行フェーズに進むことができます。詳細については、AWS ドキュメントの「Getting started with AWS Database Migration Service」(AWS Database Migration Service の開始方法) を参照してください。

今すぐご利用いただけます
AWS DMS Schema Conversion は、米国東部 (オハイオ)、米国東部 (バージニア北部)、米国西部 (オレゴン)、アジアパシフィック (シンガポール)、アジアパシフィック (シドニー)、アジアパシフィック (東京)、欧州 (フランクフルト)、欧州 (アイルランド)、および欧州 (ストックホルム) リージョンでご利用いただけるようになりました。

詳細については、「AWS DMS Schema Conversion ユーザーガイド」を参照してください。ぜひお試しいただき、AWS re:Post for AWS DMS 宛てに、または通常の AWS サポートの連絡先を通じて、フィードバックをお寄せください。

Channy

原文はこちらです。