redis hash field过期时间_Redis:09Hash对象

本文介绍了Redis中的哈希对象,包括哈希对象的特性、命令操作、内部编码以及与字符串的比较。哈希类型适用于存储多个键值对,但无法为字段设置独立的过期时间。当字段数量较少且值较小,哈希内部编码为ziplist以节省内存。若需要单独设置过期时间或执行特定操作如SETRANGE,则建议使用字符串。此外,文章探讨了哈希在不同场景下的使用,如短网址生成、用户信息存储等。
摘要由CSDN通过智能技术生成

b1ca4c3e902b596f7abe2647cb788c1c.gif

一、哈希对象简介

  • 几乎所有的编程语言都提供了哈希(hash)类型,它们的叫法可能是哈希、字典、关联数组

  • 哈希又称散列

  • 在Redis中,哈希类型是指键值本身又是一个键值对结构,形如value={ {field1,value1},...{fieldN,valueN}},Redis键值对和哈希类型二者的关系可以下图表示

5bc19d146e233b00c83f7400d87f869d.png

  • 一些特点:

    • 存储多个键值对之间的映射,并且键值对不允许重复

    • 在某一个固定的key中,其对应value中的field也不允许重复

    • 散列存储的值既可以是字符串也可以是数字值

    • 用户同样可以对散列存储的数字值执行自增操作或自减操作

    • 散列在很多方面是一个微缩版的Redis,不少字符串命令都有相应的散列版本

    • 熟悉文档数据库的读者可以将散列看作是文档数据库里面的文档,而熟悉关系数据库的读者可以将散列看作是关系数据库里面的行。因为“文档、行、散列”这三者都允许用户同时访问或修改一个或多个域

  • 注意:哈希类型中的映射关系叫作field-value,注意这里的value是指field对应的值,不是键对应的值,请注意value在不同上下文的作用。

二、命令

常用命令

  • hset:设置值。如果设置成功会返回1,反之会返回0

hset key field value

bb3844f7392dfd042aeac1f8cb9faec4.png

      hsetnx:它们的关系就像set和setnx命令一样,只不过作用域由键变为field

68b75abe57857980bbcc22be8d5ea009.png

  • hget:获取值。如果键或field不存在,返回nil

hget key field

3125d5a053e53051703bc1562513a6cb.png

好,到这里会有人好奇,这里到底是怎么样的结构,能不能直观的看到这些记录,还是我在前几篇文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值