redis数据类型

注:本文都是对官方文档的搬运: 

https://redis.io/documentation

https://redis.io/topics/data-types-intro


 

Redis的数据类型

Redis支持五种数据类型:Strings(字符串)、Hashes(哈希)、Lists(列表)、Sets(集合)、Sorted sets(有序集合)。

Strings

redis最基本的数据类型,是二进制安全,即可以存储任何数据,因为任何数据都能转换为二进制数据。但是字符串的值最大为512M。

常用操作:

  • 原子计数器:利用INCR, DECR, INCRBY,DECRBY命令可以实现原子增减操作。
  • 字符串追加:使用APPEND命令附加到字符串末尾。
  • 下标操作: GETRANGE 获取指定下标字符串 和 SETRANGE在指定下标插入一个字符串
  • 布隆过滤器:GETBIT和SETBIT创建布隆过滤器,占用空间小。

Lists

字符串列表,双向链表实现的双端队列,可在头部和尾部分别进行入队和出队的操作,具备队列和栈的功能。列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。

基于lists可以实现消息队列。

Sets

无序的字符串集合。以O(1) 的时间复杂度(无论集合中有多少元素时间复杂度都为常量)完成 添加,删除以及测试元素是否存在的操作。

Sets不允许重复数据,所以可以实现字符串去重的功能。

Sets可以实现取交集、并集、差集、获取随机元素的功能。

Sets可以统计访问人数

Hashes

字符串字段和字符串值之间的映射,可以存储对象的数据类型。

一个拥有少量(100个左右)字段的hash需要 很少的空间来存储,所有你可以在一个小型的 Redis实例中存储上百万的对象。

 

Sorted sets

排序的Sets,O(log(N))完成添加,删除和更新元素的操作,插入时就排好序。

可以实现动态的排行榜。

可以对数据进行排序,然后分页获取数据。

 

上一篇:Redis介绍


下一篇:ES6 新增集合----- Set 和Map