JSON

Redis 开源版为 Redis 数据库增加了对 JSON 的支持。

Redis 开源版为 Redis 数据库增加了对 JSON 数据结构的支持。

使用 源可用版 RedisJSON 开发的应用与启用 JSON 的 Redis Enterprise 数据库完全兼容。

JSON 路径

路径允许您从根开始遍历 JSON 文档的结构,并且只与您想要的数据进行交互。您还可以使用路径对特定的 JSON 元素执行操作。

由于没有标准的 JSON 路径语法,Redis 开源版实现了自己的语法。

JSONPath 语法

RedisJSON v2.0 及更高版本支持 JSONPath 语法,该语法类似于 Goessner 的设计

  • 路径以美元符号 ($) 开头,表示 JSON 文档的根。

  • 请参阅 JSONPath 语法表,了解如何访问 JSON 文档中的各种元素。

以下路径引用了 headphones,它是根下 inventory 的子元素。

$.inventory.headphones

请参阅 JSONPath 示例,了解更复杂语法的示例。

传统路径语法

传统路径语法指的是 RedisJSON v1 中的路径实现。RedisJSON v2 除了 JSONPath 语法外,仍然支持此传统路径语法。

传统路径语法的工作方式如下:

  • 句点字符表示根。

  • 对于指向根子元素的路径,可以选用句点作为前缀。

  • 支持点表示法和括号表示法来访问 JSON 对象的键。

以下路径引用了 headphones,它是根下 inventory 的子元素:

.inventory.headphones

inventory["headphones"]

['inventory']["headphones"]

键名规则

只有当 JSON 键名符合以下命名语法规则时,您才能使用传统路径语法来访问它们:

  • 键名必须以字母、美元符号 ($) 或下划线 (_) 开头。
  • 键名可以包含字母、数字、美元符号和下划线。
  • 键名区分大小写。

索引和搜索 JSON 文档

您可以索引、搜索和查询存储的 JSON 文档。

有关如何搜索和查询 JSON 文档的更多信息,请参阅快速入门

主动-主动数据库中的 JSON

RedisJSON v2.2 及更高版本在主动-主动 Redis Enterprise 数据库中支持 JSON 数据结构作为无冲突复制数据类型 (CRDT)

有关 Redis Enterprise 如何解决副本同步时可能出现的 JSON 操作冲突的详细信息,请参阅 JSON 冲突解决规则

更多信息

评价此页面
返回顶部 ↑