移行は、移行元データベースから移行先データベースにデータとメタデータを移動するプロセスです。移行が完了すると、移行先データベースがプライマリ データベースになり、依存するアプリケーションが読み取りと書き込みを行えるようになります。移行元データベースはシャットダウンできます。
Database Migration Service を使用すると、データを Google Cloudに移行できます。このサービスは、Cloud SQL インスタンスと AlloyDB for PostgreSQL インスタンスへのデータベース移行をサポートしています。Database Migration Service は、ネットワーキングを合理化し、初期スナップショットと継続的なレプリケーションを管理し、移行プロセス全体でステータスの更新を提供します。
Database Migration Service を使用すると、次のことができます。
- さまざまな種類の移行を実行する。
- 最小限のダウンタイムでデータベースを Google Cloud に移行します。
- 異種移行で Gemini を活用した変換機能を使用する。
- 暗号化されたデータを安全に移行する。
- オブザーバビリティ指標を使用して移行ジョブをモニタリングします。
次の図は、 Google Cloud アーキテクチャのコンテキストにおける Database Migration Service の主な機能を示しています。
移行タイプ
移行は次のタイプに分類できます。
継続的な移行
継続的な移行(オンライン移行とも呼ばれます)では、最初の完全なダンプと読み込みの後、移行元での変更が継続的に移行先に適用されます。移行先で読み取りと書き込みの準備が整ったら、移行元と移行先の間のレプリケーションを完了します。移行先の Cloud SQL インスタンスまたは AlloyDB for PostgreSQL クラスタは、スタンドアロンのプライマリ インスタンスとして使用できるようになります。ソースと宛先が同期している状態で切り替えを行うと、ダウンタイムを最小限に抑えることができます。
1 回限りの移行
1 回限りの移行は、データベースの単一のポイントインタイム スナップショットです。Database Migration Service は、移行元からスナップショットを取得して移行先に適用します。このプロセスはダンプして読み込むという手法であり、読み込みが完了すると、移行先が使用可能な状態になります。移行中はソース データベースに新しい書き込みを行うことができないため、移行プロセス中にソース データベースに依存するアプリケーションでダウンタイムが発生する可能性があります。
同タイプの移行
同タイプの移行は、同じデータベース テクノロジー間でデータを移行する場合に行われます。たとえば、MySQL から Cloud SQL for MySQL への移行です。
詳細については、 同種移行をご覧ください。
異種移行
同種移行とは異なり、Oracle から Cloud SQL for PostgreSQL などの異種移行では、移行元と移行先のデータベース テクノロジーが異なります。
詳細については、 異種移行をご覧ください。
最小限のダウンタイム
Database Migration Service は、同種移行と異種移行の両方で、ダウンタイムが短く、継続的なサーバーレス移行をサポートしています。Database Migration Service のサーバーレス アーキテクチャは、移行元データベースの初期スナップショットを取得して、データの現在の状態をキャプチャします。スナップショットが完了すると、Database Migration Service はスナップショットを移行先データベースに読み込み、継続的なデータ レプリケーションが開始されます。データ レプリケーションは、元のデータベースに加えられた変更をリアルタイムで追跡してコピーするため、継続的なオペレーションです。これは、変更データ キャプチャ(CDC)に基づいています。CDC は、初期スナップショットの取得後にデータベースに加えた挿入、更新、削除などの変更のみを識別してキャプチャするプロセスです。
このようなアプローチは、次の理由でダウンタイムを最小限に抑えます。
- 継続的なレプリケーションは、変更のみに焦点を当てるため、データベース全体を頻繁に複製するよりも効率的です。
- 移行元データベースが稼働している間にデータが移行されます。
- サーバーレスの移行により、大規模な移行で高いパフォーマンスを実現できます。
Gemini でコードとスキーマの変換を加速
異種移行の場合、Database Migration Service は、移行元のデータベースのスキーマとオブジェクトを、移行先のデータベースと互換性のある形式に変換します。コンバージョン ワークスペースには次の機能があります。
- 変換ワークスペースを作成すると、最初のスキーマ変換が自動的に行われます。
- インタラクティブ SQL エディタ。変換の問題を修正したり、ニーズに合わせてスキーマを調整したりできます。
- Gemini 変換機能のサポート。
- 自動スキーマ変換のルールをオーバーライドするために使用できるカスタマイズ ディレクティブ。
詳細については、 Gemini を活用したコンバージョンをご覧ください。
セキュリティと暗号化
Database Migration Service は、SSL/TLS 証明書を使用してネットワーク接続を暗号化し、顧客管理の暗号鍵(CMEK)を使用して継続的な移行を行うことで、データを安全に移行します。
詳細については、 セキュリティと暗号化をご覧ください。
オブザーバビリティ指標
Database Migration Service には、移行ジョブの現在の状態と進行状況を把握するのに役立つ図がいくつか表示されます。ほとんどの移行シナリオでは、移行ジョブに含まれるデータベースごとに、これらの図の情報をフィルタできます。
詳細については、移行シナリオに該当する移行ジョブの指標のページをご覧ください。
ユースケース
Database Migration Service では、次のユースケースが可能です。
- マネージド サービスへのリフト&シフト移行
- 組織の Google Cloudへの移行の一環として、VM ベースのセルフホスト型データベースからマネージド データベース クラウド サービスに移行できます。これにより、インフラストラクチャの管理ではなく、マネージド サービスで実行されるデータベースの高可用性、障害復旧、パフォーマンスに集中できます。
- マルチクラウドの継続的なレプリケーション
- リージョン間のリードレプリカと同様に、データが別のクラウド プロバイダに存在する場合、移行ジョブはデータベースをGoogle Cloud に継続的に複製して、マルチクラウドの読み取り可用性を実現できます。Database Migration Service は、デュアル書き込みシナリオ(移行元と移行先の両方への書き込みと読み取り)をサポートしていません。
次のステップ
利用可能な移行シナリオの詳細:
- 同タイプの移行
- 異種移行