数据类型-hash 扩展操作与使用注意事项 | 学习笔记

简介: 快速学习数据类型-hash 扩展操作与使用注意事项

开发者学堂课程【Redis 入门到精通(基础篇)数据类型-hash 扩展操作与使用注意事项】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/764/detail/13377


数据类型-hash 扩展操作与使用注意事项

 

内容介绍

一、Hash 类型数据扩展操作

二、Hash 类型数据操作的注意事项

 

一、Hash 类型数据扩展操作

获取哈希表中所有的字段或字段值

hkeys key

hvals key

设置指定字段的数值数据增加指定范围的值

hincrby key field increment

hincrbyfloat key field increment

哈希的扩展操作,基于哈希模型,会有一些特殊的扩展操作,接下来看一下这两组操作。

哈希可以获取他自己的所有的键和所有的值,然后把他打印出来,操作一下,hgetall user,然后再次操作 hkeys user,得到 name,age,weight,这就是一个列表,如果要得到值,那么就hvals user,得到纯值,注意,key不会重复,如果有重复,那么就会被覆盖,而val是不会重复的,可以进行修改,hset user weight 38,修改体重为38公斤,然后再次操作 hvals user,得到修改后的值,所以可以得出,使用所有的key使用指令 hkeys,得到所有的值hvals。

如果只有一个key 跟val,那么进行操作,输入hset user2 name zs,然后回车,得到 hkeys user2,此时得到1)name,前面有一个小括号,这是一个列表,在之后的编程操作中,返回就是固定的。

接下来的一组,hincrby user age 1,年龄增加1,回车,得到增加后的数值。

 

二、Hash 类型数据操作的注意事项

●hash类型下的value只能存储字符串,不允许存储其他数据类型,不存在嵌套现象。如果数据未获取到,对应的值为(nil)
●每个hash可以存储2^32-1个键值对
●hash类型十分贴近对象的数据存储形式,并且可以灵活添加删除对象属性。但hash设计初衷不是为了存储大量对象而设计的,切记不可滥用,更不可以将hash作为对象列表使用
●vegetal 操作可以获取全部属性,如果内部field过多,遍历整体数据效率就会很低,有可能成为数据访问瓶颈

hash类型下的value只能存储字符串,输字也对,不允许嵌套,不能redis装哈希再装小哈希,这样里面就没有,只是一个null,代表没有这一项;

每个哈希的存储是有上限的,编程上面除非是整库的搬家,否则一般是用不完的;

hash类型十分贴近对象的数据存储形式,并且操作十分灵活,比起string操作要灵活的多,并且还可以归为一类,从结构设计上划归一起,最初设计并不是存储对象,所以不要滥用,绝对不能当作存储格式的对象,随着对象的增多效率会变低;

vegetal 操作可以获取全部属性,如果内部field过多,遍历整体数据效率就会很低,有可能成为数据访问瓶颈,我们尽量用哪个拿哪个,如果假设存储了40个,需要14个时,建议单个取出,这样一直getall会影响效率。

相关文章
|
XML Java 编译器
Java注解的底层源码剖析与技术认识
Java注解(Annotation)是Java 5引入的一种新特性,它提供了一种在代码中添加元数据(Metadata)的方式。注解本身并不是代码的一部分,它们不会直接影响代码的执行,但可以在编译、类加载和运行时被读取和处理。注解为开发者提供了一种以非侵入性的方式为代码提供额外信息的手段,这些信息可以用于生成文档、编译时检查、运行时处理等。
238 7
|
9月前
|
机器学习/深度学习 算法 前端开发
RAG-Gym: 基于过程监督的检索增强生成代理优化框架
本文介绍RAG-Gym框架,通过过程监督优化推理与搜索代理。针对传统RAG架构效能限制及提示工程依赖问题,提出统一优化方法。核心贡献包括:设计ReSearch代理架构实现推理与搜索协同;验证过程奖励模型提升性能;系统分析过程监督来源、奖励模型迁移性和性能扩展规律。实验表明,RAG-Gym显著增强知识密集型任务中搜索代理表现,为未来智能系统研发提供理论与实践参考。
243 3
RAG-Gym: 基于过程监督的检索增强生成代理优化框架
|
2月前
|
安全 Go 开发者
“不要通过共享内存来通信”——深入理解Golang并发模型与CSP理论
Golang 采用 CSP 理念,主张“通过通信共享内存”,以消息传递替代共享内存,避免数据竞争。其核心为 Goroutine 与 Channel:轻量协程并发执行,通道安全传递数据,将并发复杂性转为通信编排,提升程序清晰度与可维护性。
232 0
|
9月前
|
人工智能 自然语言处理 PHP
WordPress果果AI创作插件
果果AI创作是一款强大的AI创作插件,集成百度千帆、讯飞星火、阿里云百炼等8大平台大模型及自定义大模型。通过导入文章标题即可生成内容,支持HTML格式转换、创作指令设置、字数限制、分类发布、状态设置等功能。提供永久免费使用的部分大模型,如百度千帆和讯飞星火Lite版。注意事项包括调整PHP脚本运行超时时间及仅支持文本生成模型。更新新增DeepSeek大模型与max_tokens设置。
260 1
|
存储 JSON 物联网
设备管理组件功能介绍
设备管理组件功能介绍
545 0
|
11月前
|
缓存 Java 开发者
Java字面量详解:概念、分类与使用实例
本文介绍了Java字面量的概念、分类及应用。
471 11
|
供应链 物联网 新制造
云上智能制造:重塑工业未来,驱动智能升级的新篇章
云上智能制造平台作为智能制造领域的重要创新成果,正以其独特的优势和广泛的应用场景引领着制造业的智能化升级。未来,随着技术的不断进步和应用的不断拓展,云上智能制造平台将在推动产业升级、提升生产效率、优化资源配置等方面发挥更加重要的作用。我们有理由相信,在云上智能制造平台的助力下,制造业将迎来更加辉煌的未来。
969 0
|
Ubuntu Java Shell
Cobalt Strike配置
Cobalt Strike配置
423 0
|
Java 测试技术 Spring
什么是循环依赖,如何解决?
在 Spring 应用中,循环依赖指的是两个或多个 Bean 之间相互引用,造成了一个环状的依赖关系。举例来说,如果 Bean A 依赖于 Bean B,同时 Bean B 也依赖于 Bean A,就形成了循环依赖。这种情况下,Spring 容器在创建这些 Bean 时会陷入无限循环,导致应用启动失败或者出现其他不可预测的问题。
972 1
|
安全 网络安全 API
Hotmail IMAP地址要怎么填写?
使用IMAP协议在多设备同步Hotmail邮件,服务器地址为`imap-mail.outlook.com`,端口993,需启用SSL/TLS加密。用户名为邮箱地址,密码为账户密码。设置文件夹路径如"Inbox",可自定义同步选项。AokSend提供高效发信服务,支持SMTP/API接口。确保准确配置以顺利连接并管理邮件。