网站建设看什么书,奢做品二手 哪个网站好,兰州的网站建设,宁乡市建设局网站我们知道 Redis 是 Key-Value 类型缓存型数据库#xff0c;Redis 为了存储不同类型的数据#xff0c;提供了五种常用数据类型#xff0c;如下所示#xff1a;
string#xff08;字符串#xff09;hash#xff08;哈希散列#xff09;list#xff08;列表#xff09;…我们知道 Redis 是 Key-Value 类型缓存型数据库Redis 为了存储不同类型的数据提供了五种常用数据类型如下所示
string字符串hash哈希散列list列表set集合zsetsorted set有序集合String字符串
string 是 redis 最基本的类型你可以理解成与 Memcached 一模一样的类型一个 key 对应一个 value。
string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。
string 类型是 Redis 最基本的数据类型string 类型的值最大能存储 512MB。
实例
redis 127.0.0.1:6379 SET runoob 菜鸟教程
OK
redis 127.0.0.1:6379 GET runoob
菜鸟教程
在以上实例中我们使用了 Redis 的 SET 和 GET 命令。键为 runoob对应的值为 菜鸟教程。
注意一个键最大能存储 512MB。 Hash哈希
Redis hash 是一个键值(keyvalue)对集合。
Redis hash 是一个 string 类型的 field 和 value 的映射表hash 特别适合用于存储对象。
实例
DEL runoob 用于删除前面测试用过的 key不然会报错(error) WRONGTYPE Operation against a key holding the wrong kind of value redis 127.0.0.1:6379 DEL runoob
redis 127.0.0.1:6379 HMSET runoob field1 Hello field2 World
OK
redis 127.0.0.1:6379 HGET runoob field1
Hello
redis 127.0.0.1:6379 HGET runoob field2
World
实例中我们使用了 Redis HMSET, HGET 命令HMSET 设置了两个 fieldvalue 对, HGET 获取对应 field 对应的 value。
每个 hash 可以存储 232 -1 键值对40多亿。 List列表
Redis 列表是简单的字符串列表按照插入顺序排序。你可以添加一个元素到列表的头部左边或者尾部右边。
实例
redis 127.0.0.1:6379 DEL runoob
redis 127.0.0.1:6379 lpush runoob redis
(integer) 1
redis 127.0.0.1:6379 lpush runoob mongodb
(integer) 2
redis 127.0.0.1:6379 lpush runoob rabbitmq
(integer) 3
redis 127.0.0.1:6379 lrange runoob 0 10
1) rabbitmq
2) mongodb
3) redis
redis 127.0.0.1:6379
列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。 Set集合
Redis 的 Set 是 string 类型的无序集合。
集合是通过哈希表实现的所以添加删除查找的复杂度都是 O(1)。
sadd 命令
添加一个 string 元素到 key 对应的 set 集合中成功返回 1如果元素已经在集合中返回 0。
sadd key member
实例
redis 127.0.0.1:6379 DEL runoob
redis 127.0.0.1:6379 sadd runoob redis
(integer) 1
redis 127.0.0.1:6379 sadd runoob mongodb
(integer) 1
redis 127.0.0.1:6379 sadd runoob rabbitmq
(integer) 1
redis 127.0.0.1:6379 sadd runoob rabbitmq
(integer) 0
redis 127.0.0.1:6379 smembers runoob1) redis
2) rabbitmq
3) mongodb
注意以上实例中 rabbitmq 添加了两次但根据集合内元素的唯一性第二次插入的元素将被忽略。
集合中最大的成员数为 232 - 1(4294967295, 每个集合可存储40多亿个成员)。 zset(sorted set有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。 不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。
zadd 命令
添加元素到集合元素在集合中存在则更新对应score
zadd key score member
实例
redis 127.0.0.1:6379 DEL runoob
redis 127.0.0.1:6379 zadd runoob 0 redis
(integer) 1
redis 127.0.0.1:6379 zadd runoob 0 mongodb
(integer) 1
redis 127.0.0.1:6379 zadd runoob 0 rabbitmq
(integer) 1
redis 127.0.0.1:6379 zadd runoob 0 rabbitmq
(integer) 0
redis 127.0.0.1:6379 ZRANGEBYSCORE runoob 0 1000
1) mongodb
2) rabbitmq
3) redis