Amazon Auroraに引き続き、CloudSQLのベンチマークを測定してみました。Cloud SQLに、Amazon Aurora相当のインスタンスタイプがないので、厳密な比較はできませんが、参考程度に。
ベンチマーク環境
ベンチマークの種類
RDBMSのベンチマークで一般的なTPCのオンライントランザクション処理の指標である「TPC-C」を行います。
ベンチマーク用ツールはMySQLのOracle ACEである平塚氏が作成したJdbcRunnerのTPC-C簡易実装であるTiny TPC-Cを使用します。
使用データ
Table | Record |
customer | 480000 |
district | 160 |
item | 100000 |
new_orders | 144000 |
order_line | 4799437 |
orders | 480000 |
stock | 1600000 |
warehouse | 16 |
CloudSQLは以下の状態で行いました。
インスタンスクラス | DB Engine version | 備考 |
D8 | 5.6.26 | Engineのバージョンは明示的には指定不可 |
メモリ4G※CPU情報については公開されていませんので、コア数は不明。mysqlのバージョンもmysqlに接続して確認。gcloudとDeveloper Consoleから確認はできない。
測定用インスタンスは、CloudSQLと同じリージョンにあるpreemptible VM (n1-standard-1)で。
検証用とかにPreeemtible VMお得で便利です。
結果
多重度 | Throughput(tps) | Response time (90%tile) | ||||||||
New-Order | Payment | Order-Status | Delivery | Stock-Level | New-Order | Payment | Order-Status | Delivery | Stock-Level | |
1 | 6.3 | 6.3 | 0.6 | 0.6 | 0.6 | 125 | 56 | 10 | 174 | 6 |
4 | 16.7 | 16.7 | 1.7 | 1.7 | 1.7 | 198 | 146 | 10 | 245 | 6 |
16 | 43.1 | 43.1 | 4.3 | 4.3 | 4.3 | 377 | 290 | 10 | 397 | 7 |
32 | 59.7 | 59.7 | 6.0 | 6.0 | 6.0 | 556 | 335 | 16 | 555 | 13 |
Cloud SQLは、IPv6にも対応、Repliaなどにも対応しているので、今後期待できるサービスです。
Cloud SQLはGCEのネットワークに配置することができないので、今後改善してほしいところ。