image

  • フォト Amazonギフト券
    ※この時計の時刻は、閲覧しているパソコンのものであり、必ずしも正確な時間とは限りません

検索

最近のトラックバック

無料ブログはココログ

« ピックアップ:日本の給食凄すぎワロタ, 汚染水が浄化装置を素通りしていた, etc... | トップページ | ピックアップ:出版業界への影響は甚大 日本製紙 石巻工場, 京大「16次方程式の解の数調べる式できたよ, etc... »

2011-06-26

ruby から redis と tokyo-cabinet の利用を比較

ruby から redis と tokyo-cabinet の利用をして、速度を比較してみた。
redis と tc はそうとう差がある。測定用プログラムが間違っているか redis の設定がおかしいのか?

$ ruby sample00.rb
      user     system      total        real
Redis:set
30.420000  12.080000  42.500000 ( 77.195107)
Redis:get
  0.060000   0.010000   0.070000 (  0.123865)
TokyoTyrant:set
  2.280000   0.090000   2.370000 (  2.394154)
TokyoTyrant:get
  0.000000   0.000000   0.000000 (  0.001792)

以下がプログラム。(web 上で見つけた類似プログラムをベースにした)

$ cat sample00.rb
require 'rubygems'
require 'redis'
require 'tokyocabinet'

require 'benchmark'
require 'pp'

BENCH_TIMES_CREATE = 10000 * 65 # 1000
BENCH_TIMES_SELECT = 1000

include TokyoCabinet

@tc = HDB::new
@tc.open("tc.hdb", HDB::OWRITER | HDB::OCREAT)
if !@tc.vanish()
  ecode = @tc.ecode
  STDERR.printf("get error: %s\n", @tc.errmsg(ecode))
end

@rd = Redis.new
@rd.flushall

Benchmark.bm do |b|

  b.report("Redis:set\n") {
    1.upto BENCH_TIMES_CREATE do |i|
      @rd.set "foo_#{i}", "bar_#{i}"
    end
  }

  b.report("Redis:get\n") {
    1.upto BENCH_TIMES_SELECT do |i|
      @rd.get "foo_#{ i}"
    end
  }

  b.report("TokyoTyrant:set\n") {
    1.upto BENCH_TIMES_CREATE do |i|
      @tc["foo_#{i}"] = "bar_#{ i}"
    end
  }
  b.report("TokyoTyrant:get\n") {
    1.upto BENCH_TIMES_SELECT do |i|
      @tc["foo_#{i}"]
    end
  }
end


« ピックアップ:日本の給食凄すぎワロタ, 汚染水が浄化装置を素通りしていた, etc... | トップページ | ピックアップ:出版業界への影響は甚大 日本製紙 石巻工場, 京大「16次方程式の解の数調べる式できたよ, etc... »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/184434/52046615

この記事へのトラックバック一覧です: ruby から redis と tokyo-cabinet の利用を比較:

« ピックアップ:日本の給食凄すぎワロタ, 汚染水が浄化装置を素通りしていた, etc... | トップページ | ピックアップ:出版業界への影響は甚大 日本製紙 石巻工場, 京大「16次方程式の解の数調べる式できたよ, etc... »

mokuji

2013年12月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

google

  • twitter
  • __
  • _
    Googleボットチェッカー

合わせて読む

  • 合わせて読む
    フィードメーター - katoy: cocolog あわせて読みたい

リンク