Redis学习笔记(六)Redis数据存储类型之set

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis学习笔记(六)Redis数据存储类型之set

Set


基本操作


(1)添加数据 sadd key member1 member2…


(2)获取全部数据 smembers key


(3)删除数据


srem key member1 member2…


(4) 获取集合数据总量scard key


(5)判断集合中是否包含指定数据 sismember key member


(6)获取全部数据 smembers key


(7) 求两个集合的交,并,差集 sinter key1 key2


sunion key1 key2


sdiff key1 kry2


(8)求两个集合的交,并,差集并存储到指定集合中


sinterstore destionation key1 key2


sunionstore destionation key1 key2


sdiffstore destionation kry1 key2


(9)把指定数据从原始集合中移动到目标集合中 smove source destionation member


应用场景实例:


1.随机推送内容,增加用户留存度


将用户已经很感兴趣的方面抽走,之后推送用户未曾关注方面的热点信息,大体结构如下:


sadd news n1


sadd news n2


sadd news n3


sadd news n4


spop news 2


srandmember news 2


2.一个用户有多个角色,每个角色又有多种权限,查询某用户的所有权限,判断该用户是否享有该权限。


大体结构如下:


//添加角色权限信息


sadd rid:001 insert


sadd rid:001 update


sadd rid:002 getall


sadd rid:002 insert


sadd rid:002 delete


//将某用户的所有角色操作进行合并


sunionstore user:001 rid:001 rid:002


//查看某用户是否具有该项操作权限


smembers user:001


sismember user:001 insert


3.记录网站的访问量PV,独立访问UV,独立IP


PV:网站被访问次数,可通过刷新页面提高


UV:网站被不同用户访问,课通过cookie统计访问量,相同用户切换IP地址不变


IP:网站被不同IP地址访问的总次数,可通过IP地址统计访问量,相同IP不同用户访问,IP不变


PV可以直接通过String的incr进行实现


UV大体结构如下:


sadd cookie 4444


sadd cookie 4445


sadd cookie 4446


scard cookie


IP大体结构如下:


sadd ips 1.2.3.4


sadd ips 2.3.3.4


sadd ips 2.36.58.1


scard ips


相关文章
|
1月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
332 5
|
2月前
|
存储 消息中间件 缓存
Redis 简介:打造快速数据存储的利器
Redis 是一款开源的内存数据结构服务器,支持字符串、哈希、列表等多种数据结构,具备高性能、持久化、高可用及分布式特性,适用于缓存、会话管理、实时统计等场景。
|
6月前
|
存储 缓存 NoSQL
Redis中的常用命令-get&set&keys&exists&expire&ttl&type的详细解析
总的来说,这些Redis命令提供了处理存储在内存中的键值对的便捷方式。通过理解和运用它们,你可以更有效地在Redis中操作数据,使其更好地服务于你的应用。
453 17
|
存储 NoSQL 关系型数据库
Redis 集合(Set)
10月更文挑战第17天
132 5
|
存储 NoSQL PHP
如何用Redis高效实现点赞功能?用Set?还是Bitmap?
在众多软件应用中,点赞功能几乎成为标配。本文从实际需求出发,探讨如何利用 Redis 的 `Set` 和 `Bitmap` 数据结构设计高效点赞系统,分析其优缺点,并提供 PHP 实现示例。通过对比两种方案,帮助开发者选择最适合的存储方式。
360 3
|
存储 消息中间件 NoSQL
Redis数据结构:List类型全面解析
Redis数据结构——List类型全面解析:存储多个有序的字符串,列表中每个字符串成为元素 Eelement,最多可以存储 2^32-1 个元素。可对列表两端插入(push)和弹出(pop)、获取指定范围的元素列表等,常见命令。 底层数据结构:3.2版本之前,底层采用**压缩链表ZipList**和**双向链表LinkedList**;3.2版本之后,底层数据结构为**快速链表QuickList** 列表是一种比较灵活的数据结构,可以充当栈、队列、阻塞队列,在实际开发中有很多应用场景。
|
存储 NoSQL PHP
PHP与Redis结合使用,提升数据存储性能
随着互联网应用的发展,PHP与Redis的结合成为提升数据存储性能的重要手段。PHP作为流行的服务器端语言,常用于网站开发;Redis作为高性能内存数据库,以其快速读写能力,有效优化数据访问速度,减轻数据库压力。两者结合通过缓存机制显著提升应用响应速度,支持高并发场景下的稳定性和可扩展性。
|
存储 NoSQL 关系型数据库
Redis 有序集合(sorted set)
10月更文挑战第17天
271 4
|
消息中间件 存储 监控
redis 的List类型 实现 排行榜
【10月更文挑战第8天】
193 2
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
1380 3
下一篇
oss云网关配置