|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjava.lang.Thread
okuyama.imdst.util.KeyMapManager
public class KeyMapManager
DataNodeが使用するKey-Valueを管理するモジュール.
データのファイルストア、登録ログの出力、同期化を行う.
入れ子のクラスの概要 |
---|
クラス java.lang.Thread から継承された入れ子のクラス/インタフェース |
---|
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler |
フィールドの概要 | |
---|---|
protected static int |
accessorTypeBw
|
protected boolean |
initDataFile
|
protected java.lang.String |
keyObjBkupFilePath
|
protected boolean |
keyObjBkupMode
|
int |
myDiffModeOperationStatus
|
int |
myOperationStatus
|
boolean |
outputDataStopSignal
|
protected static java.lang.String |
workMapFileEnc
|
クラス java.lang.Thread から継承されたフィールド |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
コンストラクタの概要 | |
---|---|
KeyMapManager(java.lang.String keyMapFilePath,
java.lang.String workKeyMapFilePath,
boolean workFileMemory,
int keySize,
boolean dataMemory,
boolean dataManage,
java.lang.String diskCacheFile)
|
|
KeyMapManager(java.lang.String keyMapFilePath,
java.lang.String workKeyMapFilePath,
boolean workFileMemory,
int keySize,
boolean dataMemory,
int memoryLimitSize,
java.lang.String[] virtualStorageDirs,
java.lang.String diskCacheFile)
|
|
KeyMapManager(java.lang.String keyMapFilePath,
java.lang.String workKeyMapFilePath,
boolean workFileMemory,
int keySize,
boolean dataMemory,
java.lang.String diskCacheFile)
|
|
KeyMapManager(java.lang.String keyMapFilePath,
java.lang.String workKeyMapFilePath,
boolean workFileMemory,
int keySize,
boolean dataMemory,
java.lang.String[] dirs,
java.lang.String diskCacheFile)
|
メソッドの概要 | |
---|---|
int |
appendValue(java.lang.String key,
java.lang.String appendValue,
java.lang.String appendSep,
java.lang.String transactionCode)
キーを指定することで紐付くValueの後ろに渡されたValueを付加する. |
void |
autoLockRelease(long time)
Lockの自動開放メソッド. |
java.lang.String |
calcValue(java.lang.String key,
int calcVal,
java.lang.String transactionCode,
boolean initCalcValueFlg)
キーを指定することで紐付くValueに計算を行う. |
boolean |
checkError()
|
boolean |
containsKeyPair(java.lang.String key)
|
boolean |
containsTagPair(java.lang.String tag)
|
int |
createListStruct(java.lang.String listName,
boolean compulsiveFlg,
java.lang.String transactionCode)
List構造を作成する. |
void |
dataExport(java.io.PrintWriter pw,
java.io.BufferedReader br,
java.net.Socket soc)
データバックアップ用 |
void |
diffDataMode(boolean flg)
|
void |
diffDataMode(boolean flg,
java.io.PrintWriter pw)
|
void |
diffDataModeOff()
|
void |
dump()
|
java.lang.String[] |
getAllSaveDataSize()
|
java.lang.String |
getKeyPair(java.lang.String key)
|
long |
getLastDataChangeTime()
|
java.lang.String |
getLockedTransactionCode(java.lang.String key)
Lockの状況を確認する. |
int |
getSaveDataCount()
|
long |
getSaveDataSize(java.lang.String uniqueKey)
|
java.lang.String |
getTagPair(java.lang.String tag)
|
java.lang.String |
getTargetIndexTagPair(java.lang.String tag,
int index)
|
java.lang.String |
getTargetTagIndexList(java.lang.String tag)
対象のTagのデータが存在する位置をKeyMapManager.tagKeySepで連結した文字列を返す<.br> 本メソッドで取得したIndexをgetTargetIndexTagPairに渡すことで指定位置のTagとKeyのペアを取得可能. |
void |
inputConsistentHashMoveData2Stream(java.io.PrintWriter pw,
java.io.BufferedReader br)
|
void |
inputDiffKeyMapObj2Stream(java.io.BufferedReader br,
java.io.PrintWriter pw)
|
void |
inputKeyMapObj2Stream(java.io.BufferedReader br,
java.io.PrintWriter pw,
int dataLineCount)
|
void |
inputNoMatchKeyMapKey2Stream(java.io.PrintWriter pw,
java.io.BufferedReader br)
|
boolean |
isLock(java.lang.String key)
Lockの状況を確認する. |
int |
keyObjectExport(java.lang.String filePath)
メモリ上のデータのみバックアップファイルにストア |
java.lang.String |
listGetData(java.lang.String listName,
long index,
java.lang.String leftPointer,
java.lang.String transactionCode)
List構造の指定した位置のデータを取得する. |
java.lang.String |
listLen(java.lang.String listName,
java.lang.String transactionCode)
現在のList構造体のサイズを返す. |
java.lang.String |
listLPop(java.lang.String listName,
java.lang.String transactionCode)
List構造の先頭にデータの取得後、削除をおこなう. |
int |
listLPush(java.lang.String listName,
java.lang.String keyNode,
java.lang.String transactionCode)
List構造の先頭にデータの登録をおこなう. |
java.lang.String |
listRPop(java.lang.String listName,
java.lang.String transactionCode)
List構造の後端にデータの取得後、削除をおこなう. |
int |
listRPush(java.lang.String listName,
java.lang.String keyNode,
java.lang.String transactionCode)
List構造の最後尾にデータの登録をおこなう. |
java.lang.String |
locking(java.lang.String key,
java.lang.String transactionCode,
int lockingTime)
Lockの取得を行う. |
void |
outputConsistentHashMoveData2Stream(java.io.PrintWriter pw,
java.lang.String targetRangStr)
|
void |
outputDiffKeyMapObj2Stream(java.io.PrintWriter pw,
java.io.BufferedReader br)
|
void |
outputKeyData2Stream(java.io.PrintWriter pw)
|
void |
outputKeyMapObj2Stream(java.io.PrintWriter pw)
|
void |
outputNoMatchKeyMapKey2Stream(java.io.PrintWriter pw,
int matchNo,
java.lang.String rulesStr)
|
void |
removeConsistentHashMoveData2Stream(java.io.PrintWriter pw,
java.lang.String targetRangStr)
|
java.lang.String |
removeKeyPair(java.lang.String key,
java.lang.String transactionCode)
|
java.lang.String |
removeLock(java.lang.String key,
java.lang.String transactionCode)
Lockの開放を行う. |
void |
removeModMoveData2Stream(java.io.PrintWriter pw,
java.io.BufferedReader br)
|
java.lang.String |
removeTagRelation(java.lang.String tag,
java.lang.String transactionCode)
|
boolean |
removeTargetTagInKey(java.lang.String tag,
java.lang.String key,
java.lang.String transactionCode)
|
void |
run()
定期的にトランザクションログファイルのローテーション及び、Vacuum処理を行う. |
void |
setKeyPair(java.lang.String key,
java.lang.String keyNode,
java.lang.String transactionCode)
キーを指定することでノードをセットする. |
boolean |
setKeyPairOnlyOnce(java.lang.String key,
java.lang.String keyNode,
java.lang.String transactionCode)
キーを指定することでノードをセットする. |
boolean |
setKeyPairOnlyOnce(java.lang.String key,
java.lang.String keyNode,
java.lang.String transactionCode,
boolean moveData)
キーを指定することでノードをセットする. |
boolean |
setKeyPairVersionCheck(java.lang.String key,
java.lang.String keyNode,
java.lang.String transactionCode,
java.lang.String updateVersionNo,
boolean execCheck)
キーを指定することでノードをセットする. |
void |
setTagPair(java.lang.String tag,
java.lang.String key,
java.lang.String transactionCode)
|
void |
testSearch(java.lang.String val)
|
long |
truncateData(java.lang.String uniqueKey)
指定のIsolation指定のuniqueKeyに関係するデータを全て削除する. |
クラス java.lang.Thread から継承されたメソッド |
---|
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
クラス java.lang.Object から継承されたメソッド |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
フィールドの詳細 |
---|
public boolean outputDataStopSignal
protected static int accessorTypeBw
protected static java.lang.String workMapFileEnc
public int myOperationStatus
public int myDiffModeOperationStatus
protected boolean initDataFile
protected boolean keyObjBkupMode
protected java.lang.String keyObjBkupFilePath
コンストラクタの詳細 |
---|
public KeyMapManager(java.lang.String keyMapFilePath, java.lang.String workKeyMapFilePath, boolean workFileMemory, int keySize, boolean dataMemory, boolean dataManage, java.lang.String diskCacheFile) throws BatchException
BatchException
public KeyMapManager(java.lang.String keyMapFilePath, java.lang.String workKeyMapFilePath, boolean workFileMemory, int keySize, boolean dataMemory, java.lang.String diskCacheFile) throws BatchException
BatchException
public KeyMapManager(java.lang.String keyMapFilePath, java.lang.String workKeyMapFilePath, boolean workFileMemory, int keySize, boolean dataMemory, int memoryLimitSize, java.lang.String[] virtualStorageDirs, java.lang.String diskCacheFile) throws BatchException
BatchException
public KeyMapManager(java.lang.String keyMapFilePath, java.lang.String workKeyMapFilePath, boolean workFileMemory, int keySize, boolean dataMemory, java.lang.String[] dirs, java.lang.String diskCacheFile) throws BatchException
BatchException
メソッドの詳細 |
---|
public void run()
java.lang.Runnable
内の run
java.lang.Thread
内の run
public long truncateData(java.lang.String uniqueKey)
uniqueKey
-
public void setKeyPair(java.lang.String key, java.lang.String keyNode, java.lang.String transactionCode) throws BatchException
key
- キー値keyNode
- Value値transactionCode
- boolean
- 移行データ指定
BatchException
public boolean setKeyPairOnlyOnce(java.lang.String key, java.lang.String keyNode, java.lang.String transactionCode) throws BatchException
key
- キー値keyNode
- Value値transactionCode
-
BatchException
public boolean setKeyPairOnlyOnce(java.lang.String key, java.lang.String keyNode, java.lang.String transactionCode, boolean moveData) throws BatchException
key
- キー値keyNode
- Value値transactionCode
-
BatchException
public boolean setKeyPairVersionCheck(java.lang.String key, java.lang.String keyNode, java.lang.String transactionCode, java.lang.String updateVersionNo, boolean execCheck) throws BatchException
key
- キー値keyNode
- Value値transactionCode
- updateVersionNo
-
BatchException
public java.lang.String getKeyPair(java.lang.String key)
public int createListStruct(java.lang.String listName, boolean compulsiveFlg, java.lang.String transactionCode) throws BatchException
listName
- List名compulsiveFlg
- 強制作成フラグtransactionCode
-
BatchException
public int listLPush(java.lang.String listName, java.lang.String keyNode, java.lang.String transactionCode) throws BatchException
listName
- List名keyNode
- Value値transactionCode
-
BatchException
public int listRPush(java.lang.String listName, java.lang.String keyNode, java.lang.String transactionCode) throws BatchException
listName
- List名keyNode
- Value値transactionCode
-
BatchException
public java.lang.String listGetData(java.lang.String listName, long index, java.lang.String leftPointer, java.lang.String transactionCode) throws BatchException
listName
- List名index
- 指定位置leftPointer
- 指定位置データの左辺のポインターtransactionCode
-
BatchException
public java.lang.String listLPop(java.lang.String listName, java.lang.String transactionCode) throws BatchException
listName
- List名transactionCode
-
BatchException
public java.lang.String listRPop(java.lang.String listName, java.lang.String transactionCode) throws BatchException
listName
- List名transactionCode
-
BatchException
public java.lang.String listLen(java.lang.String listName, java.lang.String transactionCode) throws BatchException
listName
- リスト名transactionCode
-
BatchException
- Size構造体が存在しない場合public java.lang.String removeKeyPair(java.lang.String key, java.lang.String transactionCode) throws BatchException
BatchException
public void setTagPair(java.lang.String tag, java.lang.String key, java.lang.String transactionCode) throws BatchException
BatchException
public boolean removeTargetTagInKey(java.lang.String tag, java.lang.String key, java.lang.String transactionCode) throws BatchException
BatchException
public java.lang.String getTagPair(java.lang.String tag)
public java.lang.String getTargetTagIndexList(java.lang.String tag)
tag
- タグ
public java.lang.String getTargetIndexTagPair(java.lang.String tag, int index)
public java.lang.String removeTagRelation(java.lang.String tag, java.lang.String transactionCode) throws BatchException
BatchException
public java.lang.String calcValue(java.lang.String key, int calcVal, java.lang.String transactionCode, boolean initCalcValueFlg) throws BatchException
key
- キー値calcVal
- 計算値(数値)transactionCode
-
BatchException
public int appendValue(java.lang.String key, java.lang.String appendValue, java.lang.String appendSep, java.lang.String transactionCode) throws BatchException
key
- キー値appendValue
- 付加する値(base64でエンコード済み)appendSep
- 値が既に存在する場合にセパレータとして付加する値(ブランク指定(B)の場合は何も付加されない)transactionCode
-
BatchException
public boolean containsKeyPair(java.lang.String key)
public boolean containsTagPair(java.lang.String tag)
public java.lang.String locking(java.lang.String key, java.lang.String transactionCode, int lockingTime) throws BatchException
key
- Key値transactionCode
- 取得時に使用するTransactionCodelockingTime
- Lock継続時間
BatchException
public java.lang.String removeLock(java.lang.String key, java.lang.String transactionCode) throws BatchException
key
- Key値transactionCode
- 取得時に使用するTransactionCode
BatchException
public boolean isLock(java.lang.String key)
key
- Key値
public java.lang.String getLockedTransactionCode(java.lang.String key)
key
- Key値
public void autoLockRelease(long time) throws BatchException
time
- 現在ミリ秒
BatchException
public void diffDataMode(boolean flg, java.io.PrintWriter pw)
public void diffDataMode(boolean flg)
public void diffDataModeOff()
public void outputKeyData2Stream(java.io.PrintWriter pw) throws BatchException
BatchException
public void outputKeyMapObj2Stream(java.io.PrintWriter pw) throws BatchException
BatchException
public void outputDiffKeyMapObj2Stream(java.io.PrintWriter pw, java.io.BufferedReader br) throws BatchException
BatchException
public void inputKeyMapObj2Stream(java.io.BufferedReader br, java.io.PrintWriter pw, int dataLineCount) throws BatchException
BatchException
public void inputDiffKeyMapObj2Stream(java.io.BufferedReader br, java.io.PrintWriter pw) throws BatchException
BatchException
public void outputNoMatchKeyMapKey2Stream(java.io.PrintWriter pw, int matchNo, java.lang.String rulesStr) throws BatchException
BatchException
public void outputConsistentHashMoveData2Stream(java.io.PrintWriter pw, java.lang.String targetRangStr) throws BatchException
BatchException
public void inputNoMatchKeyMapKey2Stream(java.io.PrintWriter pw, java.io.BufferedReader br) throws BatchException
BatchException
public void inputConsistentHashMoveData2Stream(java.io.PrintWriter pw, java.io.BufferedReader br) throws BatchException
BatchException
public void removeConsistentHashMoveData2Stream(java.io.PrintWriter pw, java.lang.String targetRangStr) throws BatchException
BatchException
public void removeModMoveData2Stream(java.io.PrintWriter pw, java.io.BufferedReader br) throws BatchException
BatchException
public long getLastDataChangeTime()
public int getSaveDataCount()
public long getSaveDataSize(java.lang.String uniqueKey)
public java.lang.String[] getAllSaveDataSize()
public boolean checkError()
public void dump()
public int keyObjectExport(java.lang.String filePath)
public void dataExport(java.io.PrintWriter pw, java.io.BufferedReader br, java.net.Socket soc)
public void testSearch(java.lang.String val)
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |