データベース移行には、スキーマ オブジェクト(テーブル、インデックス、ビュー)、ストアド プロシージャ、関数、トリガーなど、データベースに含まれるデータを既存のデータベースから新しいデータベースまたは更新されたデータベースに移動することが含まれます。
Database Migration Service について学習し、データベースを Google Cloud に移行しましょう。
データ移行は、データベース移行プロセスのコンポーネントであり、データをある環境から別の環境に移動するものです。ストレージ関連の変更など、データベースを移行せずにデータの移動が必要になる場合もあります。
データとデータベースの移行を成功させる鍵は、移行中やカットオーバー中のダウンタイムと中断を最小限に抑えながら、情報を正確かつ迅速に移行することです。
データベースの移行は、積極的に行うことも、やむを得ず行うこともあります。レガシー システムは、やがて最新のビジネスニーズに対応できなくなるほか、資産としての価値が下がり、維持することがリスクになる可能性もあります。
ここでは、データベースの移行が必要になる主な理由をいくつかご紹介します。
既存のアーキテクチャが運用要件をサポートできなくなったとき、ビジネスを安全かつ効率的に継続するためには、「移行」が次の必然的なステップとなります。
データベースの移行において、「同種」と「異種」という用語が使用されることがあります。テクニカル チームが実施する作業を計画する際は、これらの違いを念頭に置く必要があります。
移行タイプ | 意味 | 仕組み |
均質 | 移行元と移行先のデータベースで、同じエンジンまたは非常によく似たエンジンを使用します。 | すでに互換性があるデータ形式であるため、通常はこの方が簡単です。 |
異質 | 移行先のデータベースは、移行元とは異なるエンジンを使用します。 | 新しいデータベースが理解できるようにスキーマとコードを変換する必要があります。 |
移行タイプ
意味
仕組み
均質
移行元と移行先のデータベースで、同じエンジンまたは非常によく似たエンジンを使用します。
すでに互換性があるデータ形式であるため、通常はこの方が簡単です。
異質
移行先のデータベースは、移行元とは異なるエンジンを使用します。
新しいデータベースが理解できるようにスキーマとコードを変換する必要があります。
データの移行には、4 つの一般的な戦略があります。詳細と推奨される戦略については、クラウド移行戦略をご覧ください。
はい。AI の活用は、プロセスを高速化する一般的な方法になりつつあります。AI、特に LLM は、既存のコードとスキーマを分析して、ターゲット データベースの変換を提案するのに役立ちます。これにより、複雑なコードの書き換えを自動化し、移行中に遅延を引き起こす可能性のある互換性の問題を検出できます。
移行には数日から数か月かかる場合があるため、適切な計画を立てることが重要です。データベースの規模(小規模なプロジェクトであれば数日、複雑で多層的な移行であれば数か月かかる場合があります)、移行戦略、データベース移行サービスを使用するかどうかなどを考慮します。
スキーマは、データベースのブループリントまたはマップです。テーブル、フィールド、それらの相互関係など、データの整理方法を定義します。移行中に、別の種類のデータベース エンジンに移行する場合は、このブループリントの変換が必要になる場合があります。
最大のリスクは、データ損失、長期間のダウンタイム、セキュリティのギャップです。移行が適切に計画されていないと、新しい環境でアプリケーションが正しく動作しない可能性があります。マネージド移行サービスを使用し、システムを徹底的にテストすることで、これらのリスクを軽減できます。
レプリケーションを使用すると、新旧のデータベースを同時に実行できるため、ダウンタイムを最小限に抑えることができます。最終的な「カットオーバー」フェーズでは通常、短時間のダウンタイムが必要になりますが、高度な移行サービスは、この期間をできるだけ短くするように設計されています。
データベースの移行では、データを移動するだけでなく、新しいシステムでワークロードがスムーズに実行されるように機能を維持することです。移行の方法は、作成したコードと移行ツールによって異なります。
手動でのデータ移行はリスクが高く、時間もかかる可能性がありますが、専用の移行サービスを使用すると、プロジェクトを順調に進めることができます。
転送の高速化
最適化されたパスを使用する専用のツールでデータを迅速に移動します。
ダウンタイムの削減
移行サービスは、アプリケーションの稼働を維持し、利用者がサービスの中断に気づかないようにします。
データの整合性
これらのツールを使用すると、新しいシステムでも古いシステムと同じようにデータが表示され、動作します。
セキュリティ
移動中のデータは暗号化されるため、第三者による不正アクセスから保護されます。
複雑さの解消
別のデータベース エンジンに移行する場合は、これらのサービスがコードの自動変換に役立つことがよくあります。
コスト削減
手作業を減らし、プロジェクトのタイムラインを短縮することで、人件費とオーバーヘッドを削減できます。
任意の 2 つの場所の間でデータベースを移行できますが、移行の大部分はオンプレミスからクラウドへ、またはクラウドから別のクラウドへ行われます。
企業がクラウド(または別のクラウド プロバイダ)に移行する理由はさまざまです。
クラウドへの移行のメリットについて詳しくご確認ください。
前述の理由から、多くの組織がオンプレミスのワークロードをクラウドに移行しています。オンプレミスからの移行では、クラウド間での移行に比べて、さらに考慮すべき点があります。
オンプレミス ワークロードを移行する一般的な戦略は、ワークロード全体をクラウドにコピーする再ホストです。これにより、クラウドへの移行に伴うセキュリティ、信頼性、費用面でのメリットが得られます。
ただし、この戦略では、オンプレミス アーキテクチャの既存の非効率性もクラウド インフラストラクチャに移行されます。したがって、この戦略では、クラウドネイティブ アーキテクチャに関連するより大きな費用削減と効率性を逃すことになります。また、障害復旧、分析インテグレーション、AI/ML サービス、パートナー サービスのマーケットプレイスなどの分野で、クラウドの豊富な機能を活用できなくなる可能性もあります。
移行中、特に異なる種類の環境間では、データのセキュリティを確保する必要があります。最適なセキュリティを確保する方法の一つは、信頼できるデータベース移行サービスを使用することです。
データやデータベースの移行は複雑になる可能性があります。企業のデータだけでなく、組織のデータも新しいアーキテクチャにシームレスに移行できるようにすることが重要です。不適切な方法を使用すると、データ損失、ワークロードの正常な実行の欠如、セキュリティの問題が発生する可能性があります。
一部のベスト プラクティス
プロセスの詳細については、データの移行のコンセプトと原則とデータの移行プロセスの設定と実行をご覧ください。
ビジネスケースによって詳細は異なりますが、移行を成功させるための基本手順は以下のとおりです。
移行に必要なフェーズの数は、組織の既存の設定とタイムラインによって異なります。たとえば、セルフマネージドのオンプレミス デプロイメントからマネージド クラウド サービスへの移行は 1 ステップで完了できます。また、時間に余裕がない場合は、まずクラウドのセルフマネージド データベースに移行してから、フルマネージド ソリューションに切り替えることもできます。
データベースの移行プロセスは、企業が頻繁に行うことがないのが理想です。移行を最大限に活用するには、次の点を考慮する必要があります。
比較検討 | 推奨事項 |
最初に移行すべきデータベースとアプリケーションはどれか。 | 優先度の低いワークロードや社内ワークロードから始めます。これにより、ミッション クリティカルなシステムに触れる前にプロセスを改良する機会を得ることができます。 |
データモデルを変更すべきか。 | 現在のモデルがニーズを満たしているかどうかを評価します。データ構造が変化している場合は、NoSQL データベースに移行するなど、別のモデルに切り替えることで柔軟性が向上します。 |
データベースを自分で管理するか、それともマネージド サービスを選択するか。 | なるべくマネージド サービスを選択します。メンテナンスとパッチ適用がオフロードされるため、インフラストラクチャの管理ではなく、アプリケーションの構築に集中できます。 |
移行によってビジネス運営はどのような影響を受けるか。 | 業務への影響を最小限に抑える計画を立てます。レプリケーションを活用することで、最終的なカットオーバーの準備が整うまで、新旧のデータベースを並行して稼働させることができます。 |
比較検討
推奨事項
最初に移行すべきデータベースとアプリケーションはどれか。
優先度の低いワークロードや社内ワークロードから始めます。これにより、ミッション クリティカルなシステムに触れる前にプロセスを改良する機会を得ることができます。
データモデルを変更すべきか。
現在のモデルがニーズを満たしているかどうかを評価します。データ構造が変化している場合は、NoSQL データベースに移行するなど、別のモデルに切り替えることで柔軟性が向上します。
データベースを自分で管理するか、それともマネージド サービスを選択するか。
なるべくマネージド サービスを選択します。メンテナンスとパッチ適用がオフロードされるため、インフラストラクチャの管理ではなく、アプリケーションの構築に集中できます。
移行によってビジネス運営はどのような影響を受けるか。
業務への影響を最小限に抑える計画を立てます。レプリケーションを活用することで、最終的なカットオーバーの準備が整うまで、新旧のデータベースを並行して稼働させることができます。