の概要 AWS DMS - AWS データベース移行サービス

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

の概要 AWS DMS

データベース移行を実行するには、 AWS DMS はソースデータストアに接続し、ソースデータを読み取り、ターゲットデータストアが使用するためにデータをフォーマットします。次に、ターゲットデータストアにデータをロードします。この処理のほとんどはメモリ内で行われますが、大きいトランザクションではディスクへのバッファリングが必要になることがあります。キャッシュされたトランザクションとログファイルもディスクに書き込まれます。

を大まかに説明すると、 AWS DMS 次の操作を行います。

  • ネットワーク環境内で移行の適切な候補となるデータベースを検出する。

  • ソースデータベーススキーマとほとんどのデータベースコードオブジェクトを、ターゲットデータベースと互換性のある形式に自動的に変換する。

  • レプリケーションサーバーを作成します。

  • データストアに関する接続情報を持つソースエンドポイントとターゲットエンドポイントを作成します。

  • ソースデータストアとターゲットデータストアの間でデータを移行するには、1 つ以上の移行タスクを作成します。

タスクは、3 つの主なフェーズで構成できます。

  • 既存データの移行 (フルロード)

  • キャッシュされた変更の適用

  • 継続的なレプリケーション (変更データキャプチャ)

ソースからの既存のデータがターゲットに移動されるフルロード移行中、 AWS DMS は、ソースデータストアのテーブルからターゲットデータストアのテーブルにデータをロードします。全ロードの進行中、ロードするテーブルに加えられた変更はすべてレプリケーションサーバーにキャッシュされます。これらがキャッシュされた変更点です。重要なのは、 AWS DMS は、そのテーブルの全ロードが開始されるまで、特定のテーブルの変更をキャプチャしません。つまり、変更キャプチャが開始されるポイントは、個々のテーブルごとに異なります。

特定のテーブルの全ロードが完了すると、 AWS DMS は、そのテーブルのキャッシュされた変更をすぐに適用し始めます。テーブルがロードされ、キャッシュされた変更が適用されたら、 AWS DMS は、進行中のレプリケーションフェーズのトランザクションとして変更の収集を開始します。トランザクションにテーブルがまだ完全にロードされていない場合、変更はレプリケーション インスタンスにローカルに保存されます。後 AWS DMS は、キャッシュされたすべての変更をすべてのテーブルに適用し、テーブルはトランザクションの一貫性を保ちます。この時点で、 AWS DMS は継続的なレプリケーションフェーズに移行し、変更をトランザクションとして適用します。

継続的なレプリケーションフェーズの開始時、トランザクションのバックログにより、ソースデータベースとターゲットデータベースの間に通常いくらかの遅延が発生します。このトランザクションバックログが終わると、移行は最終的に安定した状態になります。この時点で、アプリケーションをシャットダウンして、残りのトランザクションをターゲットに適用できるようにし、ターゲットデータベースをポイントするようになったアプリケーションを起動できます。

AWS DMS は、データ移行の実行に必要なターゲットスキーマオブジェクトを作成します。以下を使用できます..。 AWS DMS は、最小限のアプローチを取り、データを効率的に移行するために必要なオブジェクトのみを作成します。このアプローチを使用して、 AWS DMS はテーブル、プライマリキー、および場合によっては一意のインデックスを作成しますが、ソースからデータを効率的に移行するのに必要のない他のオブジェクトは作成しません。

または、 内で DMS Schema Conversion を使用することもできます。 AWS DMS は、ソースデータベーススキーマとほとんどのデータベースコードオブジェクトをターゲットデータベースと互換性のある形式に自動的に変換します。この変換は、テーブル、ビュー、ストアドプロシージャ、関数、データ型、シノニムなどを対象としています。DMS Schema Conversion が自動的に変換できないオブジェクトは、明確にマークされます。移行を完了するには、このようなオブジェクトは手動で変換します。