码迷,mamicode.com
首页 > 其他好文 > 详细

Redis——五种数据类型

时间:2015-07-31 18:28:43      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

       Redis共有strings、hashs、lists、sets、sorted sets五种数据类型,可以说已经比较丰富了。下面只对这几种数据类型的数据结构与用途做简要介绍。至于每种数据类型的操作API,这里只简单一提,不再一一详细介绍,有需要的用户可以Google即可。

一、    strings

       string是最简单的类型,一个Key对应一个Value。string类型是类型安全的,Redis的string可以包含任何数据,比如jpg图片或者序列化的对象。存储结构如下:


      技术分享


  常用的API函数有:


  技术分享


二、    lists(栈/队列)

       List是一个链表结构,主要功能是push/pop,获取一个范围的所有值等等。操作中key就理解为链表的名称。Redis的list类型其实就是每一个子元素都是string类型的双向链表。我们可以通过push、pop操作从链表的头部或者尾部添加、删除元素,这样list既可以做栈又可以做队列。存储结构如下:


      技术分享


  常用的API函数有:


  技术分享


      

三、    hashs

       Redis的hash是一个string类型的field和value的映射表。五种数据类型中,只有hash是二维的,它特别适合存储对象。相较于将对象的每个字段属性存为单个string类型。将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象。存储结构如下:


      技术分享


  常用的API函数有:


  技术分享


      

四、    sets

       sets是集合,它是string类型的无序集合。set是通过hash table实现的。它非常类似数学中的集合,所以我们可以取并集、差集、交集。通过这些操作我们可以实现sns中的好友推荐和blog中的tag功能。存储结构如下:


      技术分享


  常用的API函数有:


  技术分享


      

五、    sorted sets

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


  技术分享


  常用的API函数有:


  技术分享


  五种数据类型已介绍完毕,下面给出常用的键值命令与服务器命令:

  

六、    键值相关命令


      技术分享


七、    服务器相关命令

  技术分享

      

八、    五种数据类型存储结构全貌

   技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

Redis——五种数据类型

标签:

原文地址:http://blog.csdn.net/wang379275614/article/details/47172469

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!