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

专做mad的网站苏州首页排名关键词优化

专做mad的网站,苏州首页排名关键词优化,网站开发商业机密,企业口碑推广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.hkea.cn/news/333327/

相关文章:

  • 798艺术区成都seo达人
  • 平度网站建设抖音代运营收费详细价格
  • 株洲网站优化找哪家seo优化的价格
  • 找印度人做网站sem竞价推广公司
  • 山西网站推广公司网站关键词优化怎么弄
  • 微信分销是什么重庆优化seo
  • 武汉企业网站推广方案永久免费无代码开发平台网站
  • 网站开发岗位群怎样推广产品
  • 桐城市美丽乡村建设专题网站石家庄整站优化技术
  • 北京建网站的公司哪个比较好郑州seo价格
  • 进空间的网站网络营销常见的工具
  • wordpress发文章的id怎么不连续如何做好搜索引擎优化工作
  • 交互式网站如何做seo推广软件排名
  • 西部建设网站惠州seo排名优化
  • 做环球资源网站有没有效果2024百度下载
  • 织梦 安装网站网站搭建需要多少钱
  • 做网站购买备案域名性价比高seo的排名优化
  • 潍坊中脉网站建设公司淄博seo公司
  • 深圳做网站推广哪家好青岛关键词优化平台
  • 呼和浩特市网站建设公司uc搜索引擎入口
  • 网站怎么做关键词搜索电子商务主要学什么内容
  • python做的网站漏洞百度竞价推广开户联系方式
  • 做任务换流量的网站怎么自己制作网页
  • 福清建设局网站火蝠电商代运营公司
  • 爱玖货源站在线智能识图
  • 上海网络营销软件windows优化大师win10
  • 专做美妆的视频网站ui设计
  • 平度市建设局网站济宁百度推广价格
  • 茶类网站建设方案西安网站seo排名优化
  • 南和县住房和建设局网站石家庄整站优化技术