TairString(exString)是一種帶版本號碼的String類型資料結構,本文介紹TairString資料支援的命令。
TairString簡介
Redis的String僅由key和value組成,而TairString不僅包含key和value,還攜帶了版本(version),可用於樂觀鎖等情境。除此之外,TairString在Redis String加減功能的基礎上支援了邊界設定,可以將INCRBY、INCRBYFLOAT的結果限制在一定的範圍內,超出範圍則提示錯誤。
主要特性- value攜帶版本號碼。
- 使用INCRBY、INCRBYFLOAT遞增資料時可設定變更範圍。
該Module已開源,更多資訊請參見TairString。
最佳實務
前提條件
注意事項
本文的操作對象為Tair執行個體中的TairString資料。
命令列表
命令 | 文法 | 簡介 |
EXSET | EXSET key value [EX|PX|EXAT|PXAT time] [NX|XX] [VER|ABS version] [KEEPTTL] | 若key不存在,則建立新的key,並將value儲存到key中;若key已存在,則覆蓋原來value的值。 |
EXGET | EXGET key | 擷取TairString的value和version。 |
EXSETVER | EXSETVER key version | 設定目標key的version。 |
EXINCRBY | EXINCRBY key num [EX|PX|EXAT|PXAT time] [NX|XX] [VER|ABS version] [MIN minval] [MAX maxval] [KEEPTTL] | 對TairString的value進行自增自減操作,num的範圍為long。 |
EXINCRBYFLOAT | EXINCRBYFLOAT key num [EX|PX|EXAT|PXAT time] [NX|XX] [VER|ABS version] [MIN minval] [MAX maxval] [KEEPTTL] | 對TairString的value進行自增自減操作,num的範圍為double。 |
EXCAS | EXCAS key newvalue version | 當目標key的version值與指定的version相等時,則更新key的value值;version不相等,則返回舊的value和version。 |
EXCAD | EXCAD key version | 當目標key的version值與指定的version相等時,則刪除Key。 |
DEL | DEL key [key ...] | 使用原生Redis的DEL命令可以刪除一條或多條TairString資料。 |
大寫關鍵字
:命令關鍵字。斜體
:變數。[options]
:選擇性參數,不在括弧中的參數為必選。A|B
:該組參數互斥,請進行二選一或多選一。...
:前面的內容可重複。
EXSET
類別 | 說明 |
文法 | EXSET key value [EX|PX|EXAT|PXAT time] [NX|XX] [VER|ABS version] [KEEPTTL] |
時間複雜度 | O(1) |
命令描述 | 若key不存在,則建立新的key,並將value儲存到key中;若key已存在,則覆蓋原來value的值。 |
選項 |
|
傳回值 |
|
樣本 | 命令樣本:
返回樣本:
|
EXGET
類別 | 說明 |
文法 | EXGET key |
時間複雜度 | O(1) |
命令描述 | 擷取TairString的value和version。 |
選項 |
|
傳回值 |
|
樣本 | 命令樣本:
返回樣本:
|
EXSETVER
類別 | 說明 |
文法 | EXSETVER key version |
時間複雜度 | O(1) |
命令描述 | 設定目標key的version。 |
選項 |
|
傳回值 |
|
樣本 | 命令樣本:
返回樣本:
|
EXINCRBY
類別 | 說明 |
文法 | EXINCRBY key num [EX|PX|EXAT|PXAT time] [NX|XX] [VER|ABS version] [MIN minval] [MAX maxval] [KEEPTTL] |
時間複雜度 | O(1) |
命令描述 | 對TairString的value進行自增自減操作,num的範圍為long。 |
選項 |
|
傳回值 |
|
樣本 | 提前執行 命令樣本:
返回樣本:
|
EXINCRBYFLOAT
類別 | 說明 |
文法 | EXINCRBYFLOAT key num [EX|PX|EXAT|PXAT time] [NX|XX] [VER|ABS version] [MIN minval] [MAX maxval] [KEEPTTL] |
時間複雜度 | O(1) |
命令描述 | 對TairString的value進行自增自減操作,num的範圍為double。 |
選項 |
|
傳回值 |
|
樣本 | 提前執行 命令樣本:
返回樣本:
|
EXCAS
類別 | 說明 |
文法 | EXCAS key newvalue version |
時間複雜度 | O(1) |
命令描述 | 當目標key的version值與指定的version相等時,則更新key的value值;version不相等,則返回舊的value和version。 |
選項 |
|
傳回值 |
|
樣本 | 提前執行 命令樣本:
返回樣本:
|
EXCAD
類別 | 說明 |
文法 | EXCAD key version |
時間複雜度 | O(1) |
命令描述 | 當目標key的version值與指定的version相等時,則刪除Key。 |
選項 |
|
傳回值 |
|
樣本 | 提前執行 命令樣本:
返回樣本:
|