快速开始
从一个简单的管道示例开始
在本教程中,您将学习如何安装RDI并设置一个管道,以将实时数据从PostgreSQL数据库摄取到Redis数据库中。
先决条件
- 一个将作为管道目标的Redis Enterprise数据库。将要摄取的数据集大小相当小,因此单个分片数据库应该足够。RDI还需要在集群上维护自己的数据库以存储状态信息。这需要Redis Enterprise v6.4或更高版本。
- Redis Insight 编辑您的管道
- 具有以下操作系统之一的虚拟机(VM):
- Ubuntu 20.04 或 22.04
- RHEL 8 或 9
概述
下图展示了我们将要创建的管道的结构(请参阅架构概述以了解管道的工作原理):

在这里,RDI 收集器 跟踪PostgreSQL中的变化,并将它们写入Redis中的RDI数据库流中。然后,流处理器 从RDI数据库流中读取数据记录,处理它们,并将它们写入目标。
安装 PostgreSQL
我们提供了一个Docker镜像,用于示例的PostgreSQL数据库,我们将在教程中使用它。请按照我们Github页面上的说明下载镜像并启动数据库服务。这个名为chinook
的数据库包含了一个虚构的在线音乐商店的模式和数据,并且已经设置为供RDI收集器使用。
安装RDI
使用VM安装指南中的说明安装RDI。
RDI 将为您选择的源数据库类型创建管道模板,位于
/opt/rdi/config
。在准备部署管道时,您将需要此路径名
(请参阅下面的准备管道)。
在安装结束时,RDI CLI 将提示您设置源 PostgreSQL 数据库和 Redis RDI 数据库的访问密钥。RDI 需要这些来运行管道。
使用Redis控制台创建RDI数据库,需满足以下要求:
- 一个具有125MB RAM的单分片数据库对于快速入门来说已经足够,但如果您想添加一个副本,请将其增加到250MB。
- 为安装提供所需的RDI数据库详细信息。
- 将数据库的
淘汰策略设置为
noeviction
,并将 数据持久化 设置为AOF - 每秒同步一次。 - 确保RDI数据库不是集群的。 如果RDI数据库是集群的,RDI将无法正常工作,但目标数据库可以是集群的。
准备管道
在安装过程中,RDI 将管道模板放置在 /opt/rdi/config
目录下。
如果您进入该文件夹并运行 ll
命令,您将看到管道
配置文件 config.yaml
和 jobs
文件夹(有关更多信息,请参阅
Pipelines 页面)。使用 Redis Insight 打开
config.yaml
文件,然后编辑以下设置:
- 将
host
设置为localhost
,并将port
设置为5432。 - 在
tables
下,指定源数据库中的Track
表。 - 将目标数据库的详细信息添加到
target
部分。
此时,管道已准备好部署。
创建上下文(可选)
要管理和检查RDI,您可以使用
redis-di
CLI命令,该命令有几个用于不同目的的子命令。大多数这些命令要求您
至少传递两个选项,--rdi-host
和 --rdi-port
,以指定您的
RDI安装的主机和端口。您可以通过将信息保存在上下文中
来避免重复输入这些选项。
当你激活一个上下文时,保存的--rdi-host
、--rdi-port
以及其他一些选项的值会在你使用redis-di
时自动传递。如果你有多个RDI安装,你可以为每个安装创建一个上下文,并使用其唯一名称选择你想要激活的那个。
要创建一个上下文,请使用
redis-di add-context
命令:
redis-di add-context --rdi-host <host> --rdi-port <port> --cluster-host <Redis DB host> --cluster-api-port <Redis DB API port> --cluster-user <Redis DB username> <unique-context-name>
这些选项是必需的,但您还可以保存一些其他选项,例如TLS凭据(如果您正在使用它们,请参阅参考页面了解详情)。当您创建了一个上下文后,使用redis-di set-context
来激活它:
redis-di set-context <context name>
部署管道
你可以使用Redis Insight通过添加连接到RDI API端点(该端点与你的RDI虚拟机具有相同的IP地址并使用端口8083)来部署管道,然后点击部署按钮。你也可以使用以下命令进行部署:
redis-di deploy --dir <path to pipeline folder>
其中路径是您在安装过程中提供的路径。(如果您没有使用如上所述的context,您可能还需要提供--rdi-host
和--rdi-port
选项。)RDI首先验证您的管道,如果配置正确,则部署它。
一旦管道开始运行,您可以使用Redis Insight通过管道指标查看数据流。您还可以连接到目标数据库,查看RDI写入的键。
请参阅部署管道以获取有关部署设置的更多信息。
查看RDI对数据变化的响应
一旦管道从源加载了所有现有数据的快照,它就会进入变更数据捕获(CDC)模式(有关更多信息,请参阅架构概述和摄取管道生命周期)。
要查看RDI管道在CDC模式下的工作情况:
- 在源数据库上创建模拟负载 (参见Generating load on the database 了解如何执行此操作)。
- 运行
redis-di status --live
以查看记录流。 - 使用Redis Insight查看目标数据库中的数据。