Redis 的数据结构详解

阅读时长 6 分钟读完

Redis 是一款高性能的键值存储数据库,广泛应用于 Web 开发中,尤其擅长处理高并发和大规模数据。Redis 支持多种数据结构,包括字符串、哈希表、列表、集合和有序集合等,本文将详细介绍 Redis 的各种数据结构及其使用方法。

字符串

字符串是 Redis 中最基本的数据结构,它可以存储任何类型的数据,如数字、文本、二进制数据等。字符串的最大长度为 512 MB。

常用命令

  • SET key value:设置指定 key 的值。
  • GET key:获取指定 key 的值。
  • INCR key:将指定 key 的值加一。
  • DECR key:将指定 key 的值减一。
  • APPEND key value:将指定值追加到 key 的末尾。
  • STRLEN key:获取指定 key 的值的长度。

示例代码

-- -------------------- ---- -------
------ -----

- -- ----- ---
- - ----------------------------- ---------- -----

- -----
------------- ------

- -----
---- - -------------
-----------

- --
---------------

- -----
---------------- - -- - -----

- -------
------ - ----------------
-------------
展开代码

哈希表

哈希表是一种键值对集合,其中的 key 和 value 都是字符串类型。哈希表适合存储对象,可以将一个对象存储为一个哈希表,每个属性对应一个键值对。

常用命令

  • HSET key field value:设置指定哈希表 key 中的一个字段的值。
  • HGET key field:获取指定哈希表 key 中的一个字段的值。
  • HGETALL key:获取指定哈希表 key 中的所有字段和值。
  • HDEL key field [field ...]:删除指定哈希表 key 中的一个或多个字段。
  • HEXISTS key field:判断指定哈希表 key 中是否存在指定字段。

示例代码

-- -------------------- ---- -------
------ -----

- -- ----- ---
- - ----------------------------- ---------- -----

- -----
---------------- ------- ------
---------------- ------ ---

- -----
---- - ---------------- -------
--- - ---------------- ------
----------- ----

- --------
---- - -------------------
-----------

- ----
---------------- ------

- --------
-- ------------------- -------
    --------- --- ----
-----
    --------- --- -----
展开代码

列表

列表是一种有序集合,其中的元素可以重复。列表适合存储一组相同类型的数据,如日志、消息队列等。

常用命令

  • LPUSH key value [value ...]:将一个或多个值插入到列表头部。
  • RPUSH key value [value ...]:将一个或多个值插入到列表尾部。
  • LPOP key:移除并返回列表的第一个元素。
  • RPOP key:移除并返回列表的最后一个元素。
  • LRANGE key start stop:获取列表指定范围内的元素。

示例代码

-- -------------------- ---- -------
------ -----

- -- ----- ---
- - ----------------------------- ---------- -----

- ----
-------------- -----------
-------------- -----------
-------------- -----------

- ----
--- - --------------- -- ---
----------

- ----
-------------

- ----
--- - --------------- -- ---
----------
展开代码

集合

集合是一种无序集合,其中的元素不可重复。集合适合存储一组唯一的数据,如标签、关键词等。

常用命令

  • SADD key member [member ...]:向集合添加一个或多个成员。
  • SMEMBERS key:返回集合中的所有成员。
  • SISMEMBER key member:判断成员是否是集合的成员。
  • SREM key member [member ...]:移除集合中的一个或多个成员。

示例代码

-- -------------------- ---- -------
------ -----

- -- ----- ---
- - ----------------------------- ---------- -----

- ----
-------------- ---------
-------------- --------
-------------- ------

- ------
---- - ------------------
-----------

- --------
-- ------------------- ----------
    --------- ------ ----
-----
    --------- ------ -----

- ----
-------------- ------

- ------
---- - ------------------
-----------
展开代码

有序集合

有序集合是一种有序集合,其中的元素不可重复,每个元素都会关联一个分值。有序集合适合存储一组有序的数据,如排行榜、评分等。

常用命令

  • ZADD key score member [score member ...]:向有序集合添加一个或多个成员。
  • ZRANGE key start stop [WITHSCORES]:返回有序集合中指定范围内的成员。
  • ZSCORE key member:返回有序集合中指定成员的分值。
  • ZREM key member [member ...]:移除有序集合中的一个或多个成员。

示例代码

-- -------------------- ---- -------
------ -----

- -- ----- ---
- - ----------------------------- ---------- -----

- ----
-------------- ------- ---- -------- --- ------- ----

- ----
---- - ---------------- -- --- ----------------
-----------

- -------
----- - ---------------- ------
------------

- ----
-------------- -------

- ----
---- - ---------------- -- --- ----------------
-----------
展开代码

以上是 Redis 的常用数据结构及其使用方法,希望能对大家的学习和工作有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67d52cc3a941bf713498ed99

纠错
反馈

纠错反馈