2022-12-10 Set类型

news2024/11/27 2:36:41

set类型

  • 新的存储需求,存储大量的数据,在查询方面提供更高的效率。

  • 需要的存储结构:能够保存大量的数据,高效的内部存储机制,便于查询。

  • set类型:与hash存储结构完全相同,仅存储键,不存储值(nil),并且值是不允许重复的

set 类型数据的基本操作

  • 添加数据

sadd key member1 [member2]

  • 获取全部数据

smembers key

  • 删除数据

srem key member1 [member2]

  • 获取集合数据总量

scard key

  • 判断集合中是否包含指定数据

sismember key member

set数据类型的扩展操作

业务场景

每位用户首次使用今日头条时会设置3项爱好的内容,但是后期为了增加用户的活跃度、兴趣点,必须让用户
对其他信息类别逐渐产生兴趣,增加客户留存度,如何实现?

业务分析

  • 系统分析出各个分类的最新或最热点信息条目并组织成set集合
  • 随机挑选其中部分信息
  • 配合用户关注信息分类中的热点信息组织成展示的全信息集合

解决方案

  • 随机获取集合中指定数量的数据

  • 随机获取集合中的某个数据并将该数据移出集合
    Tips 8:

  • redis 应用于随机推荐类信息检索,例如热点歌单推荐,热点新闻推荐,热卖旅游线路,应用APP推荐, 大V推荐等。

  • 求两个集合的交、并、差集
    sinter key1 [key2]
    sunion key1 [key2]
    sdiff key1 [key2]

  • 求两个集合的交、并、差集并存储到指定集合中
    sinterstore destination key1 [key2]
    sunionstore destination key1 [key2]
    sdiffstore destination key1 [key2]

  • 将指定数据从原始集合中移动到目标集合中
    smove source destination member

Tips 9

  • redis 应用于同类信息的关联搜索,二度关联搜索,深度关联搜索
  • 显示共同关注(一度)
  • 显示共同好友(一度)
  • 由用户A出发,获取到好友用户B的好友信息列表(一度)
  • 由用户A出发,获取到好友用户B的购物清单列表(二度)
  • 由用户A出发,获取到好友用户B的游戏充值列表(二度)

set类型数据操作的注意事项

  • set类型不允许数据重复,如果添加的数据在set中已经存在,将只暴露一份。
  • set虽然和hash的存储结构相同,但是无法启用hash中存储值的空间。

Tips10

  • redis应用于同类型数据的快速去重。

Tips

  • redis 应用于基于黑名单与白名单设定的服务控制。

sorted_set类型

  • 新的存储需求:数据排排序有利于数据的有效展示,需要提供一种可以根据自身特征进行排序的方式。
  • 需要的存储结构:新的存储模型,可以保存可排序的数据
  • Sorted_set类型:在set的存储结构基础上添加可排序字段。

sorted_set 类型数据的基本操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

sored_set 类型数据的扩展操作

在这里插入图片描述

sored_set 类型数据操作的注意事项

在这里插入图片描述

通用命令

key通用操作

key特征

key基本操作

在这里插入图片描述

key扩展操作(时效性控制)

在这里插入图片描述

  • 获取时间 -2获取不到 、-1获取到了没时间、正常的设计时间

在这里插入图片描述

key其他操作

在这里插入图片描述

数据库通用操作

db基本操作

在这里插入图片描述

db相关操作

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88722.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

考研证件照要求?如何制作考研用的证件照?

考研报报名网上确认环节,网上确认的时候需要准备电子照片。疫情阶段今天教给大家不需要出门就可以方便,快捷的制作合格的证件照,免去出门办理和审核不过的麻烦! 考研证件照要求: 1. 本人近三个月内正面、免冠、无妆、彩…

基于遗传算法优化的lssvm回归预测matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

华为云WeLink协作文档,助您开启职场高效办公

Word、PPT、Excel,是大家在日常工作中最常用的Office三件套,很多人都经历过,写一份Word或者PPT,从v1写到v10,不断接收、汇总、修改同事提供的素材,不断向领导或客户发送最新审核版本,最后可能还…

前端框架搭建(四)改造导入项目插件流程【vite】

1.改造为函数 默认模板创建的vite.config.ts文件是这样的 我们在上一节也提到过,这样将使得vite的一些配置十分杂乱,无法统一进行管理,因此我们可以将其函数化 export default defineConfig(configEnv > {const viteEnv loadEnv(config…

Python基础语法之注释、缩进、数字类型、一句多行和多行一句等的讲解及演示(超详细 附源码)

Python是实现了平台无关性的高级程序设计语言,它是在源代码程序与各平台的机器码之间插入了一个虚拟机,也就是说源代码程序不再直接翻译成机器码,而是先编译成虚拟机的字节码,再将字节码解释成各平台可执行的机器码。 Python源代…

传输层协议 —— TCP(图解2)

​ 目录 一、前言 二、重传机制 1. 超时重传 2. 快速重传 3. SACK 4. D-SACK 三、滑动窗口 1. 发送方的滑动窗口 2. 程序是如何表示发送方的四个部分 3. 接收方的滑动窗口 四、流量控制 五、拥塞控制 1. 慢启动 2. 拥塞避免 3. 拥塞发生 4. 快速恢复 六、TCP…

Moonbeam生态说|聊聊平行链Bifrost及其与Moonbeam集成最新动态

「Moonbeam生态说」是Moonbeam中文爱好者社区联合Moonbeam中文高级大使组织的社区AMA活动。 该活动为已部署Moonriver或Moonbeam的项目方提供了在主流Moonbeam非官方中文社区内介绍自己的项目信息,包括:项目介绍、团队介绍、技术优势等,帮助社…

[附源码]Node.js计算机毕业设计高校本科毕业及资料存档管理系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

基于Android的迷你桌球游戏设计与实现

目录 摘要11 关键词11 绪论11 1 游戏开发概述22 1.1 背景22 1.2 课题来源33 1.3 国内外研究现状33 1.4 Android应用程序构成44 1.4.1 应用程序55 1.4.2 应用程序框架55 1.4.3 库与运行环境55 1.4.4 内核55 2 游戏开发平台搭建55 2.1 SDK的下载与安装55 2.2 Ecli…

Chrome 解决 主页被qsearch 拦截

原文地址:谷歌浏览器被劫持如何解决(附完美攻略) - 知乎 今天,发现Chrome浏览器主页被修改了,尝试使用设置里主页,外观设置,都没有效果。改好了,但只要一刷新,主页又恢复…

短链是什么原理?怎么实现呢?

目录一、为什么需要短链二、短链跳转访问原理三、短链生成实现方案1、自增序列算法2、Hash算法四、代码示例1、表结构及索引2、外部依赖3、Base62Utils4、DAO层5、业务层五、测试用例一、为什么需要短链 内容营销中给用户推送营销消息最常见的方式就是发短信,比如三…

Hadoop的MapReduce基本流程体验

目录 MapReduce 编程规范 Mapper阶段 Reducer阶段 Driver阶段 常用数据序列化类型 案例实施 WordCountMapper类 WordCountReducer类 WordCountDriverr 驱动类 HDFS测试 MapReduce 编程规范 用户编写的程序分成三个部分:Mapper、Reducer 和 Driver。 Mappe…

使用粒子效果动画组成模型[自定义shader实现]

文章目录优点实现思路传递给Shader的数据根据模型数据生成数据传递给Shader自定义shader 连接cpu与gpu顶点着色器 计算位置片元着色器优点 性能卓越 上一篇使用的更改坐标实现 9万个点 页面非常卡顿 光是计算9万个点坐标更替的js就已经造成了堵塞 尝试了在顶点着色器中实现动画…

大数据Kudu(五):Kudu基于Cloudera Manager安装及配置

文章目录 Kudu基于Cloudera Manager安装及配置 一、启动CM集群 二、登录ClouderaManager平台安装Kudu

TCO-PEG-RGD 反式环辛烯聚乙二醇线肽RGD

反式环辛烯(TCO)作为亲双烯体与S-四嗪(Tetrazine)在生理条件下的反应有无需催化剂、反应速率快的优点,被广泛应用于生物和材料科学的研究中。 产品名称 TCO-PEG-RGD 反式环辛烯聚乙二醇线肽RGD 中文名称 线肽-聚乙二醇-反式环辛烯 英文名称 TCO-PEG-RGD 分…

“引进来,走出去”,锦江国际集团多重创新力引领绿色新发展

2022年12月13日,由南方财经全媒体集团指导,21世纪经济报道主办的“21世纪住宿业高峰论坛(2022)暨2022(第十九届)【金枕头】酒店大赏发布典礼”在上海如期举行。锦江国际集团副总裁周维应邀出席并发表“创新…

【开源项目】SFUD--通用串口Flash驱动库的移植和使用

1.简介 SFUD 是一款开源的串行 SPI Flash 通用驱动库。由于现有市面的串行 Flash 种类居多,各个 Flash 的规格及命令存在差异, SFUD 就是为了解决这些 Flash 的差异现状而设计,让我们的产品能够支持不同品牌及规格的 Flash,提高了…

JeecgBoot部署(Nginx+Tomcat)

环境搭建JeecgBoot搭建、Linux安装Nginx、Linux安装JDK8、Linux安装MySql8、Linux安装Redis、Linux安装Tomcat9前端打包 1.进入目录:cd D:\win11\git_data\jeecg_3.4.4\jeecgboot-vue32.安装依赖:pnpm install-->node_modules3.打包编译:p…

矩阵树定理

用途 矩阵树一般用于生成树计数的问题,比如求一个无向图中生成树的个数。用矩阵树定理能极大地降低时间复杂度。 前置知识:行列式 此部分可粗略浏览,了解即可。 对于一个一阶行列式,可写作 det(a1,1)a1,1det \left( \begin{ma…

[附源码]Node.js计算机毕业设计房车营地在线管理系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…