redis学习笔记3--数据类型

Altium Designer PCB拼板实战:邮票孔与工艺边设计指南 PCB拼板是连接单板设计与SMT产线加工的关键环节,其核心在于通过邮票孔和工艺边等结构,将小尺寸单板组合成符合产线加工要求的大板。邮票孔利用应力集中原理实现分板,需控制孔径、间距和连筋宽度;工艺边则为贴片机提供传送夹持面和Mark点对位基准。合理的拼板设计能显著提升加工可行性与生产效率,广泛应用于试产和小批量阶段。在Altium Designer中,通过Embedded Board Array和Paste Array功能可高效完成拼板布局,确保邮票孔与工艺边参数符合产线规范。 阅读详情

Redis 数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

String(字符串)

string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。

string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。

string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。

实例

redis 127.0.0.1:6379> SET name "runoob"
OK
redis 127.0.0.1:6379> GET name
"runoob"

在以上实例中我们使用了 Redis 的 SET 和 GET 命令。键为 name,对应的值为 runoob。

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


Hash(哈希)

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

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

实例

DEL runoob 用于删除前面测试用过的 key,不然会报错:(error) WRONGTYPE Operation against a key holding the wrong kind of value

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> HMSET myhash field1 "Hello" field2 "World"
"OK"
redis 127.0.0.1:6379> HGET myhash field1
"Hello"
redis 127.0.0.1:6379> HGET myhash field2
"World"

实例中我们使用了 Redis HMSET, HGET 命令,HMSET 设置了两个 field=>value 对, HGET 获取对应 field 对应的 value。

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

 


List(列表)

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

实例

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> lpush runoob redis
(integer) 1
redis 127.0.0.1:6379> lpush runoob mongodb
(integer) 2
redis 127.0.0.1:6379> lpush runoob rabitmq
(integer) 3
redis 127.0.0.1:6379> lrange runoob 0 10
1) "rabitmq"
2) "mongodb"
3) "redis"
redis 127.0.0.1:6379>

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


Set(集合)

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

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

sadd 命令

添加一个 string 元素到 key 对应的 set 集合中,成功返回1,如果元素已经在集合中返回 0,如果 key 对应的 set 不存在则返回错误。

sadd key member

实例

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> sadd runoob redis
(integer) 1
redis 127.0.0.1:6379> sadd runoob mongodb
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers runoob

1) "redis"
2) "rabitmq"
3) "mongodb"

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

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


zset(sorted set:有序集合)

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

 

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

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

zadd 命令

添加元素到集合,元素在集合中存在则更新对应score

zadd key score member 

实例

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> zadd runoob 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> > ZRANGEBYSCORE runoob 0 1000
1) "mongodb"
2) "rabitmq"
3) "redis"
类型简介特性场景
String(字符串)二进制安全可以包含任何数据,比如jpg图片或者序列化的对象,一个键最大能存储512M---
Hash(字典)键值对集合,即编程语言中的Map类型适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值(Memcached中需要取出整个字符串反序列化成对象修改完再序列化存回去)存储、读取、修改用户属性
List(列表)链表(双向链表)增删快,提供了操作某一段元素的API1,最新消息排行等功能(比如朋友圈的时间线) 2,消息队列
Set(集合)哈希表实现,元素不重复1、添加、删除,查找的复杂度都是O(1) 2、为集合提供了求交集、并集、差集等操作1、共同好友 2、利用唯一性,统计访问网站的所有独立ip 3、好友推荐时,根据tag求交集,大于某个阈值就可以推荐
Sorted Set(有序集合)将Set中的元素增加一个权重参数score,元素按score有序排列数据插入集合时,已经进行天然排序1、排行榜 2、带权重的消息队列
尚硅谷Redis 7学习笔记 阅读详情

相关推荐

海康威视iVMS-4200在银河麒麟系统部署全攻略与疑难排解

在信创国产化进程中,软件兼容性是关键挑战之一。以安防监控领域广泛使用的海康威视iVMS-4200客户端为例,其从Windows环境迁移到银河麒麟等国产操作系统时,面临架构适配、依赖库匹配等核心兼容性问题。这涉及到跨平台软件部署的通用原理:不同CPU架构(如ARM的飞腾、x86的兆芯)和操作系统底层API的差异,要求软件必须进行针对性编译和优化。解决这类问题的技术价值在于保障专业软件在国产化环境中的稳定运行,是信创产业落地的重要环节。具体到应用场景,如在基于银河麒麟V10的安防监控项目中,通过获取对应架构的.

weixin_33423874的博客 1425

【Redis】3、Redis学习笔记系列(List数据类型)

Redis 的 List 类型是按插入顺序排序键不存在时,插入元素会自动创建空链表;所有元素被移除后,键会从数据库中删除。最大元素数量为4294967295。效率特性:头部/尾部插入/删除为O(1)(百万级数据也能快速执行);中间插入/删除为O(N)(效率极低,需避免)。

朱朱博客,分享技术 1058

【多模态融合】TransFusion学习笔记(1)

工作上主要还是以纯lidar的算法开发,部署以及系统架构设计为主。对于多模态融合(这里主要是只指Lidar和Camer的融合)这方面研究甚少。最近借助和朋友们讨论论文的契机接触了一下这方面的知识,起步是晚了一点,但好歹是开了个头。下面就借助TransFusion论文及其开源代码来串一串这方面的知识。这个很好理解,参考FPointNet网络图示。就是利用现有的2D检测器在图像上提取2D初始框,根据Camera成像原理,捕获2D框视锥内的点云,再利用点云分类模型(如:PointNet)做进一步分类。

4961

Redis学习笔记3--数据类型

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34100227的博客 84

SAP SLT DMIS 2018_1_752 究竟是什么意思?

把读懂,并不需要背太多编号。你只要记住:它就是DMIS 2018发行线里、面向的那一档组件版本,承载SLT 3.0的功能集。面向项目落地,要点就是三件事:看清平台基线、对齐DMIS支持包、走官方安装与补丁路径。如此,S/4到HANA,抑或S/4到BigQuery的复制链路,都会变得既稳定又可维护。DMIS 2018是新技术发行,基于,覆盖SLT全场景(SAP Learning)。DMIS_2018的安装与下载路径、通过SAINT安装的官方步骤(Installation Guide PDF)。源系统与。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 223

uniapp(全端兼容) - 超详细接入百度统计功能,给uniapp全平台各端项目引入添加百度统计的插件统计流量详细的步骤教程(提供最新的百度统计源代码,详细的示例代码复制粘贴即可快速搞定!)

uniapp h5 app 使用加入接入百度统计,uniapp百度统计,uniapp详细引入百度统计的教程,uniapp接入百度统计,uniapp如何实现加入百度的统计代码,uniapp怎么植入百度统计详细教程,uniapp如何对接百度统计,uniapp百度统计不生效怎么办,uniapp使用百度统计不生效常见问题,uniapp引入百度统计后没有生效,uniapp h5网页接入百度统计代码后没有统计无效,uniapp最新接入使用百度统计功能,uniapp增加百度统计代码,uniapp app如何接入百度统计,

✅ 精选推荐文章 1万+

Redis学习笔记(3)—— 五种数据类型&keys的通用操作

一、Redis数据结构介绍   redis是一种高级的key-value的存储系统,其中的key是字符串类型,尽可能满足如下几点:     1)key不要太长,最好不要操作1024个字节,这不仅会消耗内存还会降低查找 效率     2)key不要太短,如果太短会降低key的可读性     3)在项目中,key最好有一个统一的命名规范(根据企业的需求)   其中value 支持...

VNOpU2015的专栏 335

整车的智能配电系统

本文探讨了汽车电网安全的重要性,分析了传统汽车电网的现状,并重点介绍了半导体在汽车智能配电系统中的作用。半导体凭借其单向导电性和可控性,如二极管、MOSFET等,提供了更高效、安全的电力控制。通过对比传统保险丝与半导体器件,阐述了半导体在过流保护、电压监测和故障诊断方面的优势,强调其在减少安全隐患、提高能源管理和续航里程方面的贡献。极氪智能配电系统展示了如何运用半导体技术实现整车能源的精细化管理,降低维修成本,减少线束复杂性,提升安全性能。

让你爱上电路设计 1612

Redis个人学习笔记3---五大数据类型之集合

根据b站UP主狂神说Redis课程所写的个人学习笔记 视频地址:https://www.bilibili.com/video/BV1S54y1R7SB List 最基本的数据类型,列表 在redis里栈,队列,阻塞队列都可以用list来实现 使用list命令都是l开头的 127.0.0.1:6379> lpush list one #将一个或多个值插入列表头部 (integer) 1 127.0.0.1:6379> lpush list two (integer) 2 127..

qq_42038061的博客 156

Claude Code 从入门到精通,通过实战项目穿插 Agent Skills、MCP、Hooks、子代理、插件等十五个知识点

本文介绍了Claude Code的高级使用技巧,通过一个个人简历网站实战项目,详细讲解了15个核心知识点。主要内容包括:三种权限模式(默认/编辑/计划)的使用与切换;历史会话管理(/resume、/rename、/clear命令);会话回滚功能(/rewind);以及危险参数--dangerously-skip-permissions的注意事项。文章还演示了如何通过计划模式拆分代码文件,并强调了在复杂任务中仔细检查规划步骤的重要性。这些技巧能帮助开发者更高效地使用Claude Code完成项目开发。

1788

易盾滑块的js逆向分析

基于易盾的滑块验证码进行逆向分析,最种实现全系列的验证码逆向,包括滑块、点选、推理拼图等多种类型。

shanf7921的博客 3万+

redis基础学习笔记

1. 单机MySQL的年代90年代,一个基本的网站访问量一般不会太大,单个数据库完全足够!那个时候,更多的去使用静态网页 Html~服务器根本没有太大的压力!思考一下,这种情况下 : 整个网站的瓶颈是什么?数据量如果太大,一个机器放不下数据的索引(B+ Tree),一个机器内存也放不下访问量(读写混合),一个服务器承受不住2. Mencached(缓存)+MySQL+垂直拆分(读写分离)站80%的情况都是在读,每次都要去查询数据库的话就十分的麻烦!

weixin_43977307的博客 1908

大模型部署指南:SGLang 框架

本文介绍使用 SGLang 框架部署大模型

举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。 1611

Redis的五种常用数据类型、三种特殊数据类型详解

目录简述Redis五种基本数据类型String字符串常用命令应用场景Hash散列表常用命令使用场景List链表常用命令应用场景Set( 集合)常用命令应用场景SortedSet( 有序集合) zset常用命令介绍应用场景Redis三种特殊的数据类型Geospatial 地理位置命令介绍底层实现原理Hyperloglog 基数统计命令介绍应用场景:适合做页面统计。Bitmap位图场景基本命令应用场景面试题常问的数据类型寄言 简述 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数

weixin_43246215的博客 4万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Redis数据类型与常用命令

一、Redis数据类型 1. Redis数据类型简介 2. Redis数据类型特点 二、Redis常用命令 1. 字符串string 操作命令 2. 哈希hash 操作命令 3. 列表list 操作命令 4. 集合set操作命令 5. 有序集合 sorted set 操作命令 6. 通用命令

HHX_01的博客 2584

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Redis 5种基本数据类型 + 3种特殊数据类型

它将所有的元素紧挨着一起存储,分配的是一块连续的内存。它的底层实际上是使用双向链表实现的(如下图),对两端的操作性能很高,通过索引下标操作中间节点性能会较差。以上的方案结果精确,但随着数据不断增加,导致占用空间越来越大,对于非常大的数据集是不切实际的。集合的成员是唯一的,但是评分是可以重复的。)来获取一个范围的元素。访问有序集合中的中间元素也是非常快的,因为你能够使用有序集合作为一个没有重复成员你的智能列表。的优点是:在输入元素的数量或者体积 非常非常大时,计算基数所需的空间总是固定的、并且是很小的。

JngKang的博客 1713

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Redis数据类型

文章目录STRINGLISTSETHASHZSET Redis主要有5种数据类型,包括String,List,Set,Zset,Hash,满足大部分的使用要求,Redis各数据类型的使用场景可以参考Redis使用场景 数据类型 可以存储的值 操作 STRING 字符串、整数或者浮点数 对整个字符串或者字符串的其中一部分执行操作对整数和浮点数执行自增或者自减操作 LIST 列表 ...

ThinkWon的博客 1万+

Redis数据类型:掌握这5+3种核心类型,成为Redis高手

Redis数据类型的多样性是其受欢迎的重要原因之一。通过灵活运用这些数据类型,可以用简单的命令解决复杂的业务问题。在实际应用中,应根据数据特点和访问模式选择最合适的数据类型,以充分发挥Redis的性能优势。在下一篇文章中,我们将详细介绍Redis的基本命令操作,敬请期待!

m0_65382359的博客 1798

Redis学习笔记1【数据类型和常用命令】

以上总结了关于redis的基本的数据结构和基本数据结构常用的有关命令,希望对你也会有帮助。

Rinai的博客 1314

Redis数据类型及底层实现

Redis数据类型及底层实现

野心与梦 1万+

【Redis】Redis 底层数据结构、五种数据类型

当我们执行命令setbit key 7 0的时候,相当于把字符0x33变成了0x32,这样字符串的值就变成了”22”。而value则比较复杂,为了在同⼀个dict内能够存储不同类型的value,这就需要⼀个通⽤的数据结构,这个通用的数据结构就是robj,全名是redisObject。String的内部存储结构⼀般是sds(Simple Dynamic String,可以动态扩展内存),但是如果⼀个String类型的value的值是数字,那么Redis内部会把它转成long类型来存储,从⽽减少内存的使用。

奶酪的博客 3250

Redis redis五种数据类型和使用场景

一、redis基本基本介绍 1、 redis解决分布式环境下缓存不同步 让缓存集中处理(大家使用同一个缓存服务),我们需要一个类似于MYSQL这样可以通过服务来提供第三方的缓存工具(缓存服务器);流行的第三方缓存服务器:memcache/redis 2、REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统(...

m0_38068812的博客 8685

Redis学习笔记(基础篇)

SQLNoSQL数据结构结构化非结构化数据关联关联的无关联查询方式SQL查询非SQL事务特性ADIDBASE存储方式磁盘内存扩展性垂直水平使用场景1)数据结构固定 2)对一致性、安全性要求较高1)数据结构不稳定 2)相关业务对数据安全性、一致性要求不高 3)对性能有要求。

qq_63003916的博客 1278

Redis小白学习笔记1

缓存击穿是指,针对某个访问非常频繁的热点数据的请求,无法在缓存中进行处理,紧接着,访问该数据的大量请求,一下子都发送到了后端数据库,导致了数据库压力激增,会影响数据库处理其他请求。此时,应用也无法从数据库中读取数据再写入缓存,来服务后续请求,这样一来,缓存也就成了“摆设”,如果应用持续有大量请求访问数据,就会同时给缓存和数据库带来巨大压力。缓存穿透是指要访问的数据既不在 Redis 缓存中,也不在数据库中,导致请求在访问缓存时,发生缓存缺失,再去访问数据库时,发现数据库中也没有要访问的数据。

weixin_43977307的博客 1374
上一篇: redis学习笔记2--使用
下一篇: 实习心得体会之JDBC操作21090712
iamlinuxasd
博客等级 码龄10年 4粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值