首页 > 编程知识 正文

redis五种数据类型的应用场景,redis六种数据类型

时间:2023-05-03 18:22:12 阅读:33446 作者:3353

Redis支持五种类型的数据类型:字符串、散列、列表、集、集、已解决集。

String(字符串)

string是redis最基本的类型,可以理解为与Memcached一模一样的类型。 一个密钥对应于一个值。

字符串类型是二进制安全。 表示redis的字符串可以包含任何数据。 例如jpg图像或序列化的对象。

string类型是Redis最基本的数据类型,string类型的值最多可包含512MB。

常用命令: set、get、decr、incr、mget等。

注意:一个密钥最多可以包含512MB。

Hash(哈希)

Redis hash是键值(key=value )的成对集合; 是字符串类型的字段和值映射表,hash特别适合存储对象。

每个混列可以包含232 -1密钥和值对(40亿或更高)。

常用命令: hget、hset、hgetall等。

应用场景:存储用户昵称、年龄、性别、积分等结构化数据,存储用户信息对象数据。

List(列表)

Redis列表是一个简单的字符串列表,按插入顺序排序。 可以在列表的开头(左)或末尾(右)添加元素。

list类型经常用于消息队列服务以完成多个程序之间的消息交换。

常用命令: lpush、rpush、lpop、rpop、lrange等。

列表最多可以包含232 - 1个元素(4294967295,每个列表可以包含40亿多个元素)。

Set(集合)

Redis的Set是string型的无序集合。 与列表一样,它在插入和删除元素并确定元素是否存在时很有效率。 集合的最大优点是可以进行交叉和差集操作。 Set可以包含的最大元素数为4294967295。

因为集合是通过哈希表实现的,所以添加、删除和检索的复杂性都是O(1)。

应用场景:

1、利用交集寻求共同的朋友。

2、利用唯一性,可以统计访问网站的所有独立IP。

3、朋友推荐时根据tag求交集,可以推荐大于阈值的。

常用命令: sadd、spop、smembers、sunion等。

集合中的最大成员数为232-1(4294967295 ),每个集合可包含超过40亿个成员。

zset(sorted set:有序集合)

Redis zset与set类似,是字符串类型元素的集合,不允许重复成员。

不同的是,每个元素都有一个双精度分数相关联。 redis是根据分数对集合中的成员进行从小到大的排序。

zset的唯一成员,但可以重复“分数”(score )。

sorted set是插入顺序,也就是自动排序。

常用命令: zadd、zrange、zrem、zcard等。

如果mhddy需要规则且不重复的集合列表,则可以选择sorted set数据结构。

应用示例:

)1)例如存储全班同学的成绩,其集合value可以是同学的学号,score可以是成绩。

)2)根据排名APP、得分列出topN用户等。

以上内容希望帮助到大家,许多PHPer在高度化时总是面临一些问题和瓶颈。 业务代码写得太多没有方向性,不知道应该从中提高。 对此,我们整理了分布式体系结构、高可扩展性、高性能、高并发性、服务器性能优化、TP6、laravel等资料,但不限于此很多知识点高级干货需要的东西,比如Nginx,可以免费分享到,需要的可以加入我的官方群里。 请点击这里。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。