新年明けました。おめでとうございます。
すっかり12月のaws/mysql advent calendarに乗り遅れたので、AWSのi2 instanceでのMySQLのベンチマークを勝手におまけとして公表します。 以前取ったhi1.4xlargeとの比較になります。
構築
SSDディスクはAWSが推奨するover-provisioningを有効にする為に10%を非partitionし、それぞれ720Gでパーティション作成。
sudo mdadm --create /dev/md0 --level 0 --raid-devices 8 /dev/xvdb1 /dev/xvdc1 /dev/xvdd1 /dev/xvde1 /dev/xvdf1 /dev/xvdg1 /dev/xvdh1 /dev/xvdi1
sudo mkfs.xfs -f -b size=4096 -i size=512 -l size=64m /dev/md0
sudo mount -t xfs -o noatime,logbufs=8 /dev/md0 /data
OSはkernel versionが3.8以上が望ましいのでいつものLTSではなく、Ubuntu Server 13.10のHVMタイプ (ami-b93264d0)
sysbench
やり方やパラメータは前回の計測方法と同じ。i2.8xlaregは32coreですが、今回はhi1.4xlargeの時と比較する為に敢えて16スレッドで計測しました。
- sysbenchのoltpモード
- データサイズは12G(5000万件)
- readonly
- uniform(フルスキャン)
コマンド
time sysbench --test=oltp --oltp-table-size=50000000 --db-driver=mysql --mysql-user=root --num-threads=16 --max-requests=0 --max-time=180 --init-rng=on --oltp-read-only=on --oltp-dist-type=uniform 2>&1 run
トランザクション推移
レスポンスタイム推移
速いですね。
tpcc-mysql
こちらも前回)の計測方法と同じ。
- 500 warehouses (50GBぐらい)
- 24GB Buffer pool
- 16スレッド
- 1時間実行
コマンド
tpcc_load localhost tpcc root "" 500
tpcc_start -d tpcc -u root -p "" -w 500 -c 16 -r 300 -l 3600
hi1.4xlargeはSSD1台で計測した事を考えると、同価格帯のi2.4xlarge(SSD4台)の半分(SSD2台)のパフォーマンスが出るのは妥当ですね。
fio
ついでにfioでそれぞれRAID0した場合のベンチマークも取ってみたけど、並河さんと結果が違ってwriteがスケールしてます。OSとmkfs.xfsのオプションしか違わないはずだけど。。
その他
いやー。spot instanceがないので計測だけで結構かかってしまった。
しかし、なんでhi1世代の次はhi2ではなく、i2なんだろう。