Redis,一种高性能的key-value数据库,并提供多种语言的API。它通常称为数据结构服务器,因为值可以是字符串,哈希,列表,集合和有序集合等类型。
redis特点:
Redis数据类型:
Redis支持五种数据类型:string,hash,list,set和zset(sorted set,有序集合)。
string型:string类型是二进制安全的,可以包含任何数据,比如jpg图片或序列化的对象。一个键最大能存储512M。
Hash:是一个string类型的field和value的映射表,hash特别适合用于存储对象。每个hash可以存储2^32-1个键值对(40亿)
127.0.0.1:6379> hmset myfamily yaohuiqin girlfriend weixihui boyfriend OK 127.0.0.1:6379> hget myfamily yaohuiqin "girlfriend" 127.0.0.1:6379> hget myfamily weixihui "boyfriend"
List(列表):列表是简单的字符串列表,按照插入顺序排序。列表最多可以存储2^32-1个元素(40亿)
127.0.0.1:6379> lpush bigfamily yaohuiqin (integer) 1 127.0.0.1:6379> lpush bigfamily yaohuiqin (integer) 2 127.0.0.1:6379> lpush bigfamily weixihui (integer) 3 127.0.0.1:6379> lpush bigfamily mama (integer) 4 127.0.0.1:6379> lpush bigfamily baba (integer) 5 127.0.0.1:6379> lrange bigfamily 0 10 1) "baba" 2) "mama" 3) "weixihui" 4) "yaohuiqin" 5) "yaohuiqin"
Set:是string类型的无序不重复集合,集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)
127.0.0.1:6379> sadd setfamily yaohuiqin (integer) 1 127.0.0.1:6379> sadd setfamily weixihui (integer) 1 127.0.0.1:6379> sadd setfamily mama (integer) 1 127.0.0.1:6379> sadd setfamily baba (integer) 1 127.0.0.1:6379> sadd setfamily didi (integer) 1 127.0.0.1:6379> sadd setfamily yaohuiqin (integer) 0 127.0.0.1:6379> sadd setfamily weixihui (integer) 0 127.0.0.1:6379> smembers setfamily 1) "weixihui" 2) "yaohuiqin" 3) "mama" 4) "baba" 5) "didi"
zset:有序集合,string元素的类型集合,不允许有重复。不同的元素都会关联一个double类型的分数。redis正式通过分数来对集合中的成员进行从小到大的排序。注意,zset的成员唯一,但是分数可以重复。
127.0.0.1:6379> zadd zsetfamily 0 yaohuiqin (integer) 1 127.0.0.1:6379> zadd zsetfamily 2 weixihui (integer) 1 127.0.0.1:6379> zadd zsetfamily 3 baba (integer) 1 127.0.0.1:6379> zadd zsetfamily 0 mama (integer) 1 127.0.0.1:6379> zrangebyscore zsetfamily 0 100 1) "mama" 2) "yaohuiqin" 3) "weixihui" 4) "baba"
原文:https://www.cnblogs.com/yaohuiqin/p/9400243.html