【Redis】数据类型

Redis数据类型(5 + 3 + 1)

在这里插入图片描述

五种基本数据类型

String字符串
特点
  • 二进制安全,可以包含任何数据,如数字,字符串,jpg图片或者序列化的对象
应用场景
  • 缓存: redis作为缓存层,mysql做持久化层,降低mysql的读写压力

  • 计数器:redis是单线程模型,一个命令执行完才会执行下一个,同时数据可以一步落地到其他的数据源

  • session:常见方案spring session + redis实现session共享

List列表
特点
  • 底层实现为双端链表
应用场景
  • 时间轴

  • 消息队列

Hash哈希
特点
  • 存储k-v,适合存储关系型数据库的一条记录(一个对象)
应用场景
  • 缓存: 更直观,相比string更节省空间的维护缓存信息,如用户信息,视频信息等
Set集合
特点
  • 不能出现重复的数据

  • 添加,删除,查找的复杂度都是 O(1)

应用场景
  • 标签:给用户添加标签,或者用户给消息添加标签,有同一标签或者类似标签的可以给推荐关注的事或者关注的人
  • 点赞,或点踩,收藏等,可以放到set中实现
ZSet有序集合
特点
  • 每个元素都会关联一个 double 类型的分数。redis 通过分数来为集合中的成员进行从小到大的排序
应用场景
  • 排行榜:有序集合经典使用场景。例如小说视频等网站需要对用户上传的小说视频做排行榜,榜单可以按照用户关注数,更新时间,字数等打分,做排行。
  • 其他排名

三种特殊数据类型

HyperLogLogs基数统计
特点
  • 节省空间
  • 有一定误差(0.81% 标准错误的近似值)
应用场景
  • 统计各种计数,比如注册 IP 数、每日访问 IP 数、页面实时UV、在线用户数,共同好友数等
BitMaps位图
特点
  • 操作二进制位来进行记录,只有 0 和 1 两个状态
  • 节省空间
应用场景
  • 统计用户信息,活跃,不活跃! 登录,未登录! 打卡,不打卡! 两个状态的,都可以使用 Bitmaps
geospatial地理位置
特点
  • 两极无法直接添加
  • 有效的经度从-180度到180度
  • 有效的纬度从-85.05112878度到85.05112878度
应用场景
  • 附近的人
  • 两地之间的距离

Stream

特点
  • 可持久化、分组消费
  • 客户端可以平滑扩展,提高处理能力
应用场景
  • 消息队列

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

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

相关文章

【ORACLE战报】2024.4月最新OCP考试喜报.

课程介绍 DBA数据库管理必备认证:ORACLE OCP 19C 教材下载 ORACLE OCP 19C 官方电子教材 ORACLE OCP 12C官方电子教材 题库下载 ORACLE 19C题库 (083384题、082362题)-2024答案修正版.rar 所有的收获都是默默耕耘的成果 2024.4月【最新考试成…

Chromium 调试指南2024 Windows11篇-条件断点、函数断点(十一)

1. 前言 在调试过程中,步进代码和条件断点/函数断点是非常有用的工具和技术,它们可以帮助开发者更加精确地定位和解决问题。本文将介绍步进代码的常用工具以及条件断点/函数断点的设置方法,帮助开发者更加高效地进行调试工作。 2. 步进代码…

ControlNet原理解析

前排提示照片已经获得小姐姐许可。 光知道ControlNet好用,不想知道它背后的原理么?今天就看一看这篇论文,带大家了解一下ControlNet是如何炼成的。 ControlNet是干嘛的 我们知道现在文本到图像生成很火爆,你只需要输入文字就可以…

内存函数:memcpy(拷贝),memmove(拷贝),memcmp(比较),memset(设置)

内存函数 一.memcpy(内存拷贝1)1.函数使用2.模拟实现 二.memmove(内存拷贝2)1.函数使用2.模拟实现 三.memcmp(内存比较)1.函数使用2.模拟实现 四.memset(内存设置)1.函数使用2.模拟实…

【Linux】用户组、用户、文件权限(ugo权限),权限掩码,chmod,chown,suid,sgid,sticky,su,sudo

用户组 注意:普通用户只能查看有哪些组,不能创建/修改/删除,会提示:用户名 is not in the sudoers file.This incident will be reported. groupadd 用户组名新建用户组cat /etc/group查看有哪些组(普通用户可以操作…

Windows下配置TortoiseGit 访问Ubuntu虚拟机下Samba共享目录

前言: 本文记录学习使用 Git 版本管理工具的学习笔记,通过阅读参考链接中的博文和实际操作,快速的上手使用 Git 工具。 本文参考了引用链接博文里的内容。 引用: 【TortoiseGit】TortoiseGit安装和配置详细说明-CSDN博客 Git版本管理可视…

Java——对象的打印

当我们运行如下代码: public class Person {String name;String gender;int age;public Person(String name,String gender,int age){this.name name;this.gender gender;this.age age;}public static void main(String[] args){Person person new Person(&quo…

Matlab读取数据文件

MATLAB可以读取很多类型的数据文件,包括文本文件、Excel文件、MAT文件等。以下是一些常见的数据读取函数: 文本文件: load 函数:用于读取MATLAB的二进制文件(.mat文件)。fscanf 函数:用于读取AS…

QT客户端开发的注意事项

QT客户端开发是一个涉及图形用户界面(GUI)设计、网络编程、数据库交互等多个方面的复杂过程。以下是在进行QT客户端开发时应注意的一些关键事项,通过关注这些事项,可以提高QT客户端应用的质量和开发效率。北京木奇移动技术有限公司…

Eclipse下载安装教程(包含JDK安装)【保姆级教学】【2024.4已更新】

目录 文章最后附下载链接 第一步:下载Eclipse,并安装 第二步:下载JDK,并安装 第三步:Java运行环境配置 安装Eclipse必须同时安装JDK !!! 文章最后附下载链接 第一步&#xf…

微软推出的Microsoft Fabric 到底是什么?

近期,总有客户问小编,微软推出的 Microsoft Fabric 是什么?这个产品有什么特别之处呢?希望下面这篇文章能为大家解开一些疑惑。 微软Fabric是2023年5月推出的一个数据分析平台,它将关键数据管理和分析工作负载整合到一…

go语言控制goroutine协程退出的2种方法总结

我们知道,在go语言中,goroutine的执行会随着main线程的退出而终结, 即如果main线程退出,则所有的goroutine都会被强制退出,不管你是否已经执行完毕。 如果我们希望main进程等待所有的goroutine执行完毕后再退出&#…

【设计模式】JAVA Design Patterns——Acyclic Visitor(非循环访问者模式)

🔍目的 允许将新功能添加到现有的类层次结构中,而不会影响这些层次结构,也不会有四人帮访客模式中那样循环依赖的问题。 🔍解释 真实世界例子 我们有一个调制解调器类的层次结构。 需要使用基于过滤条件的外部算法(是…

奖金+1 万,OpenTenBase 开源核心贡献挑战赛,KB 专家助力其跑在 K8s 上

OpenTenBase 是由开放原子开源基金会孵化及运营的开源项目,是一款开放中立的企业级分布式 HTAP 开源数据库。OpenTenBase 具备高扩展性、商业数据库语法兼容、分布式 HTAP 引擎、多级容灾和多维度资源隔离等能力,已成功应用于金融、医疗、航天等行业的核…

FlyFlow:支持驳回后自动跨节点跳回

本周更新 新增:审批节点驳回(拒绝配置的驳回)支持自动跳回当前节点新增:修改数据节点新增:删除数据节点新增:子流程支持配置自动跳过发起人节点优化:两个项目合并一个单体项目优化:…

Hadoop阶段性技能抽检题,无直接答案但有提示信息

项目名:Hadoop平台及组件的部署管理 考核内容: 考核以大数据技术为核心内容,重点考查同学们基于Hadoop平台环境下,利用Hadoop技术生态组件,综合软件开发相关技术,解决实际问题的能力,所有学生在…

LeetCode hot100-38-Y

226. 翻转二叉树给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。这道题莫名其妙做出来了,看评论好多人都是莫名其妙做出来的。就是连续做了几道题有感觉了。很难解释。 我的做法 后序递归 class Solution {public TreeNode i…

LeetCode:2589.完成所有任务的最少时间(贪心 Java)

目录 完成所有任务的最少时间 题目描述: 实现代码与解析: 贪心 原理思路: 完成所有任务的最少时间 题目描述: 你有一台电脑,它可以 同时 运行无数个任务。给你一个二维整数数组 tasks ,其中 tasks[i] …

Linux 系统下进程异常的处理方式

Linux 系统异常进程处理 一、僵尸进程 说明:僵尸进程对系统来说就是系统已经接管不了并处于异常状态的进程,既不会自动释放,也不能被系统接管,下面列出几种查看并kill僵尸进程的方式 。 方式一、使用如下命令查看目前系统状态为…

【C语言】水仙花数

问题 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数或阿姆斯壮数数(Armstrong number)。 它是指一个n位数(n≥3)…