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

Data Transmission Service:使用するためのソリューション ソースインスタンスとしてのDRDS

最終更新日:Nov 14, 2024

Data Transmission Service (DTS) を使用すると、からデータを同期または移行できます。 PolarDB-X 1.0インスタンスをターゲットデータベースに追加します。 ただし、直接aを使用する場合 DTSタスクのソースインスタンスとしてのPolarDB-X 1.0インスタンスと、2つ以上のApsaraDB RDS for MySQLインスタンスがDRDSインスタンスに接続されているため、パフォーマンスのボトルネックと安定性のリスクが発生する可能性があります。 あなたのビジネスが影響を受ける可能性があります。 より高いパフォーマンスと安定性を実現するために、ApsaraDB RDS for MySQLインスタンスごとにタスクを設定することを推奨します。 PolarDB-X 1.0インスタンス。

前提条件

PolarDB-Xをソースインスタンスとして使用するための制限を読み、関連する規則と注意事項に従ってください。

解決策

解決策

設定方法

説明

ソリューション 1

にアタッチされているApsaraDB RDS for MySQLインスタンスごとにDTSタスクを設定します。 PolarDB-X 1.0インスタンス。 DTSタスクを設定するときは、すべてのApsaraDB RDS for MySQLインスタンスのデータベースとテーブル名を、ターゲットインスタンスのデータベースとテーブル名にマップする必要があります。

直接使用してと比較される DTSタスクのソースインスタンスとしてPolarDB-X 1.0インスタンスを使用すると、このソリューションにより高いパフォーマンスと安定性が保証されます。

重要

このソリューションを使用する場合、同期または移行するオブジェクトとしてテーブルのみを選択できます。

ソリューション2よりも高いパフォーマンスと安定性を提供するソリューション1を使用することを推奨します。 にアタッチされているApsaraDB RDS for MySQLインスタンスの数 PolarDB-X 1.0インスタンスは無制限です。

ソリューション 2

直接使用する PolarDB-X 1.0インスタンスをソースインスタンスとして使用し、データ同期または移行タスクを設定します。 3つ以上のApsaraDB RDS for MySQLインスタンスがDRDSインスタンスにアタッチされている場合、DTSタスクの安定性と操作性が影響を受ける可能性があります。 あなたのビジネスも影響を受ける可能性があります。

ソリューション2を使用し、3つ以上のApsaraDB RDS for MySQLインスタンスがソースにアタッチされている場合 PolarDB-X 1.0インスタンスでは、DTSタスクのパフォーマンスと安定性が損なわれる可能性があります。

溶液1と溶液2の比較

項目

解決策1

解決策2

パフォーマンス

複数のDTSタスクは、より高いパフォーマンスを提供し、 PolarDB-X 1.0インスタンス。

からデータを移行または同期するように設定されているDTSタスクは1つだけです。 PolarDB-X 1.0インスタンス。 ビジネスシステムが大量のデータをソースインスタンスに書き込むと、パフォーマンスのボトルネックが発生します。

安定性

高い。

にアタッチされたApsaraDB RDS for MySQLインスタンスからデータを移行または同期するように複数のDTSタスクが設定されています。 PolarDB-X 1.0インスタンス。 DTSタスクの1つが失敗した場合、他のDTSタスクは影響を受けません。 失敗したDTSタスクを回復するだけです。

ミディアム。

からデータを移行または同期するように設定されているDTSタスクは1つだけです。 PolarDB-X 1.0インスタンス。 DTSタスクが失敗した場合は、タスク全体をトラブルシューティングしてデータ送信を再開する必要があります。

使いやすさ

複数のDTSタスクを設定する必要があります。 各タスクのデータベースとテーブル名のマッピングを設定する必要があります。 ソースインスタンスの複数のApsaraDB RDS for MySQLインスタンスのデータベースおよびテーブル名を、ターゲットインスタンスのデータベースおよびテーブル名にマップする必要があります。

ソースに対してDTSタスクを1つだけ設定する必要があります。 PolarDB-X 1.0インスタンス。

リソース使用量

複数のDTSインスタンスが必要です。

必要なDTSインスタンスは1つだけです。

2つのソリューションでDDL操作の同期または増分移行を実装する方法

DTSは、DDL操作の同期または増分移行をサポートしていません。 PolarDB-X 1.0インスタンス。 ソースでDDL操作が実行された場合 PolarDB-X 1.0インスタンスのデータ同期または移行中に、次の手順を実行して、データをターゲットデータベースに確実に書き込むことができます。

  1. DTSタスクをリリースします。

  2. ターゲットデータベースをクリアします。

  3. タスクを再構成します。

いくつかのシナリオでは、 PolarDB-X 1.0はソースインスタンスです。DTSタスクをリリースせずにDDL操作を同期または移行できます。 次の表に、特定のシナリオと対応する操作を示します。

シナリオ

API 操作

ソリューション1を使用し、同期するオブジェクトとしてテーブルを選択します。

  • データ同期タスク用に選択したオブジェクトにテーブルを追加できます。

  • 2つの間でデータを同期する場合にのみ、列を追加または削除できます。 PolarDB-X 1.0インスタンス。 これを行うには、次の手順を実行します。

    1. データ同期タスク用に選択したオブジェクトに列を追加または削除します。

    2. ターゲットデータベースの列を追加または削除し、ソースデータベースで同じ操作を実行します。 DTSがターゲットデータベースに列がすでに存在することを検出すると、DTSはエラーを無視し、書き込み失敗を表示しません。

ソリューション2を使用し、移行または同期するオブジェクトとしてデータベース全体を選択します。

  • 追加できるのはテーブルのみです。 これを行うには、ターゲットデータベースにテーブルを追加し、ソースデータベースで同じ操作を実行する必要があります。

  • 列を追加または削除することはできません。

    警告

    ソースに列を追加した場合 PolarDB-X 1.0インスタンスの場合、下位層の一部の物理テーブルには列が含まれている場合がありますが、一部の物理テーブルには列が含まれていません。 DTSがSQL文をアセンブルすると、DTSが列を見つけられないか、列内のデータが失われることがあります。

ソリューション2を使用し、データベース全体を移行または同期するオブジェクトとして選択しないでください。

  • 追加できるのはテーブルのみです。 これを行うには、次の手順を実行します。

    1. データ同期タスク用に選択したオブジェクトにテーブルを追加します。

    2. ターゲットデータベースにテーブルを追加し、ソースデータベースで同じ操作を実行します。

  • 列を追加または削除することはできません。