tokyo cabinet(ADB) のパフォーマンスを調べた
引き続き, TokyoCabinet の ADB のオンメモリハッシュをつかって, 4 万件のデータを R/W してみた.
古めのマシン(うちの会社のサーバ)の結果は以下.
user system total real
0.290000 0.010000 0.300000 ( 0.300216) # write 4 万件
0.190000 0.000000 0.190000 ( 0.193892) # read 4 万件
新しめのマシン(自分の PC の VMWare 上の Ubuntu)の結果は以下.
user system total real
0.070000 0.020000 0.090000 ( 0.114766) # write 4 万件
0.050000 0.010000 0.060000 ( 0.069056) # read 4 万件
ちょっと気になったので ruby 1.8.6 の組み込みクラス Hash でも 4 万件のデータを R/W してみました.
古めのマシン(うちの会社のサーバ)の結果は以下.
user system total real
0.280000 0.020000 0.300000 ( 0.296774) # write 4 万件
0.100000 0.000000 0.100000 ( 0.103907) # read 4 万件
新しめのマシン(自分の PC の VMWare 上の Ubuntu)の結果は以下.
user system total real
0.080000 0.000000 0.080000 ( 0.094135) # write 4 万件
0.040000 0.000000 0.040000 ( 0.046357) # read 4 万件
結論
TokyoCabinet の ADB のオンメモリハッシュのパフォーマンスは組み込みクラスの Hash よりちょっと遅いくらいのようです.
mixi engineer blog を参照すると, メモリ使用量は激減するようです. また, 速度的にも TokyoCabinet の方がはやくなると記載されていましたが今回の実験ではそうはなりませんでした. なにかチューニングする方法があるのかもしれませんのでもう少し深堀りが必要そうです.