gjapan.net 運用開発者ブログ

gjapan.net 運用開発者ブログ

PR

×

お気に入りブログ

ビジネス指向のエン… ビジネス指向のエンジニアさん
ナイキ特集@エアフ… ナイキ@NIKEエアフォース マックスさん
Webエンジニアのちび… Webエンジニアのちびさん
ウイスキー!親父へ… ウイスキー大スキさん
楽天ワイン@シャト… 楽天ワイン@お勧めワイン探検家さん

フリーページ

2012年01月08日
XML
カテゴリ: mongodb
MongoDBのインサート処理がどのくらいの性能が出るのかベンチマークしてみました。
比較対象:memcached, MySQL

処理内容:1万回ループして、データを1万回インサートしてみた。
CPU:Core 2 Duo 2.4GHz メモリ:4GB

デフォルト:約0.17秒
safe => true:約1.9秒
safe => true, fsync => true:約4.5秒

モードによって性能に大きな違いが出ることがわかります。
ちなみに、safeモードを有効にすると MongoDB からの応答を待ちます(失敗時のエラーを検出することができる)

少し遅くなりますがsafeモードを有効にして、fsyncは無効にするのが一般的な使い方だと思います。

比較対象 1万回データインサート
MySQL:約3.5秒
memcached:約1.5秒

mongodbのデフォルトだとmemcachedよりも速いことになってしまいます。
応答を待たないので、その分プログラムの処理が早く終わっている為であり、通常使うsafeモードなら同程度の速度に落ち着きます。

ちなみに、safeモードOFFだとCPUが100%行っちゃいます(safeモードが有効だと40%程度)。待ちがない分CPUをぶん回せたということでしょう。
safeモードOFFで実際書き込み失敗になるかなと思って何度かやってみたけど、そう簡単にはエラーにはならないようで・・信頼性が必要なく、アプリ側に余分な負荷をかけたくない時などに使えるでしょう。例えばログ系など





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2012年01月08日 18時33分56秒
コメント(0) | コメントを書く
[mongodb] カテゴリの最新記事


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Design a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: