データ伝送サービス (DTS) は、Exactly-Once書き込み機能を提供します。 この機能を使用すると、プライマリキーまたはUNIQUE制約がないソーステーブルの完全データと増分データを宛先テーブルに同期できます。
制限事項
Exactly-Once書き込み機能は、特定の双方向データ同期インスタンスでの完全および増分データ同期に対してのみサポートされます。 詳細については、このトピックの「サポートされているインスタンス」をご参照ください。
ソースデータベースには、プライマリキーまたはUNIQUE制約がないテーブルが含まれている必要があり、テーブルは次の要件を満たす必要があります。
ソースデータベースのデータベースタイプがMySQLまたはPolarDB for MySQLの場合、同期するテーブルのストレージエンジンはInnoDBである必要があります。
同期する1つのテーブルのサイズは200 GBを超えることはできません。
データを削除するために実行されるDDL操作のみ、Exactly-Once write機能を使用して同期できます。 この場合、DTSはソースデータベースとターゲットデータベース間のデータの整合性を保証しません。
サポートされているインスタンス
Exactly-Once書き込み機能は、双方向データ同期インスタンスにのみ使用できます。
ソースデータベース | 宛先データベース |
MySQL | MySQLとPolarDB for MySQL |
PolarDB for MySQL | MySQLとPolarDB for MySQL |
PostgreSQL | PostgreSQLおよびPolarDB for PostgreSQL |
PolarDB for PostgreSQL | PostgreSQLおよびPolarDB for PostgreSQL |
PolarDB (Oracle と互換性) | PolarDB (Oracle と互換性) |
使用状況ノート
ソースデータベースのデータベースタイプがMySQLまたはPolarDB for MySQLの場合、ソースデータベースにプライマリキーまたはUNIQUE制約がないテーブルは、データ同期中に一時的にロックされます。
完全または増分データ同期中、DTSはターゲットインスタンスに
dts
という名前のデータベースまたはスキーマを作成し、データベースまたはスキーマに複数のトランザクションテーブルを作成します。 DTSタスクの実行中は、トランザクションテーブルに対してDML操作を実行しないでください。デフォルトでは、逆方向同期タスクの [Exactly-Once] を有効化し書き込みを実行するかどうか の設定は、順方向同期タスクの設定と同じであり、変更することはできません。
手順
前方同期タスクの オブジェクト設定 ステップに進みます。
説明以前のバージョンの設定ページを使用する場合は、オブジェクトの設定と詳細設定 の手順に進みます。
詳細については、「データ同期シナリオの概要」のトピックをご参照ください。
[Exactly-Once] を有効化し書き込みを実行するかどうかパラメーターを○に設定します。
ニーズに基づいて設定を完了します。