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

:テストガイドライン

最終更新日:Jul 25, 2026

このトピックでは、新規ユーザーが ApsaraDB RDS for MySQL インスタンスのパフォーマンスをテストし、テストレポートを提出するためのガイドラインについて説明します。テストレポートを提出すると、インスタンス更新時の追加割引が受けられます。テストレポートが優秀と評価された場合、Alibaba Cloud が多大なインセンティブを提供します。

前提条件

背景情報

以下のパフォーマンスメトリクスをテストします:

  • 1 秒あたりのトランザクション数 (TPS)

    RDS インスタンスが 1 秒あたりに実行するトランザクション数です。トランザクションは、コミットされた後にのみ実行されます。

    • SysBench を使用して、18 個の読み取りおよび書き込み SQL 文で構成される読み取り/書き込みトランザクションを実行する際の、オンライン トランザクション処理 (OLTP) のパフォーマンスをテストします。

    • SysBench を使用して、14 個の読み取り SQL 文で構成される読み取り専用トランザクションを実行する際の、OLTP パフォーマンスをテストします。そのうち 10 個はプライマリキーに基づいてデータをクエリする SQL 文、4 個は指定範囲に基づいてデータをクエリする SQL 文です。

    • SysBench を使用して、4 つの書き込み SQL 文 (2 つの UPDATE 文、1 つの DELETE 文、1 つの INSERT 文) で構成される書き込み専用トランザクションを実行する際の、OLTP パフォーマンスをテストします。

  • 1 秒あたりのクエリ数 (QPS)

    RDS インスタンスが 1 秒あたりに実行する SQL 文の数です。これらの SQL 文には、INSERT、SELECT、UPDATE、DELETE、COMMIT が含まれます。

SysBench パラメーター

パラメーター

説明

db-driver

RDS インスタンスが実行するデータベースエンジンです。

mysql-host

RDS インスタンスへの接続に使用するエンドポイントです。

mysql-port

RDS インスタンスへの接続に使用するポートです。

mysql-user

RDS インスタンスの管理に使用するアカウントのユーザー名です。

mysql-password

RDS インスタンスの管理に使用するアカウントのパスワードです。

mysql-db

接続先のデータベース名です。

table_size

テストに使用するテーブルのサイズです。

tables

テストに使用するテーブルの数です。

events

テスト用に送信するリクエストの数です。

time

テストにかかる時間です。

threads

テストで呼び出すスレッドの数です。

percentile

実行時間のうち、統計分析の対象とするパーセンテージです。デフォルト値は 95% です。これにより、全リクエストの 95% をカバーする実行時間を取得できます。

report-interval

テストの進捗レポートを生成する時間間隔です。値 0 は、テストの進捗レポートを生成せず、最終的なテストレポートのみを生成することを指定します。

rand-type

乱数分布タイプです。デフォルト値: special。このテストでは、uniform を使用します。

テスト手順

  1. ECS インスタンスにログオンし、次のコマンドを実行して SysBench をインストールします:

    sudo yum install gcc gcc-c++ autoconf automake make libtool mysql-devel git mysql
    git clone https://github.com/akopytov/sysbench.git
    ## GitHub から SysBench ソフトウェアパッケージをダウンロードします。
    cd sysbench
    ## SysBench インストールディレクトリを開きます。
    git checkout 1.0.18
    ## SysBench 1.0.18 に切り替えます。
    ./autogen.sh
    ## autogen.sh スクリプトを実行します。
    ./configure --prefix=/usr --mandir=/usr/share/man
    make
    ## SysBench をコンパイルします。
    make install
  2. 読み取り/書き込み、読み取り専用、書き込み専用の各トランザクションについて、OLTP パフォーマンスをテストします。

    • 読み取り/書き込みトランザクションの OLTP パフォーマンスをテストします。

      次のコマンドを実行してテストを行います (詳細については、「SysBench パラメーター」をご参照ください):

      ## テストに使用するデータを準備します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX oltp_read_write prepare
      
      ## ワークロードを実行します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX --percentile=95 --rand-type="uniform" --report-interval=1 oltp_read_write run
      
      ## テストに使用したデータを削除します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX --percentile=95  oltp_read_write cleanup

      テスト結果の例:

      • QPS: 23869.32

      • TPS: 1193.47

      • レスポンスタイム (RT): 36.89 ms

      [ 55s ] thds: 16 tps: 1238.00 qps: 24720.98 (r/w/o: 17294.99/4951.00/2475.00) lat (ms,95%): 35.59 err/s: 0.00 reconn/s: 0.00
      [ 56s ] thds: 16 tps: 1195.00 qps: 23924.02 (r/w/o: 16752.01/4782.00/2390.00) lat (ms,95%): 36.24 err/s: 0.00 reconn/s: 0.00
      [ 57s ] thds: 16 tps: 1235.00 qps: 24714.10 (r/w/o: 17308.07/4935.02/2471.01) lat (ms,95%): 36.24 err/s: 0.00 reconn/s: 0.00
      [ 58s ] thds: 16 tps: 1230.99 qps: 24594.83 (r/w/o: 17205.88/4926.97/2461.98) lat (ms,95%): 36.24 err/s: 0.00 reconn/s: 0.00
      [ 59s ] thds: 16 tps: 1187.00 qps: 23786.05 (r/w/o: 16655.03/4757.01/2374.00) lat (ms,95%): 36.89 err/s: 0.00 reconn/s: 0.00
      [ 60s ] thds: 16 tps: 1212.00 qps: 24252.93 (r/w/o: 16964.95/4863.99/2423.99) lat (ms,95%): 36.24 err/s: 0.00 reconn/s: 0.00
      SQL statistics:
          queries performed:
              read:                            1003268
              write:                           286648
              other:                           143324
              total:                           1433240
          transactions:                        71662  (1193.47 per sec.)
          queries:                             1433240 (23869.32 per sec.)
          ignored errors:                      0      (0.00 per sec.)
          reconnects:                          0      (0.00 per sec.)
      
      General statistics:
          total time:                          60.0439s
          total number of events:              71662
      
      Latency (ms):
               min:                                    4.48
               avg:                                   13.40
               max:                                  142.82
               95th percentile:                       36.89
               sum:                               960169.64
      
      Threads fairness:
          events (avg/stddev):           4478.8750/88.00
          execution time (avg/stddev):   60.0106/0.00
    • 読み取り専用トランザクションの OLTP パフォーマンスをテストします。

      次のコマンドを実行してテストを行います (詳細については、「SysBench パラメーター」をご参照ください):

      説明

      テストには、購入ページで推奨されているゾーンのインスタンスを使用することを推奨します。

      ## テストに使用するデータを準備します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX oltp_read_only prepare
      
      ## ワークロードを実行します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX --percentile=95 --rand-type="uniform" --report-interval=1 oltp_read_only run
      
      ## テストに使用したデータを削除します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX --percentile=95 oltp_read_only cleanup

      テスト結果の例:

      • QPS: 26130.73

      • RT: 33.72 ms

      [ 55s ] thds: 16 tps: 1881.00 qps: 26417.97 (r/w/o: 26417.97/0.00/0.00) lat (ms,95%): 33.72 err/s: 0.00 reconn/s: 0.00
      [ 56s ] thds: 16 tps: 1831.01 qps: 25564.09 (r/w/o: 25564.09/0.00/0.00) lat (ms,95%): 34.33 err/s: 0.00 reconn/s: 0.00
      [ 57s ] thds: 16 tps: 1914.99 qps: 26829.90 (r/w/o: 26829.90/0.00/0.00) lat (ms,95%): 33.12 err/s: 0.00 reconn/s: 0.00
      [ 58s ] thds: 16 tps: 1930.00 qps: 27013.02 (r/w/o: 27013.02/0.00/0.00) lat (ms,95%): 33.12 err/s: 0.00 reconn/s: 0.00
      [ 59s ] thds: 16 tps: 1901.00 qps: 26569.06 (r/w/o: 26569.06/0.00/0.00) lat (ms,95%): 33.72 err/s: 0.00 reconn/s: 0.00
      [ 60s ] thds: 16 tps: 1933.99 qps: 27157.92 (r/w/o: 27157.92/0.00/0.00) lat (ms,95%): 33.12 err/s: 0.00 reconn/s: 0.00
      SQL statistics:
          queries performed:
              read:                            1568952
              write:                           0
              other:                           0
              total:                           1568952
          transactions:                        112068 (1866.48 per sec.)
          queries:                             1568952 (26130.73 per sec.)
          ignored errors:                      0      (0.00 per sec.)
          reconnects:                          0      (0.00 per sec.)
      
      General statistics:
          total time:                          60.0410s
          total number of events:              112068
      
      Latency (ms):
               min:                                    3.03
               avg:                                    8.57
               max:                                   84.14
               95th percentile:                       33.72
               sum:                               960237.13
      
      Threads fairness:
          events (avg/stddev):           7004.2500/96.69
          execution time (avg/stddev):   60.0148/0.01
    • 書き込み専用トランザクションの OLTP パフォーマンスをテストします。

      テストを実行するには、次のコマンドを実行します(詳細については、「SysBench パラメーター」をご参照ください):

      ## テストに使用するデータを準備します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX oltp_write_only prepare
      
      ## ワークロードを実行します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX --percentile=95 --rand-type="uniform" --report-interval=1 oltp_write_only run
      
      ## テストに使用したデータを削除します。
      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=300 --threads=XXX --percentile=95 oltp_write_only cleanup

      テスト結果の例:

      • TPS: 4255.01

      • RT: 16.71 ms

      [ 56s ] thds: 16 tps: 4458.17 qps: 26789.02 (r/w/o: 0.00/17871.68/8917.34) lat (ms,95%): 14.21 err/s: 0.00 reconn/s: 0.00
      [ 57s ] thds: 16 tps: 4416.02 qps: 26472.15 (r/w/o: 0.00/17640.10/8832.05) lat (ms,95%): 16.41 err/s: 0.00 reconn/s: 0.00
      [ 58s ] thds: 16 tps: 3919.11 qps: 23508.64 (r/w/o: 0.00/15670.43/7838.21) lat (ms,95%): 17.63 err/s: 0.00 reconn/s: 0.00
      [ 59s ] thds: 16 tps: 4089.00 qps: 24559.02 (r/w/o: 0.00/16381.01/8178.01) lat (ms,95%): 18.28 err/s: 0.00 reconn/s: 0.00
      [ 60s ] thds: 16 tps: 4353.28 qps: 26100.68 (r/w/o: 0.00/17394.12/8706.56) lat (ms,95%): 19.65 err/s: 0.00 reconn/s: 0.00
      SQL statistics:
          queries performed:
              read:                            0
              write:                           1021552
              other:                           510776
              total:                           1532328
          transactions:                        255388 (4255.01 per sec.)
          queries:                             1532328 (25530.04 per sec.)
          ignored errors:                      0      (0.00 per sec.)
          reconnects:                          0      (0.00 per sec.)
      
      General statistics:
          total time:                          60.0192s
          total number of events:              255388
      
      Latency (ms):
               min:                                    1.28
               avg:                                    3.76
               max:                                  182.50
               95th percentile:                       16.71
               sum:                               959762.69
      
      Threads fairness:
          events (avg/stddev):           15961.7500/525.08
          execution time (avg/stddev):   59.9852/0.00
    説明

    SysBench は複数の標準ベンチマークモデルを提供します。ビジネスシナリオに合わせて適切なモデルを選択できます。