May 2017  |  01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Raspbery Pi3 でpgbench、mysqlbench との比較

JUGEMテーマ:コンピュータ

 

今日は、体育の日ということで、今年5月のGW頃やってみたRaspberryPi3でのpostgresqlとmysqlのベンチマークを思い出した。

 

Raspberry Pi3でpostgresql のベンチマークをしてみると、Pi2とは全く違う結果が出てきたので、MySQLと比較してみた。

Raspberry Pi2までのベンチマークで、うまく説明ができないような結果の違いに釈然としないものを感じたままだった。

普段使っているIntel系アーキテクチャでのベンチマーク結果ではそんなに違わないのになぜRaspberry Piでは大きく違うのだろうか。メモリーサイズなのか、アーキテクチャなのかと。今回のベンチマークの結果、デフォルトのエンジンの特性が違っていたようだ。


 

PostgreSQLは pgbench があるのだが、MySQLには何か?と探してみると、少し古いものの稼働するmysqlbenchなるものがあり。mysqlbench は pgbench のmysql移植版で、これを使えば、PostgreSQLのpgbenchとの比較が簡単にできると思っい、やってみたのだった。
 

 

mysqlbenchプログラムのダウンロード

# wget -O mysqlbench-0.1.tgz ¥

          "http://www.mysql.gr.jp/frame/modules/bwiki/index.php?plugin=attach&refer=Contrib&openfile=mysqlbench-0.1.tgz"

次にコンパイル:

        # apt-get install libmysqlclient-dev

        $ tar xvfz mysqlbench-0.1.tgz
        $ cd mysqlbench-0.1
        $ make

ベンチマークは、次のようにスケールファクタ10倍にして、10コネクション1000トランザクションというオプションで、

        $ ./mysqlbench -i -s 100 -E innodb -U myuser -P xxxxx benchmark_db
        $ ./mysqlbench -c 10 -t 1000 -U myusre -P xxxx benchmark_db

 

10回実行して、"tps (exclude connections establishing)" 平均をとると、

229.7221

という結果であった。

 

PostgreSQLのほうも同様の条件でベンチマークを行ったところ、10回平均(excluding connections establishing)は、

156.5246

で、オーダーが違うことはなかった。さらに、チューニングをしてみたところ、

291.9119

と、MySQLを上回る結果も出た。

 

それにしても、メモリーサイズは一緒なのに、 Raspberry Pi2 とPi3の性能がここまで違うことにびっくりした。

マルチコアのせいか、64bit アーキテクチャのせいかいまひとつわかってはいないのだが。。。

 

ちなみに、Raspberry Pi Model B Plus Rev 1.2で同様のベンチマークをしたところ、mysqlbench結果を見ると15.6tps、pgbenchの結果は23.5tpsだった。前回、独自のパターンでベンチマークをした結果にくらべると、結果は逆転、オーダーではあまりかわらない結果となった。mysqlbenchの実行時のオプションに "-E innodb" が指定してあり、この innodb が postgresqlに対応するDBエンジンとなる。

前回のベンチマークで大きな違いが出たのは、MySQLのデフォルトのエンジン MyISAM をそのまま使ったためということになるが、これもまた、現実である。OSをインストールしてすぐ使えばそうなってしまう。

 

MySQLのデフォルトエンジンをinnodbにする方法のひとつは、my.cnfの[mysqld]の部分に以下を追加し、

default-storage-engine=innodb

mysqlサービスをリスタートする。

        # service mysql restart

スポンサーサイト

comments

   

trackback

pagetop