Redis特点
Redis是一个高性能key/value内存型数据库,在redis中,所有的数据形式都是以键值对的方式来存储的
Redis支持丰富的数据类型 string、list、set、sorted set 指的键值对中值的类型
Redis支持持久化,将内存的数据存储到硬盘里面
Redis单线程,单进程。由于是单线程和单进程的,所以它的线程是安全的。
String类型操作命令
String 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。
String 类型是二进制安全的,意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。
String 类型是 Redis 最基本的数据类型,String 类型的值最大能存储 512MB
mget:一次获得多个key的value
List类型
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含 2^32^ - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
lpushx:同lpush,但是必须要保证这个key存在 必须在列表进行存在的情况下从左插入
Set类型
Redis 的 Set 是 String 类型的无序集合。集合中成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 2^32^ - 1 (4294967295, 每个集合可存储40多亿个成员)。
ZSet集合
spop:返回集合中的count个元素,并在集合中删除
ZSet集合
Redis 有序集合和集合一样也是string类型元素的集合且不允许重复的成员。不同的是每个元素都会关联一个==double类型的分数==。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 2^32^ - 1 (4294967295, 每个集合可存储40多亿个成员)
zincrby:给某个特定元素加分
hash类型
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。Redis 中每个 hash 可以存储 2^32^ - 1 键值对(40多亿)。
hget、 hmget :获得一个key的value、获得多个key的value