Redis 数据类型介绍

redis常见数据类型操作命令

redis不是简单的k-v存储,他是一个数据结构服务器,支持不同类型的值。这里的v不仅仅可以是字符串。可以是下面多有别的类型:

  • 二进制安全的字符串
  • Lists: 按插入顺序排序的字符串元素的集合。他们基本上就是链表(linked lists)
  • Sets: 不重复且无序的字符串元素的集合。
  • Sorted sets,类似Sets,但是每个字符串元素都关联到一个叫score浮动数值(floating number value)。里面的元素总是通过score进行着排序,所以不同的是,它是可以检索的一系列元素。(例如你可能会问:给我前面10个或者后面10个元素)。
  • Hashes,由field和关联的value组成的map。field和value都是字符串的。这和Ruby、Python的hashes很像。
  • Bit arrays (或者说 simply bitmaps): 通过特殊的命令,你可以将 String 值当作一系列 bits 处理:可以设置和清除单独的 bits,数出所有设为 1 的 bits 的数量,找到最前的被设为 1 或 0 的 bit,等等。
  • HyperLogLogs: 这是被用于估计一个 set 中元素数量的概率性的数据结构。别害怕,它比看起来的样子要简单…参见本教程的 HyperLogLog 部分。D

五大数据类型

Redis Strings

  • string类型是redis最基本的数据类型,可以理解与memchaed的一样的类型,一个key一个value
  • 二进制县城安全的。(redis的string可以包含任意类型的数据,包括jpg图片或者序列化的对象)
  • 一个字符串的value最大是512M

Redis Lists

  • 底层是链表类型
  • 是简单的字符串列表,按照插入顺序排序,可以插在头部、尾部

Redis Hashes 

  • hash 类似java的map
  • 键值对集合
  • string类型的field和value的映射表,hash特别适用于存储对象

Redis Sets

  • string类型的无序集合。通过HashTable实现的

Redis Sorted sets

  • 和set一样也是string类型的集合,切不允许重复的成员
  • 有序的
  • 不同的是每个元素都会关联一个double类型的分数
  • 通过分数来为集合中的成员进行从小到大的排序。成员是唯一的,但分数(score)却可以重复。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!