Skip to content

Redis 虽然提供了多种数据类型,但是实际使用时都可以用 String 来做通过 Java 代码的序列化成 JSON 字符串存入 Redis。

  • 数据类型

    • String :可以实现像计数器,分布式 ID,分布式锁,等业务场景
      • 常用的命令: set、get 等
      • 是一种最常用的数据类型,普通的 keyValue 数据都可以用 string 来存储
      • String 类型在 Redis 中就是用 C 构建的一个字符串
    • Hash: 适合存储对象,KV 结构
      • 常用命令:hget、hset、hgetall 等
    • List: 有序可重复,是一个列表
    • Set:无序不可重复
    • ZSet: 可以实现排行榜

String

Redis 字符串是最基本的 Redis 数据类型,表示字节序列。

List

Redis 列表是按插入顺序排序的字符串列表。

Set

唯一字符串的无序集合,其作用类似于您最喜欢的编程语言中的集。 使用 Redis 集合,您可以在 O(1) 时间内添加、删除和测试是否存在(换句话说,无论集合元素的数量有多少)。

Hash

字段值对集合的记录类型。因此 Redis 哈希类似于 Java 中的 HashMap

ZSet (SortedSet)

唯一字符串的集合,它们通过每个字符串的关联分数来维护顺序

底层是通过跳表来实现的,跳表的实现原理 参考《数据结构》中 跳表章节

Stream

类似于仅附加日志。流有助于按事件发生的顺序记录事件,然后将它们联合起来进行处理。

Geo (Geospatial Index)

对于查找给定地理半径或边界框内的位置非常有用。

BitMap

对字符串执行按位运算。

BitFields

对字符串值中的多个计数器进行编码。位域提供原子获取、设置和增量操作,并支持不同的溢出策略。

HyperLogLog

提供大型集合的基数(即元素数量)的概率估计

Extension

支持自定义,通过 Lua 脚本、或者使用模块 API

waitingresult.com