Redis 数据类型
一、Redis 数据类型
Redis 数据库支持的数据类型有五种。
- String字符串
- Hash哈希
- List列表
- Set集合
- SortedSet有序集合
二、String 字符串类型
字符串是一组字节。在 Redis 数据库中,字符串是二进制安全的。这意味着它们具有已知的长度,而不是由任何特殊的终止字符确定。因此,可以在一个字符串中存储高达 512 兆字节的任何内容。
示例:
让我们使用 SET 命令在key中存储一个字符串名称“Ajeet Kumar”,然后使用 GET 命令检索它。
SET name "Ajeet Kumar"
OK
GET name
"Ajeet Kumar"
在上面的例子中,SET 和 GET 是 Redis 命令,name 是 Redis 中使用的键,“Ajeet Kumar”是存储在 Redis 中的字符串值。
三、Hash 哈希类型
哈希是键值对的集合。在 Redis 中,哈希是字符串字段和字符串值之间的映射。因此,它们用于表示对象。
示例:
让我们存储一个包含用户基本信息的用户对象。
HMSET user:1 username ajeet password javatpoint alexa 2000
OK
HGETALL user:1
"username"
"ajeet"
"password"
"javatpoint"
"alexa"
"2000"
这里,HMSET 和 HGETALL 是 Redis 的命令,而 user:1 是键。
每个散列最多可以存储 232 - 1 个字段值对(超过 40 亿个)。
四、List 列表类型
Redis List 列表定义为字符串列表,按插入顺序排序。您可以在头部或尾部向 Redis 列表添加元素。
示例:
lpush javatpoint java
(integer) 1
lpush javatpoint java
(integer) 1
lpush javatpoint java
(integer) 1
lpush javatpoint java
(integer) 1
lrange javatpoint 0 10
"cassandra"
"mongodb"
"sql"
"java"
列表的最大长度为 232 - 1 个元素(每个列表超过 40 亿个元素)。
五、Set 集合类型
Sets 是 Redis 数据库中字符串的无序集合。在 Redis 中,您可以添加、删除和测试 O(1) 时间复杂度的成员是否存在。
示例:
sadd tutoriallist redis
(integer) 1
redis 127.0.0.1:6379> sadd tutoriallist sql
(integer) 1
redis 127.0.0.1:6379> sadd tutoriallist postgresql
(integer) 1
redis 127.0.0.1:6379> sadd tutoriallist postgresql
(integer) 0
redis 127.0.0.1:6379> sadd tutoriallist postgresql
(integer) 0
redis 127.0.0.1:6379> smembers tutoriallist
1) "redis"
2) "postgresql"
3) "sql"
在上面的示例中,您可以看到 postgresql 被添加了三次,但由于集合的唯一属性,它只添加了一次。
集合中的最大成员数为 232 - 1 个元素(每个列表超过 40 亿个元素)。
六、Sorted Set 有序集合
Redis Sorted Sets 类似于 Redis Sets。它们也是一组不重复的字符串集合。但是排序集的每个成员都与一个分数相关联,该分数用于对排序集进行排序,从最小到最大分数。虽然成员是唯一的,但分数可能会重复。
示例:
redis 127.0.0.1:6379> zadd tutoriallist 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd tutoriallist 0 sql
(integer) 1
redis 127.0.0.1:6379> zadd tutoriallist 0 postgresql
(integer) 1
redis 127.0.0.1:6379> zadd tutoriallist 0 postgresql
(integer) 0
redis 127.0.0.1:6379> zadd tutoriallist 0 postgresql
(integer) 0
redis 127.0.0.1:6379> ZRANGEBYSCORE tutoriallist 0 10
1) "postgresql"
2) "redis"
3) "sql"
热门文章
优秀文章