「Redis」- 数据类型及操作

String、List、Set、Hash、Sorted set、Bitmap(Bit array, Simply bitmap)、HyperLogLog、Stream

String

是最基本的类型。

结构:KEY VALUE

命令:GET, SET

List

是简单的字符串列表,按照插入顺序排序。可以向列表“头部”或者列表“尾部”添加新元素。

结构:KEY VALUE [VALUE …]

命令:LPUSH, LRANGE

Set

是String类型的无序集合,通过哈希表实现,不存在重复元素。

结构:KEY VALUE0 [VALUE1 …]

命令:SADD, SMEMBERS

值不能够重复。如果元素已经存在,不会再次添加。

Sorted set

也是String类型的集合,不存在重复元素。每个元素都有一个分数,以实现排序。

结构:KEY SCORE MEMBER [SCORE MEMBER …]

命令:ZADD, ZRANGEBYSCORE

值不能够重复。如果元素已经存在,不会再次添加。

Hash

是键值对集合。

结构:KEY FIELD VALUE [FIELD VALUE …]

命令:HMSET, HGET

Bitmap(Simply bitmap, Bit array)

是基于String类型的数据类型,但是有自己的语义。

使用特殊命令,可以像处理“位数组(bit array)”一样处理字符串值:设置和清除各个位、统计所有设置为1的位、查找第一个设置或未设置的位等等。

HyperLogLog

也是基于String类型的数据类型,但是有自己的语义。

这是一种概率数据结构,用于估计集合的基数。 它比看起来更简单…参阅手册的「HyperLogLog」部分。

Stream

“仅追加”的“类MAP的条目”的集合,它们提供抽象日志数据类型。参考「Introduction to Redis Streams」中的详细介绍。

参考文献

Redis 数据类型
Data types
An introduction to Redis data types and abstractions