当前位置: 首页 > news >正文

国际论坛网站模板什么网站可以做兼职 知乎

国际论坛网站模板,什么网站可以做兼职 知乎,织梦网站备份几种方法,网站建设及运营服务流程hash 哈希类型中的映射关系通常称为field-value,⽤于区分 Redis 整体的键值对(key-value),注意这⾥的value是指field对应的值,不是键(key)对应的值,请注意 value 在不同上下⽂的作⽤…

hash

哈希类型中的映射关系通常称为field-value,⽤于区分 Redis 整体的键值对(key-value),注意这⾥的value是指field对应的值,不是键(key)对应的值,请注意 value 在不同上下⽂的作⽤。

hash常用命令

hset

作用:设置 hash 中指定的字段(field)的值(value)
语法:HSET key field value [field value ...]
返回值:添加的字段的个数。
在这里插入图片描述

hget

作用:获取 hash 中指定字段的值。
语法:HGET key field
返回值:字段对应的值或者 nil。
在这里插入图片描述

hexists

作用:判断hash中是否有指定的 field
语法:HEXISTS key field
返回值:1 表⽰存在,0 表⽰不存在。
在这里插入图片描述

hdel

作用:删除 hash 中指定的字段,hdel删除的是field
返回值:本次操作删除的字段个数
语法:HDEL key field [field ...]
在这里插入图片描述
注意:
del 删除的是 key
hdel 删除的是 field

hkeys

作用:获取hash中的所有字段(field)。 这个操作先根据 key 找到对应的 hash, 然后再遍历 hash
语法:HKEYS key
在这里插入图片描述

hvals

作用:获取 hash 中的所有的 field 对应的value值。
语法:HVALS key
在这里插入图片描述

hgetall

作用:hgetall相当于是hkeys和hvals的结合,用来获取 hash 中的所有 field以及对应的value。
语法:HGETALL key
在这里插入图片描述

hmget

在使⽤ hgetall时,如果哈希元素个数⽐较多,会存在阻塞Redis的可能。如果开发⼈员只需要获取部分field,可以使⽤ hmget
作用:⼀次获取 hash 中多个 field 对应的 value
语法:HMGET key field [field …]
在这里插入图片描述

hlen

作用:获取hash中 field 的个数。
语法:HLEN key
在这里插入图片描述

hsetnx

作用:类似于 setnx 在字段不存在的情况下,才能设置成功,如果存在则失败
语法:HSETNX key field value
在这里插入图片描述

hincrby

作用:把hash这里的value也可以当作成数字来处理,进行加减整数
语法:HINCRBY key field increment
在这里插入图片描述

hincrbyfloat

作用:进行加减小数
语法:HINCRBYFLOAT key field increment
在这里插入图片描述

编码方式

在redis 6 版本之前哈希的内部编码有两种:

  • ziplist(压缩列表):当哈希类型元素个数小于hash-max-ziplist-entries配置(默认512个)同时所有值都⼩于hash-max-ziplist-value配置(默认64字节)时,Redis会使⽤ziplist作为哈希的内部实现,ziplist使⽤更加紧凑的结构实现多个元素的连续存储,所以在节省内存⽅⾯⽐hashtable更加优秀。

  • hashtable(哈希表):当哈希类型⽆法满⾜ziplis的条件时,Redis会使⽤hashtable 作为哈希的内部实现,因为此时ziplist的读写效率会下降,⽽hashtable的读写时间复杂度为O(1)。

在redis 6 之后哈希的内部编码新增了listpack编码,用来替代ziplist编码。

应用

缓存

string 虽然也是可以作为缓存使用,但是存储结构化的数据,使用 hash 类型更合适一些~~

下图为关系型数据表记录的两条用户信息,用户的属性表现为表的列,每条⽤⼾信息表现为⾏。

uidnameagecity
1James28Beijing
2Johnathan30Xian

如果映射关系表⽰这两个用户信息,其中先根据user和uid来作为 hash 的 key值来区分每个不同的用户,多对field-value对应用户的各个属性,则如下图所示:
在这里插入图片描述
上述场景中使用 string 类型也能做到缓存,但是就需要使用到 json 这样的数据结构

  • 但是如果使用 string (json)这种的格式来做缓存,万一只想获取其中的某个 field 时,就需要把整个 json 都要读取出来,并解析构成一个对象来操作 field,最后在重新序列化 json 字符串,最后写回 redis。
  • 如果使用 hash 的方式来表示上述用户信息,就可以使用 field 表示对象的每个属性(数据表的每个列),此时就可以非常方便的修改/获取任何一个属性的值。

但是需要注意的是哈希类型和关系型数据库有两点不同之处:

  • 哈希类型是稀疏的,⽽关系型数据库是完全结构化的,例如哈希类型每个键可以有不同的 field,⽽关系型数据库⼀旦添加新的列,所有⾏都要为其设置值,即使为 null。
  • 关系数据库可以做复杂的关系查询,而 Redis 去模拟关系型复杂查询,例如联表查询、聚合查询等基本不可能,维护成本⾼。
http://www.yayakq.cn/news/179434/

相关文章:

  • 6生肖竞猜网站建设确定网站风格
  • 宁波网站设计公司排名全国企业信用信息公示系统湖北
  • 电商网站建设 教学总结用sql网站建设基本流程
  • 唐山市建设局网站wordpress播放器
  • 请写出网站建设的步骤网站对企业的重要性
  • 做教育培训的网站网站建设包涵哪些领域
  • 寺庙网站开发建设方案网站建设mrd文档模板
  • 西安网站建站品牌郑州 网站建设的公司
  • wordpress 获取网站地址简单的个人主页网站制作html
  • jquery网站底部导航效果公众号发布的文章是wordpress
  • 佛山 顺德网站设计网站推广到海外怎么做
  • 青岛做企业网站的公司淄博网站建设咨询臻动传媒
  • 网站不备案有什么影响rt-theme 18 wordpress
  • 现在做个网站多少钱iis发布网站的教程
  • 移动软件开发工程师长春网站优化方式
  • 佛山网站建设格式有哪些重庆电子工程职业学院校园网绑定
  • 药品网站建设存在的问题内部网站建设合同
  • 济南行知网站制作护肤品 网站建设策划
  • 工业设计网站国外免费推广软件 推广帮手
  • 如何帮人做网站个人网站建设与实现
  • 织梦网站后台如何做百度优化浙江省通信管理局 网站备案 管理部门
  • 免费个人网站源码下载wordpress右侧悬浮
  • 环保网站源码网站建设的评分细则
  • 网站 建设 内容 安排WordPress签到打卡
  • 网站建设网络安全旅游分销平台有哪些
  • 桂林微信网站设计wordpress文章编辑技巧
  • 怎么做网站数据库备份域名cn和com有什么区别
  • 物流网站建设的需求分析电子商务网站建设完整详细流程
  • 网站制作公司怎么样html代码在线
  • 做影视网站违法莫注册网站的费用