个性化阅读
专注于IT技术分析

Redis数据类型实例图解

本文概述

Redis数据库支持五种数据类型。

  • 弦乐
  • 散列
  • 清单
  • 套装
  • 排序集

弦乐

字符串是一组字节。在Redis数据库中, 字符串是二进制安全的。这意味着它们具有已知的长度, 并且不受任何特殊的终止字符确定。因此, 可以在一个字符串中存储高达512 MB的任何内容。

例子

让我们使用SET命令在字符串中存储一个字符串名称” Ajeet Kumar”, 然后使用GET命令来检索它。

SET name "Ajeet Kumar"
OK
GET name 
"Ajeet Kumar"
Redis数据类型1

在上面的示例中, SET和GET是Redis命令, 名称是Redis中使用的键, ” Ajeet Kumar”是Redis中存储的字符串值。


散列

哈希是键值对的集合。在Redis中, 散列是字符串字段和字符串值之间的映射。因此, 它们用于表示对象。

例子

让我们存储一个包含用户基本信息的用户对象。

HMSET user:1 username ajeet password srcmini alexa 2000
OK
HGETALL  user:1
"username"
"ajeet"
"password"
"srcmini"
"alexa"
"2000"
Redis数据类型2

在这里, HMSET和HGETALL是Redis的命令, 而user:1是密钥。

每个散列最多可以存储232-1个字段/值对(超过40亿个)。


清单

Redis列表定义为字符串列表, 按插入顺序排序。你可以将元素添加到头部或尾部的Redis列表中。

例子

lpush srcmini java
(integer) 1
lpush srcmini java
(integer) 1
lpush srcmini java
(integer) 1
lpush srcmini java
(integer) 1
lrange srcmini 0 10
"cassandra"
"mongodb"
"sql"
"java"
Redis数据类型3

列表的最大长度为232-1个元素(每个列表超过40亿个元素)。


套装

集是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"
Redis数据类型4

在上面的示例中, 你可以看到postgresql被添加了三次, 但是由于集合的唯一属性, 它仅被添加了一次。

集合中成员的最大数量为232-1个元素(每个列表超过40亿个元素)。


排序集

Redis排序集类似于Redis集。它们也是一组非重复的String集合。但是, 排序集的每个成员都与一个分数相关联, 该分数用于从最小到最大分数中获取排序的排序集。虽然成员是唯一的, 但分数可以重复。

例子

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"
Redis数据类型5
赞(0)
未经允许不得转载:srcmini » Redis数据类型实例图解

评论 抢沙发

评论前必须登录!