[Redis6]常用数据结构_Hash哈希
Hash哈希
简介
Redis hash 是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
类似Java里面的Map<String,Object>
用户ID为查找的key,存储的value用户对象包含姓名,年龄,生日等信息,如果用普通的key/value结构来存储
主要有以下2种存储方式:
每次修改用户的某个属性需要,先反序列化改好后再序列化回去。开销较大。
用户ID数据冗余
通过 key(用户ID) + field(属性标签) 就可以操作对应属性数据了,既不需要重复存储数据,也不会带来序列化和并发修改控制的问题
数据结构
Hash类型对应的数据结构是两种:ziplist(压缩列表),hashtable(哈希表)。
当field-value长度较短且个数较少时,使用ziplist,否则使用hashtable。
常用命令
hset [key][field][value]给[key]集合中的 [field]键赋值[value]
hget [key1][field]从[key1]集合[field]取出 value
hmset [key1][field1][value1][field2][value2】… 批量设置hash的值
hexists[key1][field] 查看哈希表 key 中,给定域 field 是否存在。
hkeys [key] 列出该hash集合的所有field
hvals [key] 列出该hash集合的所有value
hincrby [key][field][increment] 为哈希表 key 中的域 field 的值加上增量 1 -1
hsetnx [key][field][value] 将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在 .
[Redis6]常用数据结构_Hash哈希相关推荐
- 【转】常用数据结构及复杂度
常用数据结构的时间复杂度 Data Structure Add Find Delete GetByIndex Array (T[]) O(n) O(n) O(n) O(1) Linked list ( ...
- 动图 + 源码,演示 Java 中常用数据结构执行过程及原理
最近在整理数据结构方面的知识, 系统化看了下Java中常用数据结构, 突发奇想用动画来绘制数据流转过程. 主要基于jdk8, 可能会有些特性与jdk7之前不相同, 例如LinkedList Linke ...
- 几张动态图捋清Java常用数据结构及其设计原理
最近在整理数据结构方面的知识, 系统化看了下Java中常用数据结构, 突发奇想用动画来绘制数据流转过程. 主要基于jdk8, 可能会有些特性与jdk7之前不相同, 例如LinkedList Linke ...
- java set第n位_数据结构与算法——常用数据结构及其Java实现
本文采用Java语言来进行描述,帮大家好好梳理一下数据结构与算法,在工作和面试中用的上.亦即总结常见的的数据结构,以及在Java中相应的实现方法,务求理论与实践一步总结到位. 常用数据结构 数组 数组 ...
- 【Python基础】盘点 Python 10 大常用数据结构(上篇)
我的施工之路 上图施工计划,已完成专题: 1我的施工计划 2数字专题 3字符串专题 4列表专题 5流程控制专题 6编程风格专题 7函数使用 8.面向对象编程(上篇) 9.面向对象编程(下篇) Pyth ...
- 【Python基础】盘点 Python 10 大常用数据结构(下篇)
我的施工之路 虽然艰辛,却有读者们陪伴 Python 常用数据结构 此专题<盘点Python10大常用数据结构>目录: 学习目的 学习目标 1 list 2 tuple 3 set 4 d ...
- 常用数据结构及复杂度
来自:匠心十年 - 博客园 作者:Dennis Gao 链接:http://www.cnblogs.com/gaochundong/p/3813252.html 常用数据结构的时间复杂度 Data ...
- 数据结构:哈希表函数构造和冲突解决方法
哈希表 哈希函数:记录的存储位置和它的关键字之间建立一个确定的对应关系. 冲突:对不同的关键字可能得到同一哈希地址,这种现象称为冲突. 哈希函数构造方法 1.直接定址法 取关键字或关键字的某个线性函数 ...
- 数据结构中缀表达式转后缀表达式与后缀表达式的求值实训报告_动图+源码,演示 Java 中常用数据结构执行过程及原理...
程序员的成长之路互联网/程序员/成长/职场 关注 阅读本文大概需要 3.7 分钟. 作者:大道方圆cnblogs.com/xdecode/p/9321848.html 最近在整理数据结构方面的知识, ...
最新文章
- 单臂路由与三层交换机—Vecloud微云
- 其中一个页签慢_Word中如何快速定位到页、行、表格、公式,查找与替换方法...
- Linux之《荒岛余生》(二)CPU篇
- cxfreeze打包pyqt5程序_基于PyQt5的简单RMSE计算小工具研究
- Ubuntu 14.10 下开机不进入图形化界面
- 采用docker安装部署Nginx
- 【新闻发布系统】项目文档
- 【SAS NOTE】OUTPUT
- vs2019社区版+qt5.14.2+Coin3D安装
- Delta机器人鲁棒控制仿真
- 数据结构(十二)二叉树—— 二叉树的逆推构建
- python 从文件中读取数据,同时去除掉空格和换行
- Oracle to_char()函数的用法
- 第 01 章:开篇介绍,我要带你撸 Spring 啦!
- 在 Python 中的常见的几种字符串替换操作
- 计算机组装大赛策划书新闻稿,关于装机大赛策划书
- C语言——史上最全通讯录讲解(附源码)
- 2021SC@SDUSC山东大学软件学院软件工程应用与实践--quark renderer代码分析 第十二篇 绘画系统分析(3):连线(line)
- BIM技术之Dynamo图元编程:批量放置线性+阶梯矩阵族
- 为啥我不关心制造企业内部信息化了
热门文章
- 一名全栈工程师的必备“百宝箱”
- 【BIM入门实战】Revit入门基础知识选择题带答案解析(116题)
- React Native之导出
- IOS之学习笔记五(合成存取方法)
- Android之用AccessibilityService实现红包插件
- Android之RecyclerView 实现真正的Gallery效果
- (十)python3 只需3小时带你轻松入门——模块与包
- php为什么在变量前加,php中变量前加、@等符号是什么意思?
- 代言男科、站台微商、变身神棍....这些科学家被捧了几十年,黑历史曝光后,让人三观尽毁......
- 这个被称为20世纪最伟大人物的最强理科生,到底有多强,你根本不了解