MySQL 5.5.8 GA ベンチマーク
MySQL 5.5の正式版がリリースされたようです。
次の記事で「Linux環境では読み出し/書き込みが360%、読み出しのみが200%だった。」とあったのでmysqlslapを動かしてみま した。
今回、MySQL 5.5.8とMySQL 5.1.54を比較してみました。
実行環境
さくらのVPS の標準構成で yum update を実行済みです。
# cat /etc/redhat-release CentOS release 5.5 (Final) # uname -a Linux wwwxxxxu.sakura.ne.jp 2.6.18-194.8.1.el5 #1 SMP Thu Jul 1 19:04:48 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
mysqlslapオプション
# mysqlslap --auto-generate-sql --auto-generate-sql-guid-primary\ --engine=innodb --number-int-cols=10 --number-char-cols=10\ --concurrency=20 --auto-generate-sql-write-number=10000\ --auto-generate-sql-execute-number=10000\ --auto-generate-sql-load-type=アクセスパターン -p
アクセスパターン | 内容 |
---|---|
mixed | 挿入とスキャンを半々ずつ |
read | テーブルのスキャン |
write | テーブルへの挿入 |
update | 主キーの更新 |
key | 主キーの読み取り |
実行結果(Average)
記事通り全体的に性能向上が見えます。
特にwriteが早くなっているようです。
これは「非同期IOのまとめ投げ」が効いているのでしょうか。
MySQL | mixed | read | write | update | key |
---|---|---|---|---|---|
5.1.54 | 120.344sec | 9383.116sec | 219.577sec | 281.976sec | 26.459sec |
5.5.8 | 53.374sec | 6110.888sec | 61.536sec | 96.021sec | 18.858sec |
何倍 | 2.254倍 | 1.535倍 | 3.568倍 | 2.936倍 | 1.403倍 |
重要:2010/12/20訂正
上記ベンチマークでは5.5.8でスピードが圧倒的に速くなっているように見えますが
InnoDB関係のパラメータデフォルト値が変更になっているだけでした。
- innodb_buffer_pool_size:8388608(8MB)=>134217728(128MB)
- innodb_additional_mem_pool_size:1048576(1MB)=>8388608(8MB)
- innodb_log_buffer_size:1048576(1MB)=>8388608(8MB)
今晩にでもパラメーター合わせた後のベンチマーク結果をアップします。
この点についてSH2さんからのブクマコメントで「my-large.cnfはMyISAM用の設定ファイルで、InnoDBの設定は書いてありません。このケースでは5.1⇒5.5でinnodb_buffer_pool_sizeのデフォルト値が8MBから128MBに増えた点が大きいと思います」と指摘頂きました。有難うございました。