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

Data Transmission Service:ApsaraDB for MongoDB レプリカセットインスタンス間の双方向データ同期を構成する

最終更新日:Jun 11, 2025

このトピックでは、Data Transmission Service (DTS) を使用して ApsaraDB for MongoDB レプリカセットインスタンス間の双方向データ同期を構成する方法について説明します。

前提条件

  • ソースとデスティネーションの ApsaraDB for MongoDB レプリカセットインスタンスが作成されていること。詳細については、「レプリカセットインスタンスを作成する」をご参照ください。

    重要

    サポートされているデータベースバージョンの詳細については、「データ同期シナリオの概要」をご参照ください。

  • 使用可能なストレージ容量がソースの ApsaraDB for MongoDB インスタンスのデータ総容量よりも 10% 大きいデスティネーション ApsaraDB for MongoDB インスタンスを使用することをお勧めします。

  • ソースインスタンスとデスティネーションインスタンスの replication.oplogGlobalIdEnabled パラメーターが true に設定されていること。詳細については、「インスタンスのデータベースパラメーターを構成する」をご参照ください。

    説明

    replication.oplogGlobalIdEnabled パラメーターが true に設定されていない場合、事前チェックは失敗するか、two-way mongo must have gid エラーが返されます。

使用上の注意

カテゴリ

説明

ソースデータベースとデスティネーションデータベースの制限

  • 帯域幅の要件:ソースデータベースがデプロイされているサーバーには、十分なアウトバウンド帯域幅が必要です。そうでない場合、データ同期の速度に影響します。

  • 同期されるコレクションには、PRIMARY KEY または UNIQUE 制約があり、すべてのフィールドが一意である必要があります。そうでない場合、デスティネーションデータベースに重複したデータレコードが含まれる可能性があります。

  • 同期対象のオブジェクトとしてコレクションを選択し、デスティネーションデータベース内のコレクションを編集する必要がある場合(コレクションの名前変更など)、1 つのデータ同期タスクで最大 1,000 個のコレクションを同期できます。 1,000 個を超えるコレクションを同期するタスクを実行すると、リクエストエラーが発生します。この場合、複数タスクを構成してコレクションをバッチで同期するか、データベース全体を同期するタスクを構成することをお勧めします。

  • ソースデータベースから同期される 1 つのデータエントリのサイズは、16 MB を超えることはできません。そうでない場合、タスクは失敗します。

  • ソースデータベースは、Azure Cosmos DB for MongoDB クラスターまたは Amazon DocumentDB エラスティッククラスターにすることはできません。

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

    重要
    • ソースデータベースのデータ変更を記録するには、oplog を使用することをお勧めします。

    • MongoDB 4.0 以降でのみ、変更ストリームを使用してソースデータベースのデータ変更を取得できます。ソースデータベースのデータ変更を取得するために変更ストリームを使用する場合、双方向同期はサポートされていません。

    • ソースデータベースが非エラスティック Amazon DocumentDB クラスターの場合、変更ストリームを有効にし、移行方法 パラメーターを ChangeStream に、アーキテクチャ パラメーターを シャードクラスター に設定する必要があります。

  • 有効期限 (TTL) インデックスを含むコレクションは同期できません。ソースデータベースに TTL インデックスが含まれている場合、同期後にソースデータベースとデスティネーションデータベース間でデータの不整合が発生する可能性があります。

  • ソースデータベースとデスティネーションデータベースは、同じアーキテクチャの ApsaraDB for MongoDB インスタンスである必要があります。自主管理 MongoDB データベースまたはアーキテクチャが異なる MongoDB データベースでは、双方向同期はサポートされていません。

  • ソースデータベースで実行される操作の制限:

    • スキーマ同期と完全データ同期中は、データベースまたはコレクションのスキーマを変更しないでください(配列型の更新を含む)。そうでない場合、データ同期タスクが失敗するか、ソースデータベースとデスティネーションデータベース間でデータの不整合が発生する可能性があります。

    • 完全データ同期のみを実行する場合は、データ同期中にソースデータベースにデータを書き込まないでください。そうでない場合、ソースデータベースとデスティネーションデータベース間でデータの不整合が発生します。

  • DTS は SRV エンドポイント経由で MongoDB データベースに接続できません。

その他の制限

  • 互換性を確保するために、デスティネーション MongoDB データベースのバージョンは、ソース MongoDB データベースのバージョンと同じかそれ以降である必要があります。デスティネーションデータベースのバージョンがソースデータベースのバージョンよりも古い場合、データベースの互換性の問題が発生する可能性があります。

  • ソースとデスティネーションの ApsaraDB for MongoDB インスタンスのアーキテクチャは同じである必要があります。たとえば、ソースインスタンスが ApsaraDB for MongoDB シャードクラスターインスタンスの場合、デスティネーションインスタンスも ApsaraDB for MongoDB シャードクラスターインスタンスである必要があります。

  • DTS は admin データベースまたは local データベースからデータを同期できません。

  • トランザクション情報は保持されません。トランザクションがデスティネーションデータベースに同期されると、トランザクションは単一のレコードに変換されます。

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

  • データを同期する前に、データ同期がソースデータベースとデスティネーションデータベースのパフォーマンスに与える影響を評価してください。オフピーク時にデータを同期することをお勧めします。完全データ同期中、DTS はソースデータベースとデスティネーションデータベースの読み取りおよび書き込みリソースを使用します。これにより、データベースサーバーの負荷が増加する可能性があります。

  • 完全データ同期中、同時 INSERT 操作により、デスティネーションデータベースのコレクションで断片化が発生します。完全データ同期が完了すると、デスティネーションデータベースのコレクションのストレージ容量は、ソースデータベースのストレージ容量よりも大きくなります。

  • データ同期中に他のソースからのデータがデスティネーションデータベースに書き込まれた場合、ソースデータベースとデスティネーションデータベース間でデータの不整合が発生します。たとえば、他のソースからのデータがデスティネーションデータベースに書き込まれている間に DMS を使用してオンライン DDL ステートメントを実行すると、デスティネーションデータベースでデータ損失が発生する可能性があります。

  • デスティネーションデータベースのコレクションに一意なインデックスがある場合、またはデスティネーションデータベースのコレクションの capped 属性が true の場合、コレクションはシングルスレッドのデータ書き込みのみをサポートし、増分データ同期中の同時再生はサポートしていません。これにより、同期遅延が増加する可能性があります。

  • 双方向データ同期インスタンスには、順方向同期タスクと逆方向同期タスクが含まれています。インスタンスを構成またはリセットするときに、順方向同期タスクと逆方向同期タスクの両方でオブジェクトを同期する必要がある場合は、次のルールが適用されます。

    • タスクの 1 つだけが、オブジェクトの完全データと増分データの両方を同期できます。もう一方のタスクは、オブジェクトの増分データのみを同期します。

    • 現在のタスクのソースデータは、タスク内のデスティネーションデータベースにのみ同期できます。同期されたデータは、他のタスクのソースデータとして使用されません。

  • データはデスティネーションデータベースに同時に書き込まれます。したがって、デスティネーションデータベースで使用されるストレージ容量は、ソースデータベースのデータサイズよりも 5% から 10% 大きくなります。

  • db.$table_name.aggregate([{ $count:"myCount"}]) 構文を使用して、デスティネーション MongoDB データベースでのカウント操作の戻り値をクエリする必要があります。

  • デスティネーション MongoDB データベースにソースデータベースと同じプライマリキーがないことを確認してください。デフォルトのプライマリキーは _id です。そうでない場合、データが失われる可能性があります。デスティネーションデータベースのデータにソースデータベースと同じプライマリキーがある場合は、DTS のサービスを中断せずに、デスティネーションデータベースの関連データをクリアしてください。たとえば、同じプライマリキーが _id の場合、ソースデータベースと同じ _id を持つデスティネーションデータベースのデータを削除できます。

  • DTS タスクの実行に失敗した場合、DTS テクニカルサポートは 8 時間以内にタスクの復元を試みます。復元中、タスクが再起動され、タスクのパラメーターが変更される場合があります。

    説明

    タスクのパラメーターのみが変更される場合があります。データベースのパラメーターは変更されません。 変更される可能性のあるパラメーターには、「DTS インスタンスのパラメーターを変更する」トピックの「インスタンスパラメーターの変更」セクションのパラメーターが含まれますが、これらに限定されません。

課金

同期タイプタスク構成料金
スキーマ同期と完全データ同期無料。
増分データ同期有料。詳細については、「課金の概要」をご参照ください。

サポートされている双方向データ同期トポロジ

DTS は、2 つの ApsaraDB for MongoDB レプリカセットインスタンス間の双方向データ同期のみをサポートしています。DTS は、3 つ以上の ApsaraDB for MongoDB インスタンス間の双方向データ同期をサポートしていません。

サポートされている競合検出

データの整合性を確保するために、同じプライマリキー、ビジネスプライマリキー、または一意キーを持つデータレコードは、同期ノードの 1 つだけで更新されるようにしてください。

DTS は、双方向同期インスタンスの安定性を最大限に高めるために、競合をチェックして修正します。DTS は、次のタイプの競合を検出できます。

  • INSERT 操作によって発生する一意性競合

    INSERT 文を実行してデスティネーションインスタンスに挿入しようとするレコードが既存のレコードと競合する場合、DTS は INSERT 操作を自動的に無視します。

  • UPDATE 操作によって発生する不整合レコード

    UPDATE 文を実行して更新しようとするレコードがデスティネーションインスタンスに存在しない場合、または別のレコードと競合する場合、DTS は UPDATE 操作を自動的に無視します。

  • 削除される存在しないレコード

    DELETE 文を実行してデスティネーションインスタンスから削除しようとするレコードが存在しない場合、DTS は DELETE 操作を自動的に無視します。

重要
  • 双方向同期中、ソースインスタンスとデスティネーションインスタンスのシステム時間が異なる場合があり、同期遅延が発生する可能性があります。したがって、DTS は、競合検出メカニズムがすべてのデータ競合を防ぐことを保証するものではありません。双方向同期を実行するには、同じプライマリキー、ビジネスプライマリキー、または一意キーを持つレコードが、同期ノードの 1 つだけで更新されるようにしてください。

  • デフォルトでは、DTS は [競合解決ポリシー] を [無視] に設定して、データ同期中の前述の競合を解決します。競合解決ポリシーの値を変更することはできません。

同期タイプ

同期タイプ

説明

スキーマ同期

DTS は、選択したオブジェクトのスキーマをソース ApsaraDB for MongoDB インスタンスからデスティネーション ApsaraDB for MongoDB インスタンスに同期します。

完全データ同期

DTS は、選択したオブジェクトの既存データをソース ApsaraDB for MongoDB インスタンスからデスティネーション ApsaraDB for MongoDB インスタンスに同期します。

説明

DTS は、データベースとコレクションというタイプのオブジェクトの完全データ同期をサポートしています。

増分データ同期

DTS は、ソース ApsaraDB for MongoDB インスタンスからデスティネーション ApsaraDB for MongoDB インスタンスに増分データを同期します。

説明

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

  • CREATE COLLECTION および CREATE INDEX

  • DROP COLLECTION および DROP INDEX

  • RENAME COLLECTION

  • コレクションにドキュメントを挿入、更新、および削除するために行われた操作。

    説明

    DTS タスクがファイルの増分データを同期する場合、$set コマンドのみを同期して実行できます。

手順

  1. 次のいずれかの方法を使用して [データ同期] ページに移動し、データ同期インスタンスが存在するリージョンを選択します。

    DTS コンソール

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

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

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

    DMS コンソール

    説明

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

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

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

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

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

  3. オプション。 ページの右上隅にある 新バージョンの設定ページを試してみる をクリックします。

    説明
    • ページの右上隅に 旧バージョンの設定ページに戻る ボタンが表示されている場合は、この手順をスキップします。

    • 構成ページの新バージョンと旧バージョンでは、特定のパラメーターが異なる場合があります。新しいバージョンの構成ページを使用することをお勧めします。

  4. ソースデータベースとデスティネーションデータベースを構成します。次の表にパラメーターを示します。

    セクション

    パラメーター

    説明

    該当なし

    タスク名

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

    ソースデータベース

    [既存の接続を選択]

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

      説明

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

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

    データベースタイプ

    ソースデータベースの種類。 [MongoDB] を選択します。

    アクセス方法

    ソースデータベースのアクセス方法です。[Alibaba Cloud インスタンス] を選択します。

    インスタンスリージョン

    ソース ApsaraDB for MongoDB インスタンスが存在するリージョンです。

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

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

    アーキテクチャ

    レプリカセット この例では、WordPress が同じドメインで実行されていることを前提としています。クロスオリジンリクエストを行う場合は、追加の設定が必要になる場合があります。

    移行方法

    Oplog を選択します。

    インスタンス ID

    ソース ApsaraDB for MongoDB インスタンスの ID です。

    認証データベース

    ソース ApsaraDB for MongoDB インスタンスのデータベースアカウントとパスワードを保存する認証データベースの名前です。認証データベースの名前を以前に変更していない場合は、デフォルト値 admin が使用されます。

    データベースアカウント

    ソース ApsaraDB for MongoDB インスタンスのデータベースアカウント。アカウントは、ソースデータベース、config データベース、admin データベース、および local データベースに対する読み取り権限を持っている必要があります。

    説明

    データベースアカウントを作成し、アカウントに権限を付与する方法の詳細については、「DMS を使用してデータベースアカウントを管理する」をご参照ください。

    データベースパスワード

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

    暗号化

    ソースデータベースへの接続を暗号化するかどうかを指定します。ビジネス要件に基づいて、非暗号化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 インスタンスのデータベースアカウント。アカウントには、dbAdminAnyDatabase 権限、ターゲットデータベースに対する読み取り権限と書き込み権限、およびローカルデータベースに対する読み取り権限が必要です。

    説明

    データベースアカウントを作成し、アカウントに権限を付与する方法の詳細については、「DMS を使用してデータベースアカウントを管理する」をご参照ください。

    データベースパスワード

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

    暗号化

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

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

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

  5. ページの下部にある、接続をテストして続行 をクリックします。

    説明

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

  6. 同期するオブジェクトを構成します。

    1. オブジェクト設定 ステップで、同期するオブジェクトを構成します。

      パラメーター

      説明

      同期タイプ

      同期タイプ。デフォルトでは、[増分データ同期] が選択されています。[スキーマ同期][完全データ同期] も選択する必要があります。事前チェックが完了すると、DTS は選択したオブジェクトの既存データをソースデータベースから宛先クラスターに同期します。既存データは、後続の増分同期の基礎となります。

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

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

        説明

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

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

        警告

        エラーを無視して続行 を選択すると、データの不整合が発生し、ビジネスが潜在的なリスクにさらされる可能性があります。

        • 宛先データベースのデータレコードがソースデータベースのデータレコードと同じプライマリキー値または一意キー値を持っている場合、DTS はそのデータレコードを宛先データベースに同期しません。宛先データベースの既存のデータレコードは保持されます。

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

      同期トポロジ

      データ同期タスクの同期トポロジ。[双方向同期] を選択します。

      DDL 操作を除外

      • [はい]: DDL 操作を除外します。

      • [いいえ]: DDL 操作を同期します。

        重要

        双方向データ同期の安定性を確保するために、順方向にのみ DDL 操作を同期できます。

      競合解決ポリシー

      競合の処理に使用されるポリシー。値を [無視] に設定します。この値は、競合が発生した場合に宛先データベースの競合レコードが使用されることを示します。

      データ同期中に競合が発生した場合、同期タスクは現在の文を無視して続行します。宛先データベースの競合レコードが使用されます。詳細については、このトピックの サポートされている競合検出 セクションを参照してください。

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

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

      ソースオブジェクト

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

      説明

      同期するオブジェクトとしてデータベースまたはコレクションを選択できます。

      選択中のオブジェクト

      • 宛先データベースで同期するオブジェクトの名前を構成するか、宛先データベースでデータを受信するオブジェクトを指定するには、選択中のオブジェクト セクションでオブジェクトを右クリックします。詳細については、「オブジェクト名をマッピングする」をご参照ください。

      • 選択したオブジェクトを削除するには、選択中のオブジェクト セクションでオブジェクトをクリックし、image アイコンをクリックして、ソースオブジェクト セクションにオブジェクトを移動します。

      説明
      • データベースまたはコレクションごとに増分データを同期するには、選択中のオブジェクト を右クリックし、表示されるダイアログボックスで操作を選択します。

      • 同期するテーブルのデータをフィルタリングするには、 選択中のオブジェクト セクションでテーブルを右クリックします。表示されるダイアログボックスで、フィルター条件を構成します。データ同期タスクの完全データ同期ステージ中にデータをフィルタリングする条件を指定できます。データ同期タスクの増分データ同期ステージ中にデータをフィルタリングする条件を指定することはできません。詳細については、「フィルター条件を指定する」をご参照ください。

      • オブジェクト名マッピング機能を使用して、データの同期先となるデータベースまたはコレクションの名前を変更すると、そのデータベースまたはコレクションに依存する他のオブジェクトの同期に失敗する可能性があります。

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

      パラメーター

      説明

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

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

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

      接続失敗時の再試行時間の範囲。データ同期タスクの開始後にソースデータベースまたは宛先データベースへの接続に失敗した場合、DTS は指定された時間範囲内で直ちに再接続を試みます。有効値: 10 ~ 1440 。単位: 分。デフォルト値: 720 。このパラメーターを 30 より大きい値に設定することをお勧めします。DTS が指定された時間範囲内にソースデータベースと宛先データベースに再接続すると、DTS はデータ同期タスクを再開します。それ以外の場合、データ同期タスクは失敗します。

      説明
      • 同じソースデータベースまたは宛先データベースを持つ複数のデータ同期タスクに異なる再試行時間の範囲を指定した場合、最も短い再試行時間の範囲が優先されます。

      • DTS が再接続を試みると、DTS インスタンスの料金が発生します。ビジネス要件に基づいて再試行時間の範囲を指定することをお勧めします。ソースインスタンスと宛先インスタンスが解放された後、できるだけ早く DTS インスタンスを解放することもできます。

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

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

      重要

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

      完全同期レートを制限するかどうか

      完全データ同期中、DTS はソースデータベースと宛先データベースの読み取りリソースと書き込みリソースを使用します。これにより、データベースサーバーの負荷が増加する可能性があります。完全データ同期タスクの 1 秒あたりのソースデータベースのクエリ率 QPS1 秒あたりの完全移行の行数 RPS1 秒あたりの完全移行データ量 (MB) BPS パラメーターを構成して、宛先データベースサーバーの負荷を軽減できます。

      説明

      同期タイプ パラメーターで 完全データ同期 が選択されている場合にのみ、このパラメーターを構成できます。

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

      同期するデータのコレクションのプライマリキー _id のデータ型が一意かどうか。有効値:

      説明
      • ビジネス要件に基づいてこのパラメーターを指定します。そうしないと、データが失われる可能性があります。

      • このパラメーターは、[同期タイプ] パラメーターで [完全データ同期] が選択されている場合にのみ表示されます。

      • [はい]: データ型が一意です。完全データ同期中、DTS はソースデータベースから同期するデータのプライマリキー _id のデータ型をスキャンしません。DTS は、単一のコレクション内のデータ型のプライマリキーのデータのみを同期します。

      • [いいえ]: データ型が一意ではありません。完全データ同期中、DTS はソースデータベースから同期するデータのプライマリキー _id のデータ型をスキャンし、同期するすべてのデータを同期します。

      増分同期率を制限するかどうか

      増分データ同期のスロットリングを有効にするかどうかを指定します。ビジネス要件に基づいて、増分データ同期のスロットリングを有効にできます。スロットリングを構成するには、1 秒あたりの増分同期の行数 RPS パラメーターと 1 秒あたりの増分同期データ量 (MB) BPS パラメーターを構成する必要があります。これにより、宛先データベースサーバーの負荷が軽減されます。

      環境タグ

      DTS インスタンスを識別するために使用される環境タグ。ビジネス要件に基づいて環境タグを選択できます。この例では、このパラメーターを構成する必要はありません。

      ETL の設定

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

      監視アラート

      データ同期タスクのアラートを構成するかどうかを指定します。タスクが失敗した場合、または同期遅延が指定されたしきい値を超えた場合、アラート連絡先に通知が送信されます。有効値:

      • [いいえ]: アラートを有効にしません。

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

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

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

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

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

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

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

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

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

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

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

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

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

    2. [購入] ページで、データ同期インスタンスの課金方法とインスタンスクラスのパラメーターを設定します。次の表にパラメーターを示します。

      セクション

      パラメーター

      説明

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

      課金方法

      • サブスクリプション: データ同期インスタンスを作成するときにサブスクリプション料金を支払います。サブスクリプション課金方法は、長期使用の場合、従量課金方法よりも費用対効果が高くなります。

      • 従量課金: 従量課金インスタンスは時間単位で課金されます。従量課金方法は、短期使用に適しています。従量課金データ同期インスタンスが不要になった場合は、インスタンスをリリースしてコストを削減できます。

      リソースグループ設定

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

      インスタンスクラス

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

      サブスクリプション期間

      サブスクリプション課金方法を選択した場合は、サブスクリプション期間と作成するデータ同期インスタンスの数 を指定します。サブスクリプション期間は、1 ~ 9 か月、1 年、2 年、3 年、または 5 年です。

      説明

      このパラメーターは、サブスクリプション 課金方法を選択した場合にのみ使用できます。

    3. [Data Transmission Service (従量課金) サービス規約] を読んで選択します。

    4. [購入して開始] をクリックします。表示されるダイアログボックスで、OK をクリックします。

      タスクリストでタスクの進捗状況を確認できます。

  9. 逆方向のデータ同期タスクを設定します。

    1. 初期同期が完了し、転送方向のデータ同期タスクの ステータス実行中 に変わるまで待ちます。

    2. 逆方向のデータ同期タスクを見つけ、[タスクの設定] をクリックします。

    3. 手順 3 から 手順 7 を繰り返して、逆方向のデータ同期タスクを設定します。

      重要
      • 逆方向のデータ同期タスクを設定する場合は、正しいソースインスタンスと宛先インスタンスを選択する必要があります。逆方向のソースインスタンスは、転送方向の宛先インスタンスです。逆方向の宛先インスタンスは、転送方向のソースインスタンスです。データベース名、アカウント、パスワードなどのパラメーター設定が一貫していることを確認してください。

      • 逆方向のデータ同期タスクを設定する場合は、オブジェクト名マッピング機能を使用しないことをお勧めします。使用すると、データの不整合が発生する可能性があります。

      • 逆方向のデータ同期タスクのソースデータベースと宛先データベースを設定する場合、インスタンスのリージョン パラメーターは変更できません。逆方向のデータ同期タスクの設定パラメーターの数は、転送方向のデータ同期タスクの設定パラメーターの数よりも少なくなっています。コンソールに表示されているパラメーターを設定します。

      • 逆方向の同期タスクの 競合するテーブルの処理モード を設定する場合は、転送方向で宛先インスタンスに同期されたテーブルが無視されていることを確認してください。

      • 転送方向のデータ同期タスクの 選択中のオブジェクト リストにあるオブジェクトを、逆方向のデータ同期タスク用に選択することはできません。

      • 逆方向のデータ同期タスクは、DDL 操作を無視します。

    4. [成功率][100%] になるまで待ちます。次に、[戻る] をクリックします。

  10. 転送方向のデータ同期タスクと逆方向のデータ同期タスクの両方が 実行中 状態になると、双方向データ同期の構成が完了します。