redis-学习笔记(set)

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: redis-学习笔记(set)

Set 集合是有序的, 这里的有序是指元素具有唯一性( 不可重复), 因此 [1,2,3] 和 [1,3,2] 是一样的集合

其实现的几个底层逻辑: intset (整数集合), hashtable (哈希表)

sadd key member [member ...]

往集合中添加元素


smembers key

获取集合中的所有值


sismember key member

判断当前元素是否在集合中


scard key

查看集合的元素个数


spop key [count]

随机删除 count 个 key (官方承诺, 随机删!!!)


smove key1 key2 member

从 key1 中剪切元素, 粘贴到 key2 中

返回值为 0 , 移动失败(source 中不存在该值)

返回值为 1 , 移动成功


sinter key [key ...]

求 几个集合 的交集, 返回值是 最终交集的数据


sinterstore destination key [key ...]

求几个集合的交集, 并将结果放到 destination 这个集合中去, 返回值是交集的元素个数


sunion key [key ...]

返回的是几个集合交集的结果数据


sunionstore destination key [key ...]

同上


sdiff key [key ...]

返回值是几个集差集的结果数据


sdiffstore destination key [key ...]

同上


Set 的应用场景

  1. 使用 Set 来保存用户的 “标签” : 用户画像
  2. 使用 Set 来计算共同好友 : 基于集合求"交集"
  3. 使用 Set 统计 UV : 基于 “去重”

PV : page view 用户每次访问服务器, 都会产生一个 PV

UV : user view 每个用户访问服务器, 都会产生一个 UV, 但是一个用户多次访问服务器, 不会产生多个 UV

目录
相关文章
|
存储 NoSQL 关系型数据库
Redis 集合(Set)
10月更文挑战第17天
236 5
|
存储 缓存 NoSQL
Redis中的常用命令-get&set&keys&exists&expire&ttl&type的详细解析
总的来说,这些Redis命令提供了处理存储在内存中的键值对的便捷方式。通过理解和运用它们,你可以更有效地在Redis中操作数据,使其更好地服务于你的应用。
621 17
|
存储 JSON NoSQL
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
这篇文章是关于Redis基本数据结构的学习笔记,包括了String、Hash、Set、List和SortedSet的介绍和常用命令。文章解释了每种数据结构的特点和使用场景,并通过命令示例演示了如何在Redis中操作这些数据结构。此外,还提供了一些练习示例,帮助读者更好地理解和应用这些数据结构。
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
|
存储 NoSQL PHP
如何用Redis高效实现点赞功能?用Set?还是Bitmap?
在众多软件应用中,点赞功能几乎成为标配。本文从实际需求出发,探讨如何利用 Redis 的 `Set` 和 `Bitmap` 数据结构设计高效点赞系统,分析其优缺点,并提供 PHP 实现示例。通过对比两种方案,帮助开发者选择最适合的存储方式。
642 3
|
存储 NoSQL 关系型数据库
Redis 有序集合(sorted set)
10月更文挑战第17天
354 4
|
存储 分布式计算 NoSQL
大数据-40 Redis 类型集合 string list set sorted hash 指令列表 执行结果 附截图
大数据-40 Redis 类型集合 string list set sorted hash 指令列表 执行结果 附截图
261 3
|
存储 NoSQL Redis
6)深度解密 Redis 的集合(Set)
6)深度解密 Redis 的集合(Set)
352 1
|
缓存 NoSQL Redis
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
347 0
|
SQL 缓存 NoSQL
【Azure Redis 缓存】使用Azure Redis服务时候,如突然遇见异常,遇见命令Timeout performing SET xxxxxx等情况,如何第一时间查看是否有Failover存在呢?
【Azure Redis 缓存】使用Azure Redis服务时候,如突然遇见异常,遇见命令Timeout performing SET xxxxxx等情况,如何第一时间查看是否有Failover存在呢?
256 0
|
存储 消息中间件 NoSQL