当前位置: 首页 > news >正文

Redis : set集合

set集合

集合就是把一些有关联的数据放到一起

集合内的元素不能重复

集合内的元素没有顺序

普通命令

sadd

将一个或者多个元素添加到集合中

注:这些元素是无序并且不重复的

如果是重复的元素则会返回空

smembers

获得set中的所有元素

sismember

判断一个元素是否在集合中

如果存在,则会返回1,否则返回0

srandmember

随机获取一个或者多个元素

scard

获得集合中元素的个数

spop

随机删除集合中的一个元素,count表示删除的个数

可以判断出两次删除的元素是不一样的,判断其是无序删除

smove

将元素从一个集合中取出放入另一个集合

srem

将指定的元素从集合中删除

可以一次性删除多个指定的元素

集合间的操作

进行这三种操作:交集,并集,差集

sinter

获得两个集合的交集

sinterstore

获得集合之间的交集,并保存到集合中

将交集保存到m3中

sunion

获得给定集合的并集

sunionstore

获得给定集合的并集,并且保存到集合中

sdiff

获得给定集合的差集

m1和m2的差集:在m1中存在,在m2中不存在

m2和m1的差集:在m2中存在,在m1中不存在

所以得到的结果是不一样的

sdiffstore

获得集合间的差集,并且保存到集合中

内部编码

intset整数集合

为了节省空间,特定优化的结构,当元素是整数的时候,并且元素的数量还不是特别多,使用的是intset

hashtable哈希表 

使用场景

1.使用set保存用户的标签

比如说:用户画像,根据用户的性格特征和喜好特点分析其喜好,然后投其所好

2.使用set确定用户的共同好友

QQ会推送一个共同的好友,让你来甄选添加

3使用set去统计UV

一个互联网产品,如何衡量用户量,其主要的指标就是PV和UV

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

UV:每个用户访问该服务器都会产生一个UV,但是同一个用户多次进行访问,不会使UV增加,UV需要按照用户去进行去重,这样的去重过程,就是UV来进行实现的。

希望能对大家有所帮助!!!

http://www.xdnf.cn/news/1000927.html

相关文章:

  • 使用 Visual Studio 2019 修改 WebRTC 源码
  • SpringCloud微服务:服务保护和分布式事务
  • Vosk API:开源离线语音识别的强大工具
  • 机器人坐标变换TF(ROS Transform)示例解释
  • VScode中如何创建项目分支
  • 代码随想录训练营第三十天 | 452. 用最少数量的箭引爆气球 435. 无重叠区间 763.划分字母区间
  • 【狂飙AGI】第3课:大模型时代前沿技术
  • BugKu Web渗透之MD5
  • 设计模式——责任链
  • 一种TFTransforme扩散模型时间序列预测模型, pytorch架构
  • 武汉科技大学人工智能与演化计算实验室许志伟课题组参加IEEE CEC 2025
  • elasticSearch是什么,如何使用,有什么用
  • 思科交换机-路由器-配置命令-详细总结
  • ⚽ 实时赛事数据怎么接?WebSocket vs REST 接口详解!
  • 多模态大语言模型arxiv论文略读(118)
  • 0612_正则表达式
  • 确认连接的是 Redis 主节点(master),使用 SLAVEOF NO ONE 切换
  • UE5 免费且好用的插件收集(不定期更新)
  • 社交机器人具身导航新范式!AutoSpatial:通过高效空间推理学习实现机器人视觉语言推理和社交导航
  • 告别无效买量!Data+AI赋能游戏增长
  • Qt中的OpenGL (4)[纹理]
  • 用Rust如何构建高性能爬虫
  • 紫光展锐完成优化升级,支持Android 16,以科技创新共赴智能体验新篇章
  • pytorch 之 nn 库与调试
  • 知识变现新范式:创客匠人如何重构中医行业商业逻辑
  • 从监测滞后到全域智控:河湖智慧化管理方案
  • PCB设计教程【大师篇】stm32开发板PCB模块化布局
  • Java八股文——MySQL「存储引擎篇」
  • Python+TensorFlow:30分钟快速入门AI开发
  • Lesson 27 A wet night