目录
1、String是最常用的一种数据类型,普通的key/value存储都可以归为此类。
(1)set/get
(2)mget =many get
(3)incr && incrby i++ i+?
(4)decr && decrby
(5)setnx set if not exist
(6)setex
(7)其他命令
1)getrange 获取key对应value的子字符串
2)mset
3)msetnx,同mset,不存在就设置,不会覆盖已有的key(有一个key 设置失败全部就失败)
4)getset 设置key的值,并返回key旧的值
5)append
2、进行Hash类型(类似Hashmap k v)
(1)Hash是一个String类型的field和value之间的映射表, Map<.String ,Map> 存Map
(2) redis的Hash数据类型的key(hash表名称)对应的value实际的内部存储结构为一个HashMap
(3) Hash特别适合存储对象。
(4) 所存储的成员较少时数据存储为zipmap,当成员数量增大时会自动转成真正的HashMap,此时encoding为ht。
(5) 运用场景:
(6) Hash命令讲解:
3.List的命令讲解以及使用场景剖析(try.redis.io) (栈-先进后出)用户:消息队列 mq redis做
1)、lpush——在key对应的list的头部添加一个元素
2)、lrange——获取key对应的list的指定下标范围的元素,-1表示获取所有元素
3)、lpop——从key对应的list的尾部删除一个元素,并返回该元素
4)、rpush——在key对应的list的尾部添加一个元素
5)、rpop——从key对应的list的尾部删除一个元素,并返回该元素
6)、lrem ——删除 count 删除多少个 value 删除的值 从顶部开始删除逐次删 返回删除的个数
7)、 llen 查看长度
4.Set的命令讲解以及使用场景剖析
1)、sadd——在key对应的set中添加一个元素
2)、smembers——获取key对应的set的所有元素
3)、spop——随机返回并删除key对应的set中的一个元素
4)、suion——求给定key对应的set并集
5)、sinter——求给定key对应的set交集
6)、差
5.set的基础增加顺序score,再根据score进行排序 实战:通过sortset实现排行榜
1)、zadd ——在key对应的zset中添加一个元素
2)、zrange——获取key对应的zset中指定范围的元素,-1表示获取所有元素
3)、zrem——删除key对应的zset中的一个元素
4)、zrangebyscore——返回有序集key中,指定分数范围的元素列表,排行榜中运用
5)、zrank——返回key对应的zset中指定member的排名。其中member按score值递增(从小到大);
6)、元素的总数
连接redis的客户端
进入到 ../redis/src/
1)set:设置key对应的值为String类型的value
2)get:获取key对应的值
批量获取多个key的值,如果可以不存在则返回nil
incr对key对应的值进行加加操作,并返回新的值;incrby加指定值
decr对key对应的值进行减减操作,并返回新的值;decrby减指定值
设置key对应的值为String类型的value,
如果key已经存在则返回 0
如果key不存在返回 1
设置key对应的值为String类型的value,并设定有效期
批量设置多个key的值,如果成功表示所有值都被设置,否则返回0表示没有任何值被设置
给指定key的value追加字符串,并返回新字符串的长度
课程回顾:
redis String命令的使用实战,记住1、3、5、6这几个重要命令
这里的K(String)可以有多个Map
存储多个map
得到多个value
相对于把一个对象的每个属性存储为String类型,将整个对象存储在Hash类型中会占用更少内存。
如用一个对象来存储用户信息,商品信息,订单信息等等。
2) hget——获取key对应的HashMap中的field的value
3) hgetall——获取key对应的HashMap中的所有field的value
4) hlen--返回key对应的HashMap中的field的数量
5)hdel 删除对应对象的属性
栈---先进后出
出栈
(从右-->左边推) 上面是从右<——左
首先复习一下set
排重的功能
set的基础增加顺序score,再根据score进行排序 实战:通过sortset实现排行榜
简介:SortSet的命令讲解以及使用场景剖析
排名以0为底,也就是说,score值最小的成员排名为0,排行榜中运用
zcount
set是通过hashmap存储,key对应set的元素,value是空对象
sortset是怎么存储并实现排序的呢,hashmap存储,还加了一层跳跃表
跳跃表:相当于双向链表,在其基础上添加前往比当前元素大的跳转链接