redis的崛起绝非偶然,它确实有自己的新东西在里面,它不像Memcached,只能将数据存储在内存中,它提供了持久化机制和数据同步,避免了宕机后的雪崩的问题,即服务器出现问题后,内存中保留的原始数据全部丢失,需要重新组织数据到内存,这时,Memcached会经历一个很慢的过程。
Redis支持持久化只是它的一件武器,另外,Redis针对不同的需求也提供了多达5种数据存储方式,以最大效率上的实现你的需求,下面介绍一下这几种数据类型:
一 string(字符串)
string是最简单的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value,其上支持的 *** 作与Memcached的 *** 作类似。但它的功能更丰富。
二 list(双向链表)
list是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等。之所以说它是双向的,因为它可以在链表左,右两边分别 *** 作
三 dict(hash表)
set是集合,和我们数学中的集合概念相似,对集合的 *** 作有添加删除元素,有对多个集合求交并差等 *** 作。 *** 作中key理解为集合的名字
四 zset(排序set)
zset是set的一个升级版本,他在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。 可以对指定键的值进行排序权重的设定,它应用排名模块比较多
五 Hash类型
Redis能够存储key对多个属性的数据(比如user1.uname user1.passwd),当然,你完成可以把这些属性以json格式进行存储,直接把它当作string类型进行 *** 作,但这样性能上是对影响的,所以redis提出的Hash类型。
以上就是Redis支持哪几种数据结构的详细内容,
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)