Redis的五种基本数据类型与三种特殊数据类型

本文主要从使用与场景两方面来介绍Redis的五种基本数据类型与三种特殊数据类型,这些数据类型的使用看着很简单,但还是要敲一遍才能更好的了解。文末附带这八种数据类型的思维导图。

String

String是Redis最基本的数据结构,他采用K-V的形式来存储数据,当然了,虽然是String,但是他的value也可以为int、float形式,也可以存储json、图片等,但是不能超过521MB。

使用场景:
1、做缓存。
2、计数,比如粉丝数、文章阅读量
3、分布式session。

在这里插入图片描述

在这里插入图片描述

Hash

键值对形式的存储结构,可以使用hash来存储个人信息,比String更加直观清楚。

在这里插入图片描述

List

与我们使用的list一样,他就是一个存储数据的队列,他可以存储多个有序的字符串,可以实现消息队列、栈、公众号的文章列表。

在这里插入图片描述

Set

set与list大致类似,但是set是不允许有重复的元素。set有并集、交集等操作,可以使用交集来找到共同好友、关注人等。

set也提供随机返回一个集合中的元素,可以使用这个性质来完成抽奖功能。

在这里插入图片描述

ZSet

zset与set类似,但是他里面的元素是有序的,每个元素会设置一个score,根据这个score来进行排序。比如可以实现排行榜的功能。

在这里插入图片描述

Geospatial

地理位置。通过经纬度可以计算得到两地之间的距离。也可以计算在某个位置的指定距离中有多少元素,比如附近的人的功能。

在这里插入图片描述

Hyperloglog

基数,不可重复的元素。比如一个用户多次访问一个网站,会保存多个用户id,使用Hyperloglog可以将这些重复的用户id看作一个人,减少重复。

在这里插入图片描述

bitmap

bitmap:位图。可以将key放在位图的指定位置,也就是offset,然后指定他的值,在位图中,值只能为0或者1。使用位图可以方便地进行统计数量、获取指定时间内地活跃用户。

在这里插入图片描述

上面的所有内容已转换为思维导图放到github上:
https://github.com/PonnyDong/Mind/tree/master/src/redis
格式为PDF。


版权声明:本文为weixin_44298615原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。