Download List

项目描述

Javaで実装された分散キーバリューストア(KVS)です

Githubへ移行しました。 https://github.com/kobedigitallabo/okuyama

今後の更新はGithub上にて行います。 こちらにある過去リリース分はそのまま維持します。

系统要求

System requirement is not defined

发布: 2010-05-19 01:51
okuyama 0.6.3 (1 files 隐藏)

发布版本通知

■データノードをmemcacheのノードとして利用可能に
マスターノードを起動せずに直接データノードをmemcacheのノードとして利用可能。
以下のように設定を変更しexecDataNode.batを実行するとmemcacheクライアントでアクセスできる。

設定ファイルDataNode.propertiesの25行目
----------------------------------
KeyManagerHelper.Init=
↓上記を下記内容に変更
KeyManagerHelper.Init=memcache
----------------------------------
として起動するとmemcacheプロトコルで会話が可能となる。
対応メソッドはマスターノードをmemcacheモードとして起動した場合と同様となる。
(・set, ・get, ・add, ・delete)(flagに対応)

ファイルへのデータ永続化が可能
設定ファイルDataNode.propertiesの30行目、31行目
----------------------------------
KeyManagerJob1.memoryMode=false
KeyManagerJob1.dataMemory=true
----------------------------------
上記の設定でトランザクションログは残し、登録されたデータはメモリに保持する
両方はtrueにすると完全メモリモード(最も高速に稼動)(単体でmemcacheとほぼ同程度の処理速度が出る)
両方はfalseにすると完全ファイルモード(最も大量のデータ(Valueのサイズ)を保持可能)

デフォルトでは2560バイトがvalueサイズの最大値となるので、src\org\imdst\util\ImdstDefine.javaの150行目を
変更しcompile.batを実行しコンパイルすると許容できるデータサイズが変更できる。


■Key値からHash値を求めるロジックを変更
okuyamaでは登録されたKey値はハッシュ値を求めてその値を実際の登録に使用しているが、
その値の生成ロジックを見直し、よりハッシュ値が分散するように変更
この変更により、今まで登録したデータは全て破棄する必要があります。
この変更が受け入れられない場合はsrc\org\imdst\helper\MasterManagerHelper.javaの2660行目、2661行目を
以下のように変更し、compile.batを実行し再コンパイルを実行。
--------------------------------------------------------------------
private int hashCodeCnv(String str) {
return new HashCodeBuilder(17,37).append(str).toHashCode();
//return str.hashCode();
}
↓↓↓↓変更(コメントアウトを入れ替え)
private int hashCodeCnv(String str) {
//return new HashCodeBuilder(17,37).append(str).toHashCode();
return str.hashCode();
}
--------------------------------------------------------------------


■データ登録メソッドsetValue時の処理速度を20%向上
データノード、スレーブデータノード起動時にsetValueを実行した際の処理速度を
20%向上。データノードへの登録リクエスト送信中にスレーブデータノードへの送信準備をするように修正。


■バグFix

变更日志

No Changelogs