すべてのプロダクト
Search
ドキュメントセンター

Data Transmission Service:MongoDB (シャーディングキーなし) から MongoDB (シャードクラスターアーキテクチャ) への移行

最終更新日:Nov 09, 2025

Data Transmission Service (DTS) を使用すると、シャーディングキーのないソース MongoDB データベースから、シャードクラスターアーキテクチャを使用するターゲット MongoDB データベースにデータを移行できます。移行中に、シャーディングキーのデフォルト値を指定できます。このトピックでは、ソースとしてレプリカセットアーキテクチャの ApsaraDB for MongoDB インスタンスを使用し、ターゲットとしてシャードクラスターアーキテクチャの ApsaraDB for MongoDB インスタンスを使用して、移行手順を説明します。

前提条件

  • シャードクラスターアーキテクチャでターゲット ApsaraDB for MongoDB インスタンスを作成します。詳細については、「シャードクラスターインスタンスの作成」をご参照ください。

    説明
    • ソースがシャードクラスターアーキテクチャの ApsaraDB for MongoDB インスタンスである場合、シャードノードのエンドポイントをリクエストする必要があります。各シャードのデータベースアカウントとパスワードが同じであることを確認してください。詳細については、「シャードノードのエンドポイントをリクエストする」をご参照ください。

    • サポートされているバージョンについては、「移行ソリューション」をご参照ください。

  • ターゲット ApsaraDB for MongoDB インスタンスのストレージ容量は、ソース ApsaraDB for MongoDB インスタンスで使用されているストレージ容量よりも大きい必要があります。ターゲットインスタンスのストレージ容量は、ソースインスタンスのストレージ容量より少なくとも 10% 大きくすることをお勧めします。

  • 必要に応じて、ターゲット ApsaraDB for MongoDB インスタンスでシャーディングが必要なデータベースとコレクションを作成します。データシャーディングを設定し、バランサーを有効にし、事前シャーディングを実行します。詳細については、「シャードのパフォーマンスを最大化するためのデータシャーディングの設定」および「MongoDB シャードクラスターでの不均等なデータ分布に対処する方法」をご参照ください。

    説明

    データシャーディングを設定すると、すべてのデータが単一のシャードに移行されるのを防ぎ、クラスターのパフォーマンスを最大限に活用できます。バランサーと事前シャーディングを有効にすると、データスキューを回避できます。

注意事項

タイプ

説明

ソースデータベースの制限

  • 帯域幅要件: ソースデータベースのサーバーには、十分なアウトバウンド帯域幅が必要です。そうでない場合、移行速度が影響を受けます。

  • 移行するコレクションには、プライマリキーまたは一意制約が必要です。制約内のフィールドは一意である必要があります。そうでない場合、ターゲットデータベースに重複データが存在する可能性があります。

  • コレクションレベルでオブジェクトを移行し、コレクション名のマッピングなどの編集が必要な場合、1 つのデータ移行タスクでサポートされるコレクションは最大 1,000 です。この制限を超えると、タスクの送信後にエラーが報告されます。この場合、コレクションを複数のデータ移行タスクに分割するか、データベース全体を移行するようにタスクを設定します。

  • ソースデータベースから移行する単一のデータは 16 MB を超えることはできません。超えた場合、タスクは失敗します。

  • ソース MongoDB インスタンスがシャードクラスターの場合、Mongos ノードの数は 10 を超えることはできません。

  • ソースインスタンスがシャードクラスターアーキテクチャの自主管理 MongoDB データベースである場合:

    • 次の アクセス方法 オプションがサポートされています: パブリック IP アドレスExpress Connect、VPN Gateway、または Smart Access Gateway、および Cloud Enterprise Network (CEN)

    • MongoDB のバージョンが 8.0 以降で、移行方法Oplog に設定されている場合、データ移行タスクに使用されるシャードアカウントに directShardOperations 権限を付与する必要があります。db.adminCommand({ grantRolesToUser: "username", roles: [{ role: "directShardOperations", db: "admin"}]}) コマンドを実行して権限を付与できます。

      説明

      コマンドで、username をデータ移行タスクに使用されるシャードアカウントに置き換えます。

  • ソースデータベースが Azure Cosmos DB for MongoDB インスタンスまたは Amazon DocumentDB エラスティッククラスターの場合、完全移行のみがサポートされます。

  • 増分移行の場合:

    ソースデータベースで oplog が有効になっており、oplog が少なくとも 7 日間保持されている必要があります。または、変更ストリームが有効になっており、DTS が変更ストリームを使用して過去 7 日間のソースデータベースのデータ変更をサブスクライブできる必要があります。そうでない場合、ソースデータベースからデータ変更を取得できないため、データ移行タスクが失敗する可能性があります。極端な場合、データの不整合や損失が発生する可能性があります。これによって発生する問題は、DTS サービスレベルアグリーメント (SLA) の対象外です。

    重要
    • oplog を使用してソースデータベースからデータ変更を取得することをお勧めします。

    • MongoDB 4.0 以降のみが、変更ストリームを使用したデータ変更の取得をサポートしています。

    • ソースデータベースが Amazon DocumentDB インスタンス (エラスティッククラスターではない) の場合、手動で変更ストリームを有効にする必要があります。タスクを設定するときは、移行方法ChangeStream に、アーキテクチャシャードクラスター に設定します。

  • ソースデータベースの操作上の制限:

    • スキーマ移行と完全移行中は、データベースやコレクションでスキーマ変更を実行しないでください。これには、配列型のデータの更新も含まれます。そうしないと、データ移行タスクが失敗するか、ソースデータベースとターゲットデータベースの間でデータの不整合が発生します。

    • ソース MongoDB インスタンスがシャードクラスターアーキテクチャでデプロイされている場合、データ移行インスタンスの実行中に、shardCollection、reshardCollection、unshardCollection、moveCollection、movePrimary などのコマンドを実行して、ソースデータベース内の移行対象オブジェクトのデータ分布を変更しないでください。そうしないと、データの不整合が発生する可能性があります。

    • 完全データ移行のみを実行する場合、ソースインスタンスに新しいデータを書き込まないでください。そうしないと、ソースデータベースとターゲットデータベースの間でデータが不整合になります。リアルタイムのデータ整合性を確保するには、[スキーマ移行]、[完全データ移行]、および [増分データ移行] を選択します。

  • 移行するコレクションに Time To Live (TTL) インデックスが含まれている場合、データの不整合またはインスタンスの遅延が発生する可能性があります。

  • シャードクラスターアーキテクチャの MongoDB インスタンスに孤立したドキュメントが存在しないことを確認してください。そうしないと、データの不整合やタスクの失敗が発生する可能性があります。詳細については、「孤立したドキュメント」および「MongoDB シャードクラスターで孤立したドキュメントをクリーンアップする方法」をご参照ください。

  • ソースデータベースがシャードクラスターアーキテクチャの MongoDB インスタンスで、バランサーがデータをバランシングしている場合、インスタンスの遅延が発生する可能性があります。

その他の制限

  • 移行中にソースデータベースに追加された新しいコレクションのシャーディングキーにデフォルト値を設定することはできません。

  • SRV アドレスを使用して MongoDB データベースに接続することはできません。

  • ソースが非シャードクラスターで、ターゲットがシャードクラスターアーキテクチャの Alibaba Cloud MongoDB インスタンスの場合、タスクは データベース設定とテーブルのフィールド設定 ステップに進みます。

  • ターゲット MongoDB インスタンス (シャードクラスターアーキテクチャ) のバージョンが 4.4 より前の場合、データベース設定とテーブルのフィールド設定 ステップで設定されたデフォルトの ShardKey 値が有効になります。DTS は元のデータをデフォルト値で埋め、データをターゲットに書き込みます。ターゲット MongoDB インスタンス (シャードクラスターアーキテクチャ) のバージョンが 4.4 以降の場合、データベース設定とテーブルのフィールド設定 ステップで設定されたデフォルト値は有効になりません。DTS はデフォルトで元のデータをターゲットに書き込みます。

  • 互換性を確保するために、ソースとターゲットの MongoDB インスタンスのデータベースバージョンを同じにするか、古いバージョンから新しいバージョンに移行することをお勧めします。新しいバージョンから古いバージョンに移行すると、データベースの互換性の問題が発生する可能性があります。

  • admin、config、および local データベースのデータは移行できません。

  • トランザクション情報は保持されません。ソースデータベースのトランザクションがターゲットデータベースに移行されると、それらは個別のレコードに変換されます。

  • DTS がターゲットコレクションにデータを書き込むときにプライマリキーまたは一意キーの競合が発生した場合、DTS は対応する書き込みステートメントをスキップし、ターゲットコレクションの既存のデータを保持します。

  • ソース MongoDB のバージョンが 3.6 より前で、ターゲットバージョンが 3.6 以降の場合、データベースエンジンの実行計画の違いにより、移行後にデータのフィールドの順序が一致しない場合があります。フィールドと値のマッピングは一貫性を保ちます。ビジネスにネストされた構造の一致検索ロジックが含まれる場合は、フィールドの順序が一致しないことによる潜在的な影響を評価してください。

  • データを移行する前に、ソースデータベースとターゲットデータベースのパフォーマンスを評価してください。また、オフピーク時にデータ移行を実行することをお勧めします。そうしないと、DTS は完全データ移行中にソースデータベースとターゲットデータベースの読み取りおよび書き込みリソースを消費し、データベースサーバーの負荷が増加する可能性があります。

  • 完全データ移行は同時 INSERT 操作を実行するため、ターゲットデータベースのコレクションに断片化が発生します。完全移行が完了すると、ターゲットデータベースのコレクションのストレージ容量は、ソースインスタンスのコレクションのストレージ容量よりも大きくなります。

  • DTS は、過去 7 日以内に失敗したタスクを再開しようとします。ワークロードをターゲットインスタンスに切り替える前に、タスクを停止またはリリースするか、DTS がターゲットインスタンスへのアクセスに使用するアカウントから書き込み権限を取り消してください。これにより、タスクが自動的に再開され、ソースデータがターゲットデータを上書きするのを防ぎます。

  • DTS はデータを同時に書き込むため、ターゲットが占有するストレージ容量はソースよりも 5% から 10% 大きくなります。

  • ターゲットコレクションに一意なインデックスがあるか、その capped プロパティが true の場合、コレクションは増分移行中の同時リプレイをサポートしません。シングルスレッドの書き込みのみがサポートされます。これにより、タスクの遅延が増加する可能性があります。

  • ターゲット MongoDB データベース内のドキュメント数をクエリするには、db.$table_name.aggregate([{ $count:"myCount"}]) 構文を使用します。

  • ターゲット MongoDB データベースにソースデータベースと同じプライマリキー (デフォルトは _id) がないことを確認してください。そうしないと、データ損失が発生する可能性があります。ターゲットデータベースにソースデータベースと同じプライマリキーがある場合は、ビジネスに影響がなければターゲットデータベースの関連データをクリアしてください。これは、ソースデータベースと同じ _id を持つターゲットデータベース内のドキュメントを削除することを意味します。

  • インスタンスが失敗した場合、DTS ヘルプデスクは 8 時間以内にインスタンスを回復しようとします。回復プロセス中に、インスタンスの再起動やパラメーターの調整などの操作が実行される場合があります。

    説明

    パラメーターが調整されるとき、DTS インスタンスのパラメーターのみが変更されます。データベースのパラメーターは変更されません。変更される可能性のあるパラメーターには、「インスタンスパラメーターの変更」で説明されているものが含まれますが、これらに限定されません。

  • ビジネスをターゲット MongoDB データベースに切り替えた後、ビジネス運用がその MongoDB データベースのシャードコレクションの要件に準拠していることを確認する必要があります。

特殊なケース

ソースデータベースが自主管理 MongoDB データベースである場合:

  • 移行中にソースデータベースでプライマリ/セカンダリフェールオーバーが発生した場合、データ移行タスクは失敗します。

  • DTS の遅延は、ターゲットデータベースの最後に移行されたデータ入力のタイムスタンプと現在のタイムスタンプを比較することによって計算されます。ソースデータベースが長期間更新されていない場合、遅延情報が不正確になる可能性があります。タスクに表示される遅延が高すぎる場合は、ソースデータベースで更新操作を実行して遅延情報を更新できます。

説明

データベース全体を移行することを選択した場合、毎秒データを定期的に更新または書き込むハートビートを作成することもできます。

課金

移行タイプ

インスタンス構成料金

インターネットトラフィック料金

スキーマ移行と完全データ移行

無料です。

ターゲットデータベースの アクセス方法 パラメーターが パブリック IP アドレス に設定されている場合、インターネットトラフィックに対して課金されます。詳細については、「課金の概要」をご参照ください。

増分データ移行

課金されます。詳細については、「課金の概要」をご参照ください。

移行タイプ

移行タイプ

説明

スキーマ移行

DTS は、選択したオブジェクトのスキーマをソース ApsaraDB for MongoDB インスタンスからターゲット ApsaraDB for MongoDB インスタンスに移行します。

説明

DTS は、データベース、コレクション、およびインデックスのスキーマ移行をサポートしています。

完全データ移行

DTS は、オブジェクトの完全データをソース ApsaraDB for MongoDB インスタンスからターゲット ApsaraDB for MongoDB インスタンスに移行します。

説明

DTS は、データベースとコレクションの完全データ移行をサポートしています。

増分データ移行

DTS は、増分データをソース ApsaraDB for MongoDB インスタンスからターゲット ApsaraDB for MongoDB インスタンスに移行します。

oplog の使用

DTS タスクは、タスクの実行開始後に作成されたデータベースからの増分データを移行しません。DTS は、次の操作によって生成された増分データを移行します:

  • CREATE COLLECTION および CREATE INDEX

  • DROP DATABASE、DROP COLLECTION、および DROP INDEX

  • RENAME COLLECTION

  • コレクション内のドキュメントを挿入、更新、削除するために実行される操作。

    説明

    更新されたドキュメントの増分データを移行する場合、$set からの更新のみを移行します。

変更ストリームの使用

DTS は、次の操作によって生成された増分データを移行します:

  • DROP DATABASE および DROP COLLECTION

  • RENAME COLLECTION

  • コレクション内のドキュメントを挿入、更新、削除するために実行される操作

説明

更新されたドキュメントの増分データを移行する場合、$set からの更新のみを移行します。

データベースアカウントに必要な権限

データベース

スキーマ移行

完全移行

増分移行

ソース ApsaraDB for MongoDB

移行するデータベースと config データベースに対する読み取り権限。

移行するデータベース、admin データベース、および local データベースに対する読み取り権限。

ターゲット ApsaraDB for MongoDB

dbAdminAnyDatabase 権限、ターゲットデータベースに対する readWrite 権限、local データベースに対する読み取り権限、および config データベースに対する読み取り権限。

ソースおよびターゲット ApsaraDB for MongoDB インスタンスのデータベースアカウントを作成して権限を付与するには、「DMS を使用した MongoDB データベースユーザーの管理」をご参照ください。

手順

  1. 次のいずれかの方法でデータ移行ページに移動し、データ移行インスタンスが存在するリージョンを選択します。

    DTS コンソール

    1. DTS コンソールにログインします。

    2. 左側のナビゲーションウィンドウで、データの移行 をクリックします。

    3. ページの左上隅で、データ移行インスタンスが存在するリージョンを選択します。

    DMS コンソール

    説明

    実際の操作は、DMS コンソールのモードとレイアウトによって異なる場合があります。詳細については、「シンプルモード」および「DMS コンソールのレイアウトとスタイルのカスタマイズ」をご参照ください。

    1. DMS コンソールにログインします。

    2. 上部のナビゲーションバーで、ポインターを [データ + AI] > [DTS (DTS)] > [データ移行] の上に移動します。

    3. [データ移行タスク] の右側にあるドロップダウンリストから、データ同期インスタンスが存在するリージョンを選択します。

  2. タスクの作成 をクリックして、タスク設定ページに移動します。

  3. ソースデータベースとターゲットデータベースを設定します。次の表にパラメーターを示します。

    カテゴリ

    設定

    説明

    なし

    タスク名

    DTS タスクの名前。DTS は自動的にタスク名を生成します。タスクを簡単に識別できるように、わかりやすい名前を指定することをお勧めします。一意のタスク名を指定する必要はありません。

    移行元データベース

    既存の接続情報の選択

    • DTS に登録されているデータベースインスタンスを使用する場合、ドロップダウンリストからインスタンスを選択します。DTS は、インスタンスの次のデータベースパラメーターを自動的に入力します。詳細については、「データベース接続の管理」をご参照ください。

      説明

      DMS コンソールでは、[DMS データベースインスタンスの選択] ドロップダウンリストからデータベースインスタンスを選択できます。

    • インスタンスを DTS に登録できない場合、または DTS に登録されているインスタンスを使用する必要がない場合は、次のデータベース情報を設定する必要があります。

    データベースタイプ

    MongoDB を選択します。

    アクセス方法

    Alibaba Cloud インスタンスを選択します。

    インスタンスのリージョン

    ソース ApsaraDB for MongoDB インスタンスが存在するリージョンを選択します。

    Alibaba Cloud アカウント間でデータを複製

    この例では、現在の Alibaba Cloud アカウントのデータベースインスタンスが使用されます。× を選択します。

    アーキテクチャ

    この例では、レプリカセット を選択します。

    • レプリカセット: 複数のノードをデプロイして、高可用性と読み書き分離を実現します。詳細については、「レプリカセットアーキテクチャ」をご参照ください。

    • シャードクラスター: Mongos、シャード、Configserver の 3 つのコンポーネントを提供します。Mongos とシャードノードの数と構成を選択できます。詳細については、「シャードクラスターアーキテクチャ」をご参照ください。

      説明

      アーキテクチャシャードクラスター に設定した場合、ShardアカウントShardパスワード も指定する必要があります。

    移行方法

    ソースデータベースから増分データを移行するために使用される方法。ビジネス要件に基づいて方法を選択します。有効な値:

    • Oplog (推奨):

      このオプションは、ソースデータベースで oplog 機能が有効になっている場合に使用できます。

      説明

      デフォルトでは、oplog 機能は自主管理 MongoDB データベースと ApsaraDB for MongoDB インスタンスの両方で有効になっています。この機能により、ログのプル速度が速いため、低遅延で増分データを移行できます。したがって、[移行方法] パラメーターには Oplog を選択することをお勧めします。

    • ChangeStream: このオプションは、ソースデータベースで変更ストリームが有効になっている場合に使用できます。詳細については、「変更ストリーム」をご参照ください。

      説明
      • ソースデータベースが非エラスティック Amazon DocumentDB クラスターの場合、[移行方法] パラメーターは ChangeStream にのみ設定できます。

      • アーキテクチャ パラメーターに シャードクラスター を選択した場合、Shardアカウント および Shardパスワード パラメーターを設定する必要はありません。

    インスタンス ID

    ソース ApsaraDB for MongoDB インスタンスの ID を選択します。

    認証データベース

    ソース ApsaraDB for MongoDB インスタンスのデータベースアカウントが属するデータベースの名前を入力します。デフォルト値は [admin] です。

    データベースアカウント

    ソース ApsaraDB for MongoDB インスタンスのデータベースアカウントを入力します。必要な権限については、「データベースアカウントに必要な権限」をご参照ください。

    データベースのパスワード

    データベースへのアクセスに使用されるパスワード。

    暗号化

    ソースデータベースへの接続を暗号化するかどうかを指定します。ビジネス要件に基づいて、非暗号化SSL 暗号化、または Mongo Atlas SSL を選択できます。暗号化 パラメーターで使用可能なオプションは、アクセス方法 および アーキテクチャ パラメーターに選択された値によって決まります。DTS コンソールに表示されるオプションが優先されます。

    説明
    • [アーキテクチャ] パラメーターが [シャードクラスター] に設定され、[移行方法] パラメーターが ApsaraDB for MongoDB データベースの Oplog に設定されている場合、[暗号化] パラメーター SSL 暗号化 は使用できません。

    • ソースデータベースが レプリカセット アーキテクチャを使用する自己管理 MongoDB データベースであり、アクセス方法 パラメーターが Alibaba Cloud インスタンス に設定されておらず、[暗号化] パラメーターが SSL 暗号化 に設定されている場合、認証局 (CA) 証明書をアップロードしてソースデータベースへの接続を検証できます。

    移行先データベース

    既存の接続情報の選択

    • DTS に登録されているデータベースインスタンスを使用する場合、ドロップダウンリストからインスタンスを選択します。DTS は、インスタンスの次のデータベースパラメーターを自動的に入力します。詳細については、「データベース接続の管理」をご参照ください。

      説明

      DMS コンソールでは、[DMS データベースインスタンスの選択] ドロップダウンリストからデータベースインスタンスを選択できます。

    • インスタンスを DTS に登録できない場合、または DTS に登録されているインスタンスを使用する必要がない場合は、次のデータベース情報を設定する必要があります。

    データベースタイプ

    MongoDB を選択します。

    アクセス方法

    Alibaba Cloud インスタンスを選択します。

    インスタンスのリージョン

    ターゲット ApsaraDB for MongoDB インスタンスが存在するリージョンを選択します。

    Alibaba Cloud アカウント間でデータを複製

    この例では、現在の Alibaba Cloud アカウントのデータベースインスタンスが使用されます。× を選択します。

    アーキテクチャ

    この例では、シャードクラスター を選択します。

    インスタンス ID

    ターゲット ApsaraDB for MongoDB インスタンスの ID を選択します。

    認証データベース

    ターゲット ApsaraDB for MongoDB インスタンスのデータベースアカウントが属するデータベースの名前を入力します。デフォルト値は [admin] です。

    データベースアカウント

    ターゲット ApsaraDB for MongoDB インスタンスのデータベースアカウントを入力します。必要な権限については、「データベースアカウントに必要な権限」をご参照ください。

    データベースのパスワード

    データベースへのアクセスに使用されるパスワード。

    暗号化

    ターゲットデータベースへの接続を暗号化するかどうかを指定します。ビジネス要件に基づいて、非暗号化SSL 暗号化、または Mongo Atlas SSL を選択できます。暗号化 パラメーターで使用可能なオプションは、アクセス方法 および アーキテクチャ パラメーターに選択された値によって決まります。DTS コンソールに表示されるオプションが優先されます。

    説明
    • ターゲットデータベースが ApsaraDB for MongoDB インスタンスで、[アーキテクチャ] パラメーターが [シャードクラスター] に設定されている場合、[暗号化] パラメーター SSL 暗号化 は使用できません。

    • ターゲットデータベースが レプリカセット アーキテクチャを使用する自己管理 MongoDB データベースであり、アクセス方法 パラメーターが Alibaba Cloud インスタンス に設定されておらず、[暗号化] パラメーターが SSL 暗号化 に設定されている場合、CA 証明書をアップロードしてターゲットデータベースへの接続を検証できます。

  4. ページの下部で、[接続性のテストと続行] をクリックします。

    説明
    • DTS サーバーの CIDR ブロックが、DTS サーバーからのアクセスを許可するために、ソースおよびターゲットデータベースのセキュリティ設定に自動または手動で追加できることを確認してください。詳細については、「DTS サーバーの IP アドレスをホワイトリストに追加する」をご参照ください。

    • ソースまたはターゲットデータベースが自己管理データベースで、その アクセス方法Alibaba Cloud インスタンス に設定されていない場合、DTS サーバーの CIDR ブロック ダイアログボックスで 接続テスト をクリックします。

  5. 移行するオブジェクトを設定します。

    1. オブジェクト設定 ページで、移行するオブジェクトを設定します。

      設定

      説明

      移行タイプ

      • 完全データ移行のみを実行するには、[スキーマ移行][完全データ移行] を選択します。

      • データ移行中のサービス継続性を確保するには、[スキーマ移行][完全データ移行]、および [増分データ移行] を選択します。

      説明
      • [スキーマ移行] を選択しない場合は、ターゲットデータベースにデータを受信するためのデータベースとテーブルが作成され、[選択したオブジェクト] でオブジェクト名マッピング機能が有効になっていることを確認してください。

      • [増分データ移行] を選択しない場合は、データ移行中にソースデータベースにデータを書き込まないことをお勧めします。これにより、ソースデータベースとターゲットデータベース間のデータ整合性が確保されます。

      競合するテーブルの処理モード

      • エラーの事前チェックと報告: ターゲットデータベースにソースデータベースのコレクションと同じ名前のコレクションが含まれているかどうかをチェックします。ソースデータベースとターゲットデータベースに同じ名前のコレクションが含まれていない場合、事前チェックは合格します。それ以外の場合、事前チェック中にエラーが返され、データ移行タスクを開始できません。

        説明

        ソースデータベースとターゲットデータベースに同じ名前のコレクションが含まれており、ターゲットデータベースのコレクションを削除または名前変更できない場合は、オブジェクト名マッピング機能を使用して、ターゲットデータベースに移行されるコレクションの名前を変更できます。詳細については、「オブジェクト名のマッピング」をご参照ください。

      • エラーを無視して続行: ソースデータベースとターゲットデータベースの同じコレクション名の事前チェックをスキップします。

        警告

        エラーを無視して続行 を選択した場合、データ整合性は保証されず、ビジネスに潜在的なリスクが生じる可能性があります。

        • DTS は、ターゲットデータベースのデータレコードと同じプライマリキーを持つデータレコードを移行しません。

        • データの初期化に失敗したり、特定の列のみが移行されたり、データ移行タスクが失敗したりする可能性があります。

      移行先インスタンスでのオブジェクト名の大文字化

      ターゲットインスタンスのデータベース名、テーブル名、および列名の大文字と小文字の区別。デフォルトでは、[DTS デフォルトポリシー] が選択されています。他のオプションを選択して、オブジェクト名の大文字と小文字の区別がソースまたはターゲットデータベースのものと一致するようにすることができます。詳細については、「ターゲットインスタンスでのオブジェクト名の大文字と小文字の区別の指定」をご参照ください。

      ソースオブジェクト

      ソースオブジェクト セクションから 1 つ以上のオブジェクトを選択します。向右小箭头 アイコンをクリックして、オブジェクトを 選択中のオブジェクト セクションに追加します。

      説明

      データベースまたはコレクションレベルで移行するオブジェクトを選択できます。

      選択中のオブジェクト

      • データを受信するターゲット MongoDB インスタンス (シャードクラスターアーキテクチャ) のデータベース名を指定するには:

        選択中のオブジェクト の下にあるターゲットデータベースを右クリックします。スキーマの編集 ダイアログボックスで、スキーマ名 をデータを受信するターゲット MongoDB インスタンスのデータベース名に変更します。詳細については、「単一のデータベースまたはコレクションのマッピング」をご参照ください。

      • データを受信するターゲット MongoDB インスタンス (シャードクラスターアーキテクチャ) のコレクション名を指定するには:

        選択中のオブジェクト の下にあるコレクションを右クリックします。テーブルの編集 ダイアログボックスで、テーブル名 をデータを受信するターゲット MongoDB インスタンスのコレクション名に変更します。

        重要

        データを受信するコレクションは、コレクションレベルでオブジェクトを移行する場合にのみ指定できます。

      説明
      • データをフィルター処理するには、選択中のオブジェクト セクションで移行するテーブルを右クリックし、表示されるダイアログボックスでフィルター条件を設定します。データフィルタリングは完全移行中にサポートされますが、増分移行中にはサポートされません。詳細については、「フィルター条件の設定」をご参照ください。

      • オブジェクト名マッピング機能を使用してデータを受信するデータベースまたはコレクションを指定した場合、マッピングされたオブジェクトに依存する他のオブジェクトの移行が失敗する可能性があります。

    2. 次へ:詳細設定 をクリックして詳細設定を行います。

      設定

      説明

      タスクのスケジュールに使用する専用クラスターの選択

      デフォルトでは、専用クラスターを指定しない場合、DTS はデータ移行タスクを共有クラスターにスケジュールします。データ移行タスクの安定性を向上させたい場合は、専用クラスターを購入してください。詳細については、「DTS 専用クラスターとは」をご参照ください。

      失敗した接続の再試行時間

      失敗した接続のリトライ時間範囲。データ移行タスクの開始後にソースまたはターゲットデータベースへの接続に失敗した場合、DTS はリトライ時間範囲内にすぐに接続をリトライします。有効な値: 10 から 1,440。単位: 分。デフォルト値: 720。パラメーターを 30 より大きい値に設定することをお勧めします。指定されたリトライ時間範囲内に DTS がソースおよびターゲットデータベースに再接続された場合、DTS はデータ移行タスクを再開します。それ以外の場合、データ移行タスクは失敗します。

      説明
      • 同じソースまたはターゲットデータベースを共有する複数のデータ移行タスクに異なるリトライ時間範囲を指定した場合、後で指定された値が優先されます。

      • DTS が接続をリトライすると、DTS インスタンスに対して課金されます。ビジネス要件に基づいてリトライ時間範囲を指定することをお勧めします。ソースデータベースとターゲットインスタンスがリリースされた後、できるだけ早く DTS インスタンスをリリースすることもできます。

      移行元データベースと移行先データベースで他の問題が発生した場合の、再試行までの待機時間です。

      その他の問題のリトライ時間範囲。たとえば、データ移行タスクの開始後に DDL または DML 操作が失敗した場合、DTS はリトライ時間範囲内にすぐに操作をリトライします。有効な値: 1 から 1440。単位: 分。デフォルト値: 10。パラメーターを 10 より大きい値に設定することをお勧めします。指定されたリトライ時間範囲内に失敗した操作が正常に実行された場合、DTS はデータ移行タスクを再開します。それ以外の場合、データ移行タスクは失敗します。

      重要

      移行元データベースと移行先データベースで他の問題が発生した場合の、再試行までの待機時間です。 パラメーターの値は、失敗した接続の再試行時間 パラメーターの値より小さくする必要があります。

      完全移行率を制限するかどうか

      完全データ移行のスロットリングを有効にするかどうかを指定します。完全データ移行中、DTS はソースデータベースとターゲットデータベースの読み取りおよび書き込みリソースを使用します。これにより、データベースサーバーの負荷が増加する可能性があります。ビジネス要件に基づいて、完全データ移行のスロットリングを有効にできます。スロットリングを設定するには、1 秒あたりのソースデータベースのクエリ率 QPS1 秒あたりの完全移行の行数 RPS、および 1 秒あたりの完全移行データ量 (MB) BPS パラメーターを設定する必要があります。これにより、ターゲットデータベースサーバーの負荷が軽減されます。

      説明

      このパラメーターは、移行タイプ パラメーターに 完全データ移行 を選択した場合にのみ設定できます。

      同期するデータのうち、同一テーブル内のプライマリキー_id のデータ型が一意かどうか

      移行するコレクションでプライマリキー _id のデータ型が一意であるかどうかを指定します。

      重要
      • ビジネス要件に基づいてこのパラメーターを有効にしてください。そうしないと、データ損失が発生する可能性があります。

      • このパラメーターは、移行タイプ パラメーターに 完全データ移行 を選択した場合にのみ必要です。

      有効な値:

      • : データ型は一意です。完全移行中、DTS はソースデータベースのプライマリキーのデータ型をスキャンしません。DTS は、移行するコレクション内のプライマリキーのデータ型を 1 つだけ移行します。

      • ×: データ型は一意ではありません。完全移行中、DTS はソースデータベースのプライマリキーのデータ型をスキャンし、すべてのデータ型のデータを移行します。

      増分移行率を制限するかどうか

      増分データ移行のスロットリングを有効にするかどうかを指定します。スロットリングを設定するには、1 秒あたりの増分移行の行数 RPS および 1 秒あたりの増分移行データ量 (MB) BPS パラメーターを設定する必要があります。これにより、ターゲットデータベースサーバーの負荷が軽減されます。

      説明

      このパラメーターは、移行タイプ パラメーターに 増分データ移行 を選択した場合にのみ設定できます。

      環境タグ

      必要に応じて、インスタンスを識別するための環境タグを選択できます。この例では、環境タグは選択されていません。

      ETL の設定

      抽出・変換・書き出し (ETL) 機能を有効にするかどうかを指定します。詳細については、「ETL とは」をご参照ください。有効な値:

      監視アラート

      データ移行タスクのアラートを設定するかどうかを指定します。タスクが失敗した場合、または移行遅延が指定されたしきい値を超えた場合、アラート連絡先は通知を受け取ります。有効な値:

      • [いいえ]: アラートを設定しません。

      • [はい]: アラートを設定します。この場合、アラートのしきい値とアラート通知設定も設定する必要があります。詳細については、「モニタリングとアラートの設定」トピックの「DTS タスク作成時のモニタリングとアラートの設定」セクションをご参照ください。

    3. [次のステップ: データ検証] をクリックして、データ検証タスクを設定します。

      データ検証機能の使用方法の詳細については、「データ検証タスクの設定」をご参照ください。

    4. 次:データベースおよびテーブルのフィールド設定 をクリックして、ShardKey のデフォルト値を設定します。

      1. ターゲットコレクションの行で、デフォルト値の設定 をクリックします。

        説明

        テーブル名 (コレクション) の ShardKey の数 の値が [0] の場合、ターゲットコレクションにはシャーディングキーがなく、デフォルト値を設定する必要はありません。

      2. ShardKey デフォルト値タイプ を選択します。

        説明

        現在、ShardKey デフォルト値タイプ[string][int] のみをサポートしています。

      3. ShardKey の デフォルト値 を設定します。

        重要
        • デフォルトの ShardKey 値は、ターゲット MongoDB インスタンス (シャードクラスターアーキテクチャ) のバージョンが 4.4 より前の場合にのみ有効になります。

        • 移行するオブジェクト内のすべての ShardKey にデフォルト値を設定する必要があります。そうしないと、事前チェック ステップ中に警告が報告され、タスクが失敗する可能性があります。

  6. タスク設定を保存し、事前チェックを実行します。

    • 関連する API 操作を呼び出して DTS タスクを設定する際に指定するパラメーターを表示するには、ポインターを 次:タスク設定の保存と事前チェック の上に移動し、OpenAPI パラメーターのプレビュー をクリックします。

    • パラメーターを表示する必要がない場合、または表示した場合、ページの下部にある 次:タスク設定の保存と事前チェック をクリックします。

    説明
    • データ移行タスクを開始する前に、DTS は事前チェックを実行します。タスクが事前チェックに合格した後にのみ、データ移行タスクを開始できます。

    • タスクが事前チェックに合格しなかった場合は、失敗した各項目の横にある [詳細の表示] をクリックします。チェック結果に基づいて原因を分析した後、問題をトラブルシューティングします。次に、再度事前チェックを実行します。

    • 事前チェック中に項目のアラートがトリガーされた場合:

      • アラート項目を無視できない場合は、失敗した項目の横にある [詳細の表示] をクリックして問題をトラブルシューティングします。次に、再度事前チェックを実行します。

      • アラート項目を無視できる場合は、[アラート詳細の確認] をクリックします。[詳細の表示] ダイアログボックスで、[無視] をクリックします。表示されるメッセージで、[OK] をクリックします。次に、[再度事前チェック] をクリックして、再度事前チェックを実行します。アラート項目を無視すると、データの不整合が発生し、ビジネスに潜在的なリスクが生じる可能性があります。

  7. インスタンスを購入します。

    1. [成功率][100%] になるまで待ちます。次に、[次へ: インスタンスの購入] をクリックします。

    2. [インスタンスの購入] ページで、データ移行インスタンスのインスタンスクラスパラメーターを設定します。次の表にパラメーターを示します。

      セクション

      パラメーター

      説明

      新しいインスタンスクラス

      リソースグループ

      データ移行インスタンスが属するリソースグループ。デフォルト値: [デフォルトリソースグループ]。詳細については、「Resource Management とは」をご参照ください。

      インスタンスクラス

      DTS は、移行速度が異なるインスタンスクラスを提供します。ビジネスシナリオに基づいてインスタンスクラスを選択できます。詳細については、「データ移行インスタンスのインスタンスクラス」をご参照ください。

    3. チェックボックスを選択して、[Data Transmission Service (従量課金) サービス規約] を読んで同意します。

    4. [購入して開始] をクリックします。表示されるメッセージで、 をクリックします[OK]

      [データ移行] ページでタスクの進行状況を表示できます。

      説明
      • データ移行タスクが増分データの移行に使用できない場合、タスクは自動的に停止します。[ステータス] セクションに [完了] が表示されます。

      • データ移行タスクが増分データの移行に使用できる場合、タスクは自動的に停止しません。増分データ移行タスクは停止も完了もしません。[ステータス] セクションに [実行中] が表示されます。