目录

简单复习一下

一、String

简介

常用个性命令

常见业务场景

1.秒杀商品的扣库存

2.热点微博点赞数量

二、Hash

简介

常用个性命令

常见业务场景

1.热点明星资料

2.双十一上架的商品属性

三、List

简介

常用个性命令

常见业务场景

1.热点明星的粉丝列表

四、Set

简介

常用个性命令

常见业务场景

1、微信抽奖小程序

2、微博共同关注/共同好友

五、zset / sorted set

简介

常用个性命令

常见业务场景

1.微博热搜榜单


该文章适合有一定redis 基础的同学

简单复习一下

其实redis是有八种类型的,分为:

五大数据类型:String,List,Set,Hash,Zset

三大特殊数据类型:

1、geospatial(地理位置),

2、HyperLogLog(用来做基数统计的算法),

3、bitmaps(存储0和1)

因为主要考的是五大类型所以三大特殊类型就一笔带过来。

一、String

简介

String数据结构是简单的key-value类型,value其实不仅可以是String,也可以是数字。

常用个性命令

append  key   "xxx"

在该key对应的value值追加上xxx

incr key

该key对应的value自增1

incrby key  xx

该key对应的value增加xx

decr key

该key对应的value自减1'

decrby key  xx:

该key对应的value自减xx

。。。

。。

常见业务场景

1.秒杀商品的扣库存

2.热点微博点赞数量

。。。。

redis类似 redis8种_学习

二、Hash

简介

这里value存放的是结构化的对象,比较方便的就是操作其中的某个字段。想象一下java的map就懂了。

常用个性命令

HMSET key field1 value1 [field2 value2 ]

同时将多个 field-value (域-值)对设置到哈希表 key 中

HSET key field value

 将哈希表 key 中的字段 field 的值设为 value

HSETNX key field value

只有在字段 field 不存在时,设置哈希表字段的值。

HKEYS key

获取所有哈希表中的字段


HVALS key

获取哈希表中所有值。

HGETALL key

获取在哈希表中指定 key 的所有字段和值

。。。

。。。

常见业务场景

1.热点明星资料

2.双十一上架的商品属性

redis类似 redis8种_字段_02

三、List

简介

 1、它是一个字符串链表,left,right 都可以插入添加

 2、如果键不存在,创建新的链表 如果键已存在,新增内容

 3、如果值全移除,对应的键也就消失了

 4、链表的操作无论是头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡了。

常用个性命令

lpush key

xx:将xx插入到集合头部

rpush key

将xx插入到集合尾部

lpop key

移除该集合的左值

rpop key

移除该集合的右值

LRANGE key start stop

类似分页查询

LPUSH key value [value …]

向列表左边添加元素

RPUSH key value [value …]

向列表右边添加元素

。。。

。。。

常见业务场景

1.热点明星的粉丝列表

redis类似 redis8种_redis类似_03

四、Set

简介

set是一个元素不重复的集合

常用个性命令

SRANDMEMBER key [个数]

从集合中随机弹出指定个元素,元素不删除

SPOP key[个数]

从集合中随机弹出指定个元素,出一个删一个

SCARD key

获取集合中的元素个数

SADD key value

添加元素

SREM key value

删除元素

SDIFF key [key …]

集合的差集运算A - B

SINTER key [key …]

集合的交集运算A ∩ B

SUNION key [key …]

集合的并集运算A U B

。。。

。。。

1

常见业务场景

1、微信抽奖小程序

用户ID,立即参与按钮 :SADD key 用户ID

显示已经有多少人参与了:SCARD key
抽奖(从set中任意选取N个中奖人):
    SRANDMEMBER key 2(随机抽奖2个人,元素不删除)
    SPOP key 3(随机抽奖3个人,元素会删除)
 

2、微博共同关注/共同好友

redis类似 redis8种_学习_04

五、zset / sorted set

简介

zset / sorted set多了一个权重参数score,集合中的元素能够按score进行排列。

常用个性命令

ZADD key score member [score member …]

添加元素

ZRANK key member

按照元素分数从小到大的顺序返回

ZRANGE key start stop [WITHSCORES]

ZREVRANK key member

按照元素分数从大到小的顺序返回

ZREVRANGEBYSCORE key max min [WITHSCORES]

返回有序集中指定分数区间内的成员,分数从高到低排序

。。。

。。。

常见业务场景

1.微博热搜榜单

redis类似 redis8种_redis_05