Data Transmission Service (DTS) は、データ移行インスタンス向けに 5 つのインスタンスクラスを提供します。各クラスは、1 秒あたりの行数 (RPS) で測定される、増分データ移行の最大スループットを決定します。
インスタンスクラスは参考情報であり、サービスレベルアグリーメント (SLA) 評価の基準としては使用されません。
インスタンスクラスと最大 RPS
インスタンスクラス | 最大 RPS |
|---|---|
small | 2,000 |
medium | 5,000 |
large | 6,000 |
xlarge | 7,000 |
2xlarge | 11,000 |
実際の RPS は、ネットワーク条件、ソースインスタンスと宛先インスタンスのパフォーマンス、および遅延によって変動します。これらの値は DTS の SLA の対象外です。
最大 RPS に達するための条件
上記の最大 RPS 値に達するには、次のすべての条件を満たす必要があります。
ソースインスタンスが、データ移行インスタンスの最大 RPS と同等以上の行変更を毎秒生成すること。
宛先インスタンスの書き込みパフォーマンスは、最大RPSを維持可能です。
DTS サーバーとソースインスタンスまたは宛先インスタンス間のネットワーク遅延が 2 ミリ秒未満であること。
パフォーマンスベンチマーク
DTS は、数秒以内に宛先インスタンスにデータを移行できます。ただし、ソースインスタンスの高ワークロード、伝送ネットワークの低帯域幅、ネットワーク遅延、または宛先インスタンスの書き込みパフォーマンスの低下により、移行遅延が増加する可能性があります。DTS は、データ移行タスクにおける秒単位の遅延を保証するものではありません。
テスト環境
2 つの ApsaraDB RDS for MySQL インスタンス間で増分データ移行タスクを作成し、ソースインスタンスでストレステストを実行して、増分データ移行のパフォーマンスを測定します。ソースインスタンスと宛先インスタンスは、どちらも同一の仕様を使用します。
設定 | 値 |
|---|---|
仕様 | rds.mys2.8xlarge |
メモリ | 48,000 MB |
最大接続数 | 2,000 |
最大クエリ/秒 (QPS) | 18,000 |
最大 IOPS | 14,000 |
テストモデル
パラメーター | 値 |
|---|---|
テーブル数 | 20 |
プライマリキー | 各テーブルにプライマリキーがある |
レコードサイズ | 1 KB |
トランザクション構造 | 1 トランザクションあたり平均 2 回の DML 操作と 1 回の COMMIT 操作 |
DML 比率 (INSERT:UPDATE:DELETE) | 3:1:2 |
テスト結果
ソースリージョン | 宛先リージョン | ネットワーク遅延 (ms) | インスタンスクラス | RPS |
|---|---|---|---|---|
中国 (杭州) | 中国 (杭州) | 0.26 | small | 2,566 |
中国 (杭州) | 中国 (杭州) | 0.26 | medium | 4,726 |
中国 (杭州) | 中国 (杭州) | 0.26 | large | 6,378 |
中国 (杭州) | 中国 (青島) | 26 | small | 2,469 |
中国 (杭州) | 中国 (青島) | 26 | medium | 4,856 |
中国 (杭州) | 中国 (青島) | 26 | large | 5,439 |
中国 (杭州) | 中国 (北京) | 26 | small | 2,533 |
中国 (杭州) | 中国 (北京) | 26 | medium | 5,038 |
中国 (杭州) | 中国 (北京) | 26 | large | 6,829 |
中国 (杭州) | 米国 (シリコンバレー) | 175 | small | 1,753 |
中国 (杭州) | 米国 (シリコンバレー) | 175 | medium | 2,837 |
中国 (杭州) | 米国 (シリコンバレー) | 175 | large | 3,884 |
シンガポール | 米国 (シリコンバレー) | 198 | small | 1,104 |
シンガポール | 米国 (シリコンバレー) | 198 | medium | 1,724 |
シンガポール | 米国 (シリコンバレー) | 198 | large | 2,256 |
これらの結果は、上記のテスト条件下での最大パフォーマンスを反映したものです。移行対象のテーブルにプライマリキーがない、ネットワーク遅延が大きい、更新ホットスポットが存在する、またはソースインスタンスと宛先インスタンスにパフォーマンスボトルネックがあるなどの場合には、最大パフォーマンスは保証されません。
主要な用語
用語 | 説明 |
|---|---|
インスタンスクラス | データ移行インスタンスの増分データ移行パフォーマンスを決定します。DTS は、スループット能力が異なるさまざまなインスタンスクラスを提供します。 |
テーブル数 | テストモデル内のテーブルの総数。 |
レコードサイズ | 増分移行される各データレコードのサイズ。 |
RPS | Rows per second (1 秒あたりの行数) -- 1 秒あたりに宛先テーブルに増分移行される行の数。たとえば、データ移行インスタンスが 1 秒あたりに 5,000 行を宛先テーブルに移行する場合、その RPS は 5,000 です。 |
SQL 文に複数行のデータに対する操作が含まれている場合、DTS はそれらの操作を複数のデータレコードとして識別します。1 つのデータレコードに対して INSERT、UPDATE、DELETE 操作を複数回実行した場合も、DTS はそれらの操作を複数のデータレコードとして識別します。
DTS は、各 COMMIT 操作を 1 つのデータレコードとして識別します。