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

:MySQL 8.0 を実行する ApsaraDB RDS インスタンスのテスト結果

最終更新日:May 13, 2025

このトピックでは、MySQL 8.0 を実行する汎用 ApsaraDB RDS インスタンスのパフォーマンステスト結果について説明します。

説明
  • 本番環境をより適切にシミュレートするために、このストレステストでは読み取り/書き込みメトリックを使用しています。

  • パフォーマンステストの結果は参考値です。 MySQL 8.0 を実行する ApsaraDB RDS インスタンスの使用方法の詳細については、「ApsaraDB for MySQL インスタンスで遅い SQL 文のトラブルシューティングを行う」をご参照ください。

  • 一部のビジネスシナリオでは、MySQL 5.7 を実行する ApsaraDB RDS インスタンスのパフォーマンスが、MySQL 8.0 を実行する ApsaraDB RDS インスタンスのパフォーマンスよりも高くなる場合があります。

テスト環境

このストレステストでは、SysBench を使用して、プレミアムローカル SSD を使用する 5 つの RDS インスタンスのパフォーマンスをテストします。 これらの RDS インスタンスは、異なるインスタンスタイプを使用します。

  • インスタンスタイプ: rds.mysql.t1.small、rds.mysql.s2.large、rds.mysql.m1.medium、rds.mysql.c1.xlarge、rds.mysql.c2.xlarge

  • インスタンスファミリ: 汎用

  • RDS エディション: RDS 高可用性エディション

  • ストレージタイプ: プレミアムローカル SSD

構成

パフォーマンスは、データ量ストレステスト期間、および パラメータ設定 によって大きく影響を受けます。 このストレステストでは、次の構成を使用します。

  • データ量: テスト対象の各 RDS インスタンスのデータ量とテーブル数は異なります。 そのため、一部の RDS インスタンスのテスト結果は類似している場合があります。

  • ストレステスト期間: すべての RDS インスタンスのストレステスト期間は 60 秒です。

  • パラメータ設定:

    • sync_binlog=1 および innodb_flush_log_at_trx_commit=1: 毎回送信されるデータがディスクに完全に書き込まれるようにします。

    • rpl_semi_sync_master_enabled=ON: RDS インスタンスの半同期モードを有効にして、プライマリ RDS インスタンスとセカンダリ RDS インスタンス間のデータ整合性を確保します。

    • Performance_schema=ON: メモリサイズが 8 GB 以上のインスタンスタイプを使用する RDS インスタンスのパフォーマンススキーマを自動的に有効にします。

      説明

      これらのパラメータ設定は、ApsaraDB for MySQL の標準パラメータテンプレートに含まれています。 標準パラメータテンプレートがすべての RDS インスタンスに適用されている場合、データ整合性が最大化され、テスト環境は本番環境にさらに近くなります。

テスト結果

ストレステストを実行するには、2 種類のクエリを使用できます。 データ量に基づいて、ストレステストの種類を決定できます。

  • キャッシュベースのクエリのストレステスト: このタイプのストレステストは、少量のデータを含むシナリオに適しています。 アクセスするためにすべてのデータを InnoDB バッファプールに格納できます。 InnoDB バッファプールのサイズを変更する方法の詳細については、「ApsaraDB for MySQL インスタンスの InnoDB バッファプールのサイズを変更する」をご参照ください。

  • ディスク I/O ベースのクエリのストレステスト: このタイプのストレステストは、大量のデータを含むシナリオに適しています。 アクセスするために、最も頻繁に使用されるデータのみを InnoDB バッファプールに格納できます。 ストレステスト中は、データがディスクから読み取られるか、ディスクに書き込まれ、InnoDB バッファプールが更新されます。

タイプ 1: キャッシュベースのクエリのストレステスト

内存命中型

仕様 (インスタンスタイプ)

単一テーブルのデータ量

テーブル数

最大接続数

IOPS

SysBench スレッド数

SysBench 読み取り数

SysBench 書き込み数

1 コア、1 GB

(rds.mysql.t1.small)

25,000

32

300

600

8

432,922

123,692

2 コア、4 GB

(rds.mysql.s2.large)

25,000

32

1,200

2,000

8

599,606

171,316

4 コア、16 GB

(rds.mysql.m1.medium)

25,000

128

4,000

7,000

16

1,567,132

447,752

8 コア、32 GB

(rds.mysql.c1.xlarge)

25,000

128

8,000

12,000

32

2,923,130

835,180

16 コア、64 GB

(rds.mysql.c2.xlarge)

25,000

128

16,000

14,000

64

5,661,264

1,617,504

タイプ 2: ディスク I/O ベースのクエリのストレステスト

磁盘I/O型

仕様 (インスタンスタイプ)

単一テーブルのデータ量

テーブル数

最大接続数

IOPS

SysBench スレッド数

SysBench 読み取り数

SysBench 書き込み数

1 コア、1 GB

(rds.mysql.t1.small)

80,000

32

300

600

8

374,584

107,024

2 コア、4 GB

(rds.mysql.s2.large)

80,000

32

1,200

2,000

8

439418

125548

4 コア、16 GB

(rds.mysql.m1.medium)

800,000

128

4,000

7,000

16

851,326

243,236

8 コア、32 GB

(rds.mysql.c1.xlarge)

800,000

128

8,000

12,000

32

2,384,256

681,216

16 コア、64 GB

(rds.mysql.c2.xlarge)

800,000

128

16,000

14,000

64

4,584,090

1,309,740