Redis入门——Key、五大数据类型图文详解
文章目录
1、Redis简介
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
2、Redis常见命令
3、Redis_Key关键字
进入Redis控制台
1、我们设置key-value,可以通过exists来判断指定的Key是否存在,返回1表示存在,返回0表示不存在
2、当已存在时,在设置key-value会覆盖原有的值
3、通过type可查看指定的key是什么类型
3、给key设置过期时间并查看
更多方法请参考文档
4、五大数据类型简介
- String: 字符串
- Hash: 哈希,类似java里的Map
- List: 列表
- Set: 集合
- Zset: 有序集合
4.1、String(字符串)
-
String 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。
-
String 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。
-
String 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。
1、set/get/del/append/strlen
2、Incr/decr/incrby/decrby
3、getrange/setrange
getrange
4、setex/setnx
setex
setnx
5、mget/mset/msetnx
只要有一个key已经存在,mgetnx一个操作都不会执行
4.2、List(列表)
-
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
-
一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
1、lpush/rpush/lrange
2、lpop/rpop
3、lindex/llen
4、lrem
lrem:删除N个指定的value
5、lrem
6、rpoplpush
4.3、Set
-
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
-
Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。
-
集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
1、sadd/smembers/sismember
2、scard/srem
3、数学集合类:sdiff/sinter/sunion
4.3、Hash
-
Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。
-
Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。
1、hset/hget/hmset/hmget/hgetall/hdel
2、hlen/hexists
3、hkeys/hvals
4、hincrby/hincrbyfloat
4.4、ZSet
-
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。
-
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
-
有序集合的成员是唯一的,但分数(score)却可以重复。
1、zadd/zrange
2、zrangebyscore
limit:从目标索引开始几个取值
3、zcard/zrank/zscore
觉得不错的小伙伴可以点赞关注和收藏哦!