Linux

2012-02-13, database_bench

データベースベンチマーク

2006.12.11 MySQL追加
2006.12.5 作成

4つのデータベースエンジンについて、レコードの追加及び更新の速度を測定した。

HSQLDB H2 PostgreSQL MySQL
INSERT 655362453511037219(測定不能)
INSERT(TRANSACTION) 6553625314328132268047
UPDATE 2563752204062037172
UPDATE(TRANSACTION) 25620321665612578
UPDATE(PREPARED) 25632821812578
UPDATE(PREPARED) 65536137971516188448813
SHUTDOWN875
単位:ミリ秒(ms) ※赤字は実用不能と思われる数値。

HypersonicSQLの血を受け継ぐH2が面白い。通常のクエリによるUPDATEはまず使い物にならないほど鈍重な一方、コンパイル済みクエリの実行に関しては、圧倒的な速度を見せた。レコードの追加に関して安定した速度を持つのがHSQLDBだが、トランザクションを活用すれば、MySQLも健闘している。HSQLDBの弱点はレコードの更新。

MySQLのテーブルタイプによる速度差を計測するために再びベンチマークを実施。INSERT、UPDATE共に10万件のレコードを操作した。周囲で言われているほどInnoDBの実力が観察されなかった。MyISAMで十分なようだ。一方、今度はH2の反応速度が劇的に向上している。一体、何が作用したんだろう・・・? {image:bench2.gif}

この記事は役に立ちましたか?