- Redis 基础
- Redis - 首页
- Redis - 概述
- Redis - 环境
- Redis - 配置
- Redis - 数据类型
- Redis 命令
- Redis - 命令
- Redis - 键
- Redis - 字符串
- Redis - 哈希
- Redis - 列表
- Redis - 集合
- Redis - 有序集合
- Redis - HyperLogLog
- Redis - 发布订阅
- Redis - 事务
- Redis - 脚本
- Redis - 连接
- Redis - 服务器
- Redis 高级
- Redis - 备份
- Redis - 安全
- Redis - 基准测试
- Redis - 客户端连接
- Redis - 管道
- Redis - 分区
- Redis - Java
- Redis - Php
- Redis 有用资源
- Redis - 快速指南
- Redis - 有用资源
- 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"
在上面的示例中,**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"