Redis - 資料型別



Redis 支援 5 種資料型別。

字串

Redis 字串是一系列位元組。Redis 中的字串是二進位制安全的,這意味著它們具有已知的長度,而不是由任何特殊的終止字元決定。因此,您可以在一個字串中儲存多達 512 兆位元組的內容。

示例

redis 127.0.0.1:6379> SET name "tutorialspoint" 
OK 
redis 127.0.0.1:6379> GET name 
"tutorialspoint"

在上面的示例中,**SET** 和 **GET** 是 Redis 命令,**name** 是 Redis 中使用的鍵,**tutorialspoint** 是儲存在 Redis 中的字串值。

**注意** - 字串值的長度最大為 512 兆位元組。

雜湊

Redis 雜湊是鍵值對的集合。Redis 雜湊是在字串欄位和字串值之間建立對映。因此,它們用於表示物件。

示例

redis 127.0.0.1:6379> HMSET user:1 username tutorialspoint password 
tutorialspoint points 200 
OK 
redis 127.0.0.1:6379> HGETALL user:1  
1) "username" 
2) "tutorialspoint" 
3) "password" 
4) "tutorialspoint" 
5) "points" 
6) "200"

在上面的示例中,雜湊資料型別用於儲存使用者資訊物件,其中包含使用者的基本資訊。這裡 **HMSET、HGETALL** 是 Redis 的命令,而 **user - 1** 是鍵。

每個雜湊可以儲存多達 232 - 1 個欄位值對(超過 40 億個)。

列表

Redis 列表只是字串列表,按插入順序排序。您可以將元素新增到 Redis 列表的頭部或尾部。

示例

redis 127.0.0.1:6379> lpush tutoriallist redis 
(integer) 1 
redis 127.0.0.1:6379> lpush tutoriallist mongodb 
(integer) 2 
redis 127.0.0.1:6379> lpush tutoriallist rabitmq 
(integer) 3 
redis 127.0.0.1:6379> lrange tutoriallist 0 10  

1) "rabitmq" 
2) "mongodb" 
3) "redis"

列表的最大長度為 232 - 1 個元素(4294967295,每個列表超過 40 億個元素)。

集合

Redis 集合是字串的無序集合。在 Redis 中,您可以新增、刪除和測試成員是否存在,時間複雜度為 O(1)。

示例

redis 127.0.0.1:6379> sadd tutoriallist redis 
(integer) 1 
redis 127.0.0.1:6379> sadd tutoriallist mongodb 
(integer) 1 
redis 127.0.0.1:6379> sadd tutoriallist rabitmq 
(integer) 1 
redis 127.0.0.1:6379> sadd tutoriallist rabitmq 
(integer) 0 
redis 127.0.0.1:6379> smembers tutoriallist  

1) "rabitmq" 
2) "mongodb" 
3) "redis" 

**注意** - 在上面的示例中,**rabitmq** 添加了兩次,但是由於集合的唯一性,它只添加了一次。

集合中成員的最大數量為 232 - 1(4294967295,每個集合超過 40 億個成員)。

有序集合

Redis 有序集合類似於 Redis 集合,是字串的非重複集合。不同之處在於,有序集合的每個成員都與一個分數相關聯,該分數用於按從小到大的順序對有序集合進行排序。雖然成員是唯一的,但分數可以重複。

示例

redis 127.0.0.1:6379> zadd tutoriallist 0 redis 
(integer) 1 
redis 127.0.0.1:6379> zadd tutoriallist 0 mongodb 
(integer) 1 
redis 127.0.0.1:6379> zadd tutoriallist 0 rabitmq 
(integer) 1 
redis 127.0.0.1:6379> zadd tutoriallist 0 rabitmq 
(integer) 0 
redis 127.0.0.1:6379> ZRANGEBYSCORE tutoriallist 0 1000  

1) "redis" 
2) "mongodb" 
3) "rabitmq" 
廣告