Redis 数据类型

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"

在上面的示例中, SETGET 是Redis命令, name 是Redis中使用的键, tutorialspoint 是存储在Redis中的字符串值。

注意 − 字符串值的最大长度为512兆字节。

Hashes(哈希)

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 是键。

每个哈希可以存储多达2的32次方减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"

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程