redis五种数据类型介绍

news2024/9/25 13:23:30

da0c061278e345fda9ac7fcda0a24b34.jpg、string(字符串)

 

 

它师最基本的类型,可以理解为Memcached一模一样的类型,一个key对应一个value。

 

注意:一个键最大能存储 512MB。

 

特性:可以包含任何数据,比如jpg图片或者序列化的对象,一个键最大能存储512M

 

2、Hash(哈希)

 

Redis hash 是一个键值(key=>value)对集合。

 

Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。

 

注意:每个 hash 可以存储 232 -1 键值对(40多亿)。

 

特性:适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回去)

 

3、list(列表)

 

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。

 

注意:列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。

 

特性:增删快,提供了操作某一段元素的API

 

4、set(集合)

 

Redis 的 Set 是 string 类型的无序集合。

 

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。

 

注意:以上实例中 rabbitmq 添加了两次,但根据集合内元素的唯一性,第二次插入的元素将被忽略。

 

集合中最大的成员数为 232 - 1(4294967295, 每个集合可存储40多亿个成员)。

 

特性:

 

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

 

2、为集合提供了求交集、并集、差集等操作

 

5、sorted set:有序集合

 

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。

 

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

 

zset的成员是唯一的,但分数(score)却可以重复

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

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

相关文章

【动态规划算法】-回文串问题题型(34-40题)

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …

动态规划笔记(一)

动态规划(Dynamic Programming,DP)是求解决策过程最优化的过程,通过把原问题分解为相对简单的子问题的方式求解复杂问题,在数学、管理科学、计算机科学、经济学和生物信息学等领域被广泛使用。 它的基本思想非常简单&…

SpringBoot整合Caffeine

一、Caffeine介绍 1、缓存介绍 缓存(Cache)在代码世界中无处不在。从底层的CPU多级缓存,到客户端的页面缓存,处处都存在着缓存的身影。缓存从本质上来说,是一种空间换时间的手段,通过对数据进行一定的空间安排,使得下…

java:解决报错非法字符: ‘\ufeff‘以及什么是BOM

背景 运行 JAVA 项目后,报错提示:非法字符: \ufeff,如图: 但是我在这个报错的文件中并没有搜到这个字符,那到底是什么原因 什么是BOM BOM(Byte Order Mark),隐藏字符&#xff0c…

5、二叉树

二叉树遍历 递归序 public static void f(Node head) {if (head == null) {return;}f(head.left);f(head.right); }前中后遍历_递归 public static void preOrderRecur(Node head) {if (head == null) {return;}System.out.print(head.value + " ");preOrderRecur…

智慧防汛,数字科技的力量

随着夏日的脚步临近,台风季节即将降临。对于那些居住在沿海地区的人们来说,台风是一种常见的自然灾害,其带来的风雨可能对生命和财产造成严重威胁。然而,随着数字科技的飞速发展,可视化技术为防汛抗台工作带来了全新的…

6个非常实用的漫画素材网站,设计师必看

对于漫画设计师来说,漫画素材网站是必不可少的,今天本文将与大家分享6个好用的漫画素材网站,帮助设计师实现优质创作,一起来看看吧! 1、即时设计 即时设计是更适合国内设计师使用的图像设计工具,在它的【…

if语句实现成绩等级判断

if语句实现成绩等级判断 案例分析代码实现小结Time 案例分析 使用键盘输入一个成绩,然后通过if判断语句实现成绩等级的判断 代码实现 import java.util.Scanner;public class DetermineDemo {public static void main(String[] args) {Scanner scanner new Scanne…

在线五子棋对战

目录 数据管理模块(数据库设计) 前端界面模块 业务处理模块 会话管理模块网络通信模块(session,cookie) 在线管理模块 房间管理模块 用户匹配模块 项目扩展 数据管理模块(数据库设计) 数据库中有可能存在很多张表&#xf…

SystemC的调度器

文章目录 前言调度器初始化evaluatewait updatenotify delta notificationtime notification仿真结束 前言 SystemC是基于C的库,主要用来对 IC 进行功能建模和性能建模。有时也被用来当做 RTL (register transfer level) 级的升级版 HLS(High Level synthesis) 直接…

Hadoop-HDFS的Namenode及Datanode(参考Hadoop官网)

HDFS有什么特点,被设计做什么 Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。有一下几个特点: HDFS是一个高度容错性的系统,具有高容错、高可靠性、高扩展性的特点,适合部…

【卡尔曼滤波】用Python实现卡尔曼滤波效果,Python

文章目录 纯python基于pykalman 库 纯python 以下是一个简单的Python示例,演示了如何使用NumPy库实现一个一维卡尔曼滤波器。 import numpy as np import matplotlib.pyplot as pltdef kalman_filter(initial_state, initial_estimate_error, process_variance, me…

机器学习笔记 - 使用 YOLOv5、O​​penCV、Python 和 C++ 检测物体

一、YOLO v5简述 YOLO v5虽然已经不是最先进的对象检测器,但是YOLOv5 使用了一个简单的卷积神经网络 CNN架构(相对YOLO v8来讲,不过v8精度是更高了一些),更易理解。这里主要介绍如何轻松使用 YOLO v5来识别图像中的对象。将使用 OpenCV、Python 和 C++ 来加载和调用我们的…

Cadence 小技巧系列(持续更新)

■ ADE setup simulator/directory/host 更改仿真路径,默认home路径空间太小了,改成当前路径就行。 瞬态tran仿真要用APS跑(setup--high...) 瞬态tran仿真精度设置,conservation,option--maxstep设为0.1n…

Android 13(T) - Media框架(2)- libmedia

这一节学习有两个目标: 1 熟悉Android Media API的源码路径与调用层次 2 从MediaPlayer的创建与销毁了解与native的串接 1、源码路径 Media相关的API位于:frameworks/base/media/java/android/media,里面提供有MediaPlayer MediaCodecList M…

Java判断Object类型的方法

Java判断Object类型的方法 private boolean check(Object obj) {if(obj.getClass()java.util.Date.class){return true;}else {return false;}}

GPU版PyTorch对应安装教程

一、正确安装符合自己电脑的对应GPU版本的PyTorch之前需要了解三个基本概念 算力、CUDA driver version、CUDA runtime version ①算力:需要先知道你的显卡,之后根据官网表格进行对应,得到算力 ②CUDA driver version:电脑上显卡…

RISC-V基础之函数调用(二)栈与寄存器(包含实例)

堆栈是一种后进先出(LIFO)的队列,用于存储函数调用时的临时数据和现场数据。堆栈指针sp(寄存器2)是一个普通的RISC-V寄存器,按照惯例,指向堆栈的顶部。堆栈从高地址向低地址增长,即当…

设置系统编码 Beta

在yolov5环境搭建过程中会遇到如下的编码错误警告: 这时,按住“ctrlc”中止进程,然后设置系统编码: 电脑右键属性打开: 重启之后等安装好了,记得回去把bae键取消。

人工智能发展的五个主要技术方向是什么?

人工智能主要分支介绍 通讯、感知与行动是现代人工智能的三个关键能力,在这里我们将根据这些能力/应用对这三个技术领域进行介绍: 计算机视觉(CV) 自然语言处理(NLP) 在 NLP 领域中,将覆盖文本挖掘/分类、机器翻译和语音识别。 机器人 1、…