[新バージョン]MySQL 5.1 InnoDBの性能評価――バージョン5.0からの劇的な性能向上を計測する

MySQLの新バージョン5.1では、InnoDBに対して大幅な性能改善が行われています。では、バージョン5.0からどのくらい性能が向上したのでしょうか? そこで今回、IPAによって整備されたデータベースのベンチマークツールOSDL DBT-1を使用して簡単な性能評価を行ってみました。DBT-1は、オンライン書店をシミュレートするTPC-Wをベースとした簡易版の効率測定ツールです。

測定環境は表aのとおりです。

表a 測定環境
【ソフトウェア】
MySQL 5.0MySQL 5.0.51a
MySQL 5.1MySQL 5.1.23-rc
OSRed Hat Enterprise Linux AS 4.0 Update6
【ハードウェア】
CPUXeon 5160(2GHz デュアルコア⁠⁠ x 2
メモリ8Gバイト
HDD72Gバイト(内蔵ディスク。OS起動・MySQLプログラム本体)
500Gバイト(外付けディスク。MySQLログ・データ用ストレージ)

性能評価結果

DBT-1によるバージョン5.0と5.1の評価結果は、図1のとおりです。

MySQL 5.0のInnoDBでは、仮想ユーザ数6,000程度で理論値を若干下回り、以降そのまま飽和状態に達していることがわかります。

それに対してMySQL 5.1のInnoDBでは、仮想ユーザ数が12,000を過ぎるまでDBT-1の理論値どおりのスループットを示し、以降微小ながらも上昇を続け、仮想ユーザ数16,000あたりで飽和状態(上限)に達したことが読み取れます。

図1 DBT-1のベンチマーク結果
図1 DBT-1のベンチマーク結果
 MySQL 5.0の測定において、仮想ユーザ数14,000と16,000のデータを採取した際、システムのリソース限界のためDBT-1自体が途中でエラーになってしまっていました。ですので、仮想ユーザ数14,000と16,000のデータについては参考値扱いとしてご覧ください。

リソースの使用状況

CPUの利用率に関しても、MySQL 5.0はuserの利用率がスループット値と重なるようにプロットされていることがわかります。仮想ユーザ数6,000を越えるまでは急激な右肩上がりで、それ以後は伸びがない状態になります図2⁠。

MySQL 5.1についてもグラフはスループット値と重なるように動きますが、5.0とはうって変わって仮想ユーザ数14,000までゆるやかな右肩上がりの直線を描いており、負荷状態の推移と一致した形でグラフが描かれていることがわかると思います図3⁠。

図2 MySQL 5.0のInnoDBのリソース状況
図2 MySQL 5.0のInnoDBのリソース状況
図3 MySQL 5.1のInnoDBのリソース状況
図3 MySQL 5.1のInnoDBのリソース状況

まとめ

MySQL 5.1のInnoDBは、バージョン5.0に比べて格段に性能が向上していることがわかりました。もし既存のInnoDBの性能に限界を感じている方がいらっしゃいましたら、MySQL 5.1を検討してみていかがでしょうか? その性能にはみなさんも納得できるのではないかと思います。

WEB+DB PRESS Vol.45にて、MySQL 5.1の特集が掲載されています。ぜひご覧ください。

特集2
性能向上、機能強化、そしてMySQL Cluster
詳解! MySQL 5.1

  • 第1章MySQL 5.1入門
    バージョン5.1の全体像、ストレージエンジンの新機能、インストール
  • 第2章:開発者向けの新機能
    XML/XPath機能、プラグインAPI、MySQL Workbench
  • 第3章:運用・管理者向けの新機能
    行ベースレプリケーション、パーティショニング、ログテーブル……
  • 第4章MySQL Cluster 5.1を使ってみよう
    ディスクデータストレージに対応した高可用性&高性能クラスタ
  • 第5章:MySQL 5.1へのアップグレード
    非互換情報・変更履歴をきちんと整理

おすすめ記事

記事・ニュース一覧