このトピックでは、Data Transmission Service (DTS) を使用して、スタンドアロンインスタンスまたはレプリカセットインスタンスを別のリージョンに移行する方法について説明します。 レプリカセットインスタンスの完全データ移行と増分データ移行を実行できます。 スタンドアロンインスタンスのフルデータ移行のみを実行できます。
前提条件
ソースインスタンスは、スタンドアロンインスタンス、レプリカセットインスタンス、またはシャードクラスターインスタンスです。
説明DTSは、スタンドアロンインスタンスからの増分データ移行をサポートしていません。 詳細については、「移行タイプ」をご参照ください。
ソースインスタンスにパブリックエンドポイントが適用されます。 詳細については、「 (オプション) ApsaraDB For MongoDBレプリカセットインスタンスのパブリックエンドポイントの申請」をご参照ください。
ターゲットインスタンスは、ターゲットリージョンに作成されます。 詳細は、インスタンスの作成をご参照ください。
説明移行元インスタンスが移行先インスタンスに使用するストレージ容量よりも10% 大きいストレージ容量を選択することを推奨します。
背景情報
次のシナリオでは、ApsaraDB for MongoDBインスタンスを別のリージョンに移行する必要があります。
ビジネスを再構築します。
ApsaraDB for MongoDBインスタンスを使用して、Elastic Compute Service (ECS) インスタンスにデプロイされたアプリケーションにデータベースサービスを提供します。 ただし、2つのインスタンスは同じリージョンにありません。
この例では、中国 (青島) リージョンのApsaraDB for MongoDBインスタンスが中国 (杭州) リージョンに移行されます。
この例では、ソースインスタンスからデータを移行する方法についてのみ説明します。 データの移行後、ソースインスタンスが不要になった場合は、ソースインスタンスをリリースできます。
使用上の注意
DTSは、完全データ移行中にソースデータベースとターゲットデータベースのリソースを使用します。 これにより、データベースサーバーの負荷が増加する可能性があります。 大量のデータを移行したり、サーバーの仕様がビジネス要件を満たしていない場合、データベースサービスが利用できなくなることがあります。 データを移行する前に、移行元インスタンスと移行先インスタンスのパフォーマンスに対するデータ移行の影響を評価します。 オフピーク時にデータを移行することを推奨します。
DTSは、スタンドアロンインスタンスからの増分データ移行をサポートしていません。 データの一貫性を確保するために、完全なデータ移行プロセス中にソースインスタンスにデータを書き込まないでください。
ソースの自己管理型MongoDBデータベースとターゲットインスタンスが異なるデータベースバージョンまたはストレージエンジンを実行している場合は、移行を開始する前に、それらの間で互換性の問題が発生しないようにしてください。 ApsaraDB For MongoDBでサポートされているデータベースのバージョンとストレージエンジンの詳細については、「MongoDBのバージョンとストレージエンジン」をご参照ください。
デフォルトでは、新しいインスタンスは最新のマイナーバージョンを実行します。 これにより、高いパフォーマンスと安定性が保証されます。
データは同時に宛先インスタンスに書き込まれます。 したがって、移行先インスタンスで占有されるストレージ容量は、移行元インスタンスで占有されるストレージ容量よりも大きく10% 5% です。
ターゲットインスタンスに、ソースインスタンスと同じプライマリキーがないことを確認します。 デフォルトの主キーは_idです。 データが失われる可能性があります。 ソースインスタンスとターゲットインスタンスに同じプライマリキーがある場合は、ビジネスサービスを中断することなく、ターゲットインスタンスの対応するドキュメントを削除します。
課金
移行タイプ | タスク設定料金 | インターネットトラフィック料金 |
フルデータ移行 | 無料です。 | インターネット経由でAlibaba Cloudからデータが移行された場合にのみ課金されます。 詳細については、「課金の概要」をご参照ください。 |
増分データ移行 | 有料。 詳細については、「課金の概要」をご参照ください。 |
移行タイプ
移行タイプ | 説明 |
フルデータ移行 | DTSは、オブジェクトの既存のデータをソースMongoDBデータベースからターゲットMongoDBデータベースに移行します。 説明 次のタイプのオブジェクトがサポートされています: データベース、コレクション、およびインデックス。 |
増分データ移行 | 完全データ移行が完了すると、DTSは増分データをソースMongoDBデータベースからターゲットMongoDBデータベースに移行します。 説明
|
データベースアカウントに必要な権限
データベース | 完全なデータ移行 | 増分データ移行 |
ソースインスタンス | ソースデータベースの読み取り権限 | ソースデータベース、管理者データベース、およびローカルデータベースの読み取り権限 |
宛先インスタンス | ターゲットデータベースの読み取りおよび書き込み権限 | ターゲットデータベースの読み取りおよび書き込み権限 |
データベースアカウントの作成方法と権限付与方法の詳細については、「MongoDBデータベースユーザーの権限の管理」をご参照ください。
手順
ApsaraDB for MongoDBスタンドアロンインスタンスから別のApsaraDB for MongoDBインスタンスへのデータ移行
ApsaraDB for MongoDBレプリカセットインスタンスからApsaraDB for MongoDBレプリカセットまたはシャードクラスターインスタンスへのデータの移行
シャードクラスターアーキテクチャを使用する自己管理型MongoDBデータベースからApsaraDB for MongoDBレプリカセットまたはシャードクラスターインスタンスへのデータの移行
データの移行後、ワークロードを移行先インスタンスに切り替えます。
次のステップ
ソースインスタンスが不要になった場合は、ソースインスタンスをリリースします。
ソースインスタンスが従量課金に基づいて課金されている場合、インスタンスをリリースできます。 詳細については、「ApsaraDB For MongoDB インスタンスのリリース」をご参照ください。
ソースインスタンスがサブスクリプションの課金方法に基づいて課金される場合、インスタンスをリリースすることはできません。