かまたま日記3

プログラミングメイン、たまに日常

コンシステント・ハッシュ法を学びつつ分散キャッシュを実装してみる

知らないなんて言えないNoSQLまとめ(1):KVS系NoSQLのまとめ(Hibari、Dynamo、Voldemort、Riak編) (2/4) - @IT

上記の記事を読んでいて「コンシステント・ハッシング」なる初見の単語を見て、調べてみました。
コンシステントハッシュ法 - Wikipedia
ConsistentHashing - コンシステント・ハッシュ法

実際手を動かしてみる

どうやら効率の良い分散アルゴリズムを提供する方法らしいのですが、文章で見てもよくわかりませんw
と、いうことで結城さんのページで実装されているConsistentHashクラスを使って分散キャッシュを実装してみました。
スレッドセーフとかは全然考えられてないですけど!

実際作ってみるとどういうアルゴリズムなのかなんとなく分かった気がします。
特にノードの削除はラクチンですね!