redis常用数据类型有哪些

redis常用数据类型有:1、String(字符串);2、Hash(哈希);3、List(列表);4、Set(集合);5、Zset(sorted set:有序集合)。string是最简单的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value,其上支持的操作与Memcached的操作类似。

redis常用数据类型有哪些-Worktile社区

1、String(字符串)

string是最简单的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value,其上支持的操作与Memcached的操作类似。但它的功能更丰富。redis采用结构sdshdr和sds封装了字符串,字符串相关的操作实现在源文件sds.h/sds.c中。

2、Hash(哈希)

Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。

3、List(列表)

在编程语言中List是标准类库中的一个类,可以简单视之为双向链表,以线性列的方式管理物件集合。list的特色是在集合的任何位置增加或删除元素都很快,但是不支持随机存取。list是类库提供的众多容器(container)之一,除此之外还有vector、set、map等。list以模板方式实现(即泛型),可以处理任意型别的变量,包括使用者自定义的资料型态例如:它可以是一个放置整数(int)型态的list、也可以是放置字串(char或string)型态的list、或者放置使用者自定类别(user-defined class)的list。

4、Set(集合)

set是集合,和我们数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。操作中key理解为集合的名字。在源文件dict.h/dict.c中实现了hashtable的操作,dict中table为dictEntry指针的数组,数组中每个成员为hash值相同元素的单向链表。set是在dict的基础上实现的,指定了key的比较函数为dictEncObjKeyCompare,若key相等则不再插入。

5、Zset(sorted set:有序集合)

zset是set的一个升级版本,他在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。可以理解了有两列的mysql表,一列存value,一列存顺序。操作中key理解为zset的名字。

延伸阅读:

什么是redis?

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。

Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。

文章标题:redis常用数据类型有哪些,发布者:小编,转载请注明出处:https://worktile.com/kb/p/35751

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年1月16日 下午10:34
下一篇 2023年1月16日 下午10:37

相关推荐

  • 如何编写数据类的测试用例

    编写数据类的测试用例要注意:一、覆盖所有可能的数据输入组合;二、测试边界值情况;三、考虑异常情况;四、测试属性和方法的交互。数据类通常拥有多个属性和方法,每个属性和方法都可能接受不同的数据输入,因此需要编写足够的测试用例。 一、覆盖所有可能的数据输入组合 数据类通常拥有多个属性和方法,每个属性和方法…

    2023年3月21日
    1100
  • 学习经济学需要熟悉哪些编程语言

    学习经济学需要熟悉以下编程语言:1、R;2、VBA;3、SQL;4、SAS;5、Stata。R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。 1、R 做统计和计量的话,想要跟当今的国际学术界接轨,最好学R,至少我…

    2023年2月6日
    4800
  • 计算机后台中的“后台”是什么意思

    在计算机领域中,“后台”是指一个系统或程序,它们通常在不被用户察觉的情况下运行。后台程序通常是处理数据和执行任务的核心,这些任务可能包括数据存储、处理和分析等。后台的主要任务是帮助前台程序处理和管理数据,以及执行各种任务。 在计算机领域中,“后台”一词经常被提到。那么,什么是“后台”呢?在计算机后台…

    2023年3月1日
    2800
  • 一级域名和二级域名区别是什么

    一级域名和二级域名的区别有以下几个方面:1、定义不同;2、域名组成不同;3、分类不同。定义不同是指,顶级域(或一级域名),英语:Top-level domains,first-level domains(TLDs),也翻译为国际顶级域名。二级域是互联网DNS等级之中,处于顶级域名之下的域。 一、定义…

    2023年2月13日
    5900
  • 32位操作系统怎么升级

    以升级Windows 10至64位为例,32位操作系统升级的步骤:1、确保您当前的32位版本Windows 10已启用;2、从Microsoft官方网站下载Windows媒体建立工具;3、连接至少有4GB可用空间的USB等。确保当前32位版本已启用的路径是设置-更新与安全性-启用。 一、32位操作系…

    2023年1月9日
    50800
  • linux常用命令20个

    linux常用的20个命令是:1、pdw命令;2、ls命令;3、cd命令;4、mkdir命令;5、rmdir命令;6、touch命令;7、cp命令;8、rm命令;9、mv命令;10、cat命令等。pwd命令用于显示工作目录,执行 pwd 命令可立刻得知目前所在的工作目录的绝对路径名称。 1、pwd命…

    2023年3月19日
    3500
  • 为什么没有或流行的拼音编程语言

    没有或流行的拼音编程语言是因为:1、拼音命名容易出错;2、拼音命名不可读性强;3、拼音命名难以追踪;4、拼音命名不利于程序优化。拼音命名容易带来歧义,在编程的时候,歧义会导致程序识别出错,可能出现莫名其妙的问题,影响程序运行效率。 1、拼音命名容易出错 拼音命名容易带来歧义,例如“dan”可以是拼音…

    2023年1月27日
    2500
  • okr目标怎么制定

    okr目标的制定发生在三个不同的层面,分别是:1、组织;2、团队;3、个人。组织是指,组织 OKR 级别的领导者和经理根据有改进空间的地方决定本季度的公司目标。领导为组织定义此目标,让团队将其 OKR 与此保持一致。 一、okr目标的制定 1、组织 公司在 OKR 中的目标通常非常高,以至于典型的公…

    2023年2月23日
    3000
  • 线程和进程的区别

    线程和进程的区别有:1、根本区别;2、从属关系不同;3、开销不同;4、拥有资源不同;5、控制和影响能力不同;6、CPU利用率不同。根本区别是指进程是操作系统进行资源分配的最小单元,线程是操作系统进行运算调度的最小单元。 1、根本区别 进程是操作系统进行资源分配的最小单元,线程是操作系统进行运算调度的…

    2023年1月31日
    2400
  • 光纤模块单模多模区别

    光纤模块单模多模区别是:1、波长不同;2、应用范围不同;3、光纤类型不同;4、成本不同;5、光源不同;6、传输距离不同。一般多模光波长为850nm,单模光波长则主要以1310nm和1550nm为主。多模光模块只能用于短距离传输;而单模光模块可用于远距离传输。 1、波长不同 一般多模光波长为850nm…

    2023年1月31日
    2900

发表回复

登录后才能评论
联系我们
关注微信
关注微信
分享本页
返回顶部
PingCode 比 Jira 更好用的研发管理工具。免费试用         文章及站点合作,请添加微:All-FeiFei