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

相关推荐

  • 深度强化学习与深度学习的的区别

    区别有:1、学习目标不同;2、数据来源不同;3、应用领域不同;4、反馈机制不同;5、模型结构差异;6、训练策略不同。其中,学习目标不同指的是深度学习主要关注从大量数据中学习特征表示,而深度强化学习则是在互动环境中通过尝试错误来学习策略。 1、学习目标不同 深度强化学习:目标是学习一个策略,通过与环境…

    2023年7月30日
    78700
  • 知识库中包含哪些知识

    知识库中包含以下知识:一、产品知识;二、行业知识;三、技术知识;四、经验分享;五、培训资料。产品知识是指对公司或组织的产品或服务进行详细描述的知识点。这些知识点包括产品特点、技术规格、使用方法、注意事项等等。 一、产品知识 产品知识是指对公司或组织的产品或服务进行详细描述的知识点。这些知识点包括产品…

    2023年4月30日
    65300
  • 基于web教务管理系统的设计与实现

    “基于WEB教务管理系统的设计与实现”直接回应了数字化时代高校管理需求的实际问题。实施该系统意味着利用现代网络技术优化教育资源配置、强化教学活动管理、提高教学质量与管理效率。1、高效性是核心目标,该系统旨在简化复杂流程;2、易用性,关注用户体验,确保各类用户轻松上手;3、安全性是设计重中之重,确保数…

    2024年1月9日
    21600
  • 资源管理策略包括哪些

    资源管理策略包括:一、人力资源管理;二、资金管理;三、项目管理;四、设备管理;五、信息管理;六、时间管理。人力资源管理是资源管理策略中的一个重要方面。它包括招聘、培训、绩效评估、激励措施和离职等方面。 一、人力资源管理 人力资源管理是资源管理策略中的一个重要方面。它包括招聘、培训、绩效评估、激励措施…

    2023年4月30日
    1.1K00
  • 仓储管理的系统设计

    仓储管理的系统设计需要注重效率提升、错误降低、数据分析和未来扩展性这四个方面。1、效率提升是对物流中心自动化水平的提升,能够降低作业时间,提高出入库速度。2、错误降低需要通过系统设计来减少人为操作失误和提高物品追踪能力。3、数据分析对于存货水平、采购计划和客户需求等数据进行综合分析,帮助决策者做出更…

    2024年1月9日
    22400
  • 什么操作用协程比较好

    以下操作适合使用:一、网络编程;二、数据库访问;三、图像处理;四、文本处理;五、并发任务;六、视频编解码;七、数据抓取。协程非常适合网络编程,因为网络通信通常涉及大量的IO操作。使用协程可以避免阻塞线程,从而提高程序的性能。 一、网络编程 协程非常适合网络编程,因为网络通信通常涉及大量的IO操作。使…

    2023年5月31日
    39800
  • 开源版oa系统

    开源办公自动化系统(开源OA系统)提供了一套免费的,可以自由修改和分发的办公管理软件解决方案。通过开源社区的劳力与智慧,这类系统通常能满足企业的基础办公需求,并且因其可定制性强、成本低廉而受到小型企业和技术团队的欢迎。开源OA系统的核心特性包括:1、成本效益显著;2、自由度高,可定制性强;3、社区支…

    2024年1月12日
    28000
  • 如何解读甘特图中的时间线和时间块

    解读甘特图中的时间线和时间块包括理解甘特图结构、分析时间块特征、观察进度对比等方面。甘特图是项目管理工具中常用的图形化时间表,其展现了任务的开始与结束日期、持续时间,以及不同任务间的依赖关系。时间线通常在图表的顶部水平展出,代表项目周期的总体时间框架。时间块则是水平条形图,反映了每个单独任务或活动的…

    2023年12月20日
    40300
  • 办公室系统OA是什么

    OA办公系统是将计算机、通信等现代化技术运用到传统办公方式,进而形成的一种新型办公方式。办公自动化利用现代化设备和信息化技术,代替办公人员传统的部分手动或重复性业务活动,优质而高效地处理办公事务和业务信息,实现对信息资源的高效利用。 OA办公系统是将计算机、通信等现代化技术运用到传统办公方式,进而形…

    2023年5月28日
    31000
  • 云效devops是什么

    解答“云效DevOps”即为一款综合性的开发及运维一体化平台,目的在于促进软件开发的全流程自动化管理与优化,提高团队效率。本文主要涵盖该平台的定义、核心功能、实际应用案例以及与传统DevOps模式的区别。特点彰显在:1、流程自动化管理,2、代码持续集成和部署、3、协作与沟通便捷性、4、资源管理的高效…

    2024年3月26日
    1700

发表回复

登录后才能评论
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部