Redis 数据集成

这是 Redis 数据集成 (RDI) 的第一个正式发布版本。

RDI 的目的是帮助 Redis 客户将 Redis Enterprise 与来自其基于慢速磁盘的数据库的实时数据同步,以便:

  • 满足所需的读取查询速度和规模,并提供出色且可预测的用户体验。
  • 在构建管道和编码数据转换时节省资源和时间。
  • 通过节省昂贵的数据库只读副本费用来降低总拥有成本。

如果您使用关系数据库作为应用程序的记录系统, 您最终可能会发现 它的性能不能随着用户群的增长而很好地扩展。可能是 对于几千个用户来说是可以接受的,但对于几百万用户来说,它可以变成一个 主要问题。如果您无法选择放弃关系 数据库,您应该考虑使用快速的 数据库(如 Redis)缓存来自读取查询的数据。由于 read 查询 通常比写入更常见,则缓存将大大 提高性能,让您的应用程序无需进行重大重新设计即可扩展。

RDI 使用变更数据捕获 (CDC) 机制使 Redis 缓存与主数据库中的更改保持同步。 它还允许您将关系表中的数据转换为方便的 以及符合您应用程序要求的快速数据结构。您可以指定 转换,因此无需编码。

注意:
Redis 数据库或 CRDB(主动主动复制)目标支持 RDI。

特征

RDI 为企业级流数据管道提供以下功能:

  • 近乎实时的管道 - CDC 系统在非常短的时间间隔内捕获更改, 然后以微批处理方式交付和处理它们,以便为 Redis 提供近乎实时的更新。
  • 至少一次保证 - RDI 将至少对所选数据集进行任何更改 一次到目标 Redis 数据库。
  • 数据完整性 - RDI 保留每个源表或唯一键的数据更改顺序。
  • 高可用性 - 所有无状态组件都具有热故障转移或快速自动恢复功能。 使用 Redis Enterprise 复制时,RDI 状态始终具有高可用性。
  • 易于安装和作 - 使用自文档命令行界面 (CLI) 适用于所有安装和第二天作。
  • 无需编码 - 使用 Redis Insight 创建和测试您的管道。
  • 传输中数据加密 - RDI 从不将数据保存到磁盘。所有动态数据均为 使用 TLS 或 mTLS 连接进行保护。
  • 可观测性 - 指标 - RDI 以源表粒度收集数据处理计数器 以及数据处理性能指标。这些可通过 GUI、CLI 和 Prometheus 终端节点获得。
  • 可观察性 - 日志 - RDI 将轮换日志保存到单个文件夹中。它们采用 JSON 格式, 因此,您可以使用自己喜欢的可观测性工具收集和处理它们。
  • 背压机制 - RDI 旨在在缓存获取 disconnected,这可以防止级联故障。由于更改数据保存在源中 数据库和 Redis 的速度非常快,RDI 可以在短时间内轻松赶上错过的更改 断开。有关更多信息,请参阅背压机制
  • 从完全故障中恢复 - 如果缓存失败或长时间断开连接, RDI 可以使用已定义数据集的完整快照在 Redis 中重建缓存数据。
  • 高吞吐量 – 由于 RDI 使用 Redis 进行暂存并写入 Redis 作为目标, 它具有非常高的吞吐量。具有单个处理器内核和大小约为 1KB 的记录, RDI 每秒处理大约 10000 条记录。在拍摄 源数据库,RDI 会自动扩展到可配置的处理单元数量, 以尽快填充缓存。

何时使用 RDI

RDI 旨在支持必须使用基于磁盘的数据库作为记录系统的应用程序 但也必须快速且可扩展。这是移动和 Web 的常见要求 用户数量快速增长的应用程序;主数据库的性能一开始很好 但是,如果没有缓存,它很快就会难以处理不断增长的需求。

在以下情况下,您应该使用 RDI:

  • 您必须使用慢速数据库作为应用程序的记录系统 。
  • 应用程序必须始终将其数据写入慢速数据库。
  • 您已经打算将 Redis 用于应用程序缓存。
  • 数据以较小的增量频繁更改。
  • 您的应用程序可以容忍 Redis 缓存中数据的最终一致性。

在以下情况下不应使用 RDI:

  • 您只需将现有数据集迁移到 Redis 中一次。
  • 数据不经常更新,并且会大批量更新。
  • 您的应用需要即时缓存一致性,而不是最终一致性。
  • 数据同时从 Active-Active 的两个副本中提取。
  • 应用程序必须将数据写入 Redis 缓存,然后 Redis 缓存会更新源数据库。
  • 您的数据集永远不会很小。

支持的源数据库

RDI 可以从以下任何来源捕获数据:

数据库 版本 AWS RDS 版本 GCP SQL 版本
神谕 12c、19c、21c 19c、21c -
MariaDB的 10.5, 11.4.3 10.4 到 10.11、11.4.3 -
MySQL (MySQL的 5.7、8.0.x、8.2 8.0.x 版本 8.0
PostgreSQL 数据库 10, 11, 12, 13, 14, 15, 16 11, 12, 13, 14, 15, 16 15
SQL 服务器 2017, 2019, 2022 2016, 2017, 2019, 2022 2019
AlloyDB PostgreSQL 版 14.2, 15.7 - 14.2, 15.7
AWS Aurora/PostgreSQL 15 15 -

文档

从本节中的其他页面了解有关 RDI 的更多信息: