ページ

2011年4月26日

CouchDBもベンチマークしてみた

MongoDBの方が好きなんですが、CouchDBのパフォーマンスも見てみました。viewを作るところとかのパフォーマンスは見ていないので、厳密な比較にはならないかもしれませんが、ある程度の傾向とか、感覚は分かると思います。CouchDBとか、MongoDBって何じゃ?と言う人は、ASCIIのHadoop & NoSQLを読めば分かるかも。今回はmemcached、MongoDB、CouchDBの3つについて比較しました。memcached、mondodbのコードは以前のものを使っています。

次のグラフが測定結果です。単位はミリ秒です。
データの追加はmemcacheやmongodbが0.2ミリ秒弱の時間です。memcacheはオンメモリなので当たり前ですが、mongoはディスクへの書き出しが遅延されているのでmemcacheに迫るスピードになっているのでしょう。それらに比べてCouchDBは5.4秒と30倍ぐらい遅いです。CouchDBはインストール後、設定をいじっていないデフォルトの状態です。ちょっと残念なぐらい遅いです。バルクインサートをすればもっと速度は稼げるとは思います。

次に検索スピードです。memcacheが0.2ミリ秒なのに対して、MongoDBが0.4ミリ秒強と2倍から2.5倍遅いという結果になっています。MongoDBのできることからすると、納得できそうな気になっていました。さて、今回の計測のメインディッシュのCouchDBです。グラフを見てもらえば分かると思います。えっ、わからない?じゃあ、拡大してください。数値は0.02ミリ秒でした。Memcacheの10倍速い?信じられません。別のPCで計っても大体一桁速いです。ちょっと驚異的です。viewを作るスピードは計測していませんが、もしかしたその辺に秘密があるのかも。

ということで、CouchDBはデータの追加はめっぽう遅いが、検索はサクサクだぜ!

0 件のコメント: