开始使用 Amazon RDS 与 Amazon Redshift 的零 ETL 集成
这是 Amazon RDS 与 Amazon Redshift 的零 ETL 集成的预发布文档,该集成已提供预览版。文档和特征都可能会更改。我们建议您仅在测试环境中使用此特征,不要在生产环境中使用。有关预览条款和条件,请参阅 Amazon 服务条款 |
在创建与 Amazon Redshift 的零 ETL 集成之前,请使用所需的参数和权限配置您的 RDS 数据库和 Amazon Redshift 数据仓库。在安装过程中,您将完成以下步骤:
完成这些步骤后,请继续执行创建 Amazon RDS 与 Amazon Redshift 的零 ETL 集成。
步骤 1:创建自定义数据库参数组
Amazon RDS 与 Amazon Redshift 的零 ETL 集成需要为控制二进制日志记录(binlog)的数据库参数提供特定值。要配置二进制日志记录,必须先创建自定义数据库参数组,然后将其与源数据库关联。
使用以下设置创建自定义数据库参数组。有关创建参数组的说明,请参阅使用数据库实例中的数据库参数组。
-
binlog_format=ROW
-
binlog_row_image=full
-
binlog_checksum=NONE
此外,请确保 binlog_row_value_options
参数未设置为 PARTIAL_JSON
。
步骤 2:选择或创建源数据库
创建自定义数据库参数组后,选择或创建一个 RDS for MySQL 单可用区或多可用区数据库实例。该数据库将成为向 Amazon Redshift 复制数据的源。
该数据库必须运行 RDS for MySQL 版本 8.0.32 或更高版本。有关创建单可用区或多可用区数据库实例的说明,请参阅创建 Amazon RDS 数据库实例。
在其它配置下,将默认的数据库参数组更改为您在上一步中创建的自定义参数组。
注意
如果您在已创建数据库之后 将参数组与数据库关联,则必须重启数据库以应用更改,然后才能创建零 ETL 集成。有关说明,请参阅 重启中的数据库实例。
此外,请确保对数据库启用了自动备份。有关更多信息,请参阅 启用自动备份。
步骤 3:创建目标 Amazon Redshift 数据仓库
创建源数据库后,必须在 Amazon Redshift 中创建和配置目标数据仓库。数据仓库必须满足以下要求:
-
在预览版中创建
-
使用 RA3 节点类型(
ra3.xlplus
、ra3.4xlarge
或ra3.16xlarge
)以及至少两个节点或 Redshift Serverless。 -
已加密(如果使用预置集群)。有关更多信息,请参阅 Amazon Redshift 数据库加密。
有关创建数据仓库的说明,请参阅预调配集群的创建集群或 Redshift Serverless 的创建带命名空间的工作组。
在数据仓库上启用区分大小写
要使集成成功,必须为数据仓库启用区分大小写参数(enable_case_sensitive_identifier
)。默认情况下,所有预调配集群和 Redshift Serverless 工作组均禁用区分大小写。
要启用区分大小写,请根据您的数据仓库类型执行以下步骤:
-
预调配集群 – 要在预调配集群上启用区分大小写,请创建一个启用
enable_case_sensitive_identifier
参数的自定义参数组。然后,将该参数组与集群关联。有关说明,请参阅使用控制台管理参数组或使用 Amazon CLI 配置参数值。注意
将自定义参数组与集群关联后,请记得重启集群。
-
无服务器工作组 - 要在 Redshift Serverless 工作组上启用区分大小写,必须使用 Amazon CLI。Amazon Redshift 控制台目前不支持修改 Redshift Serverless 参数值。发送以下 update-workgroup 请求:
aws redshift-serverless update-workgroup \ --workgroup-name
target-workgroup
\ --config-parameters parameterKey=enable_case_sensitive_identifier,parameterValue=true修改参数值后,无需重启工作组。
为数据仓库配置授权
创建数据仓库后,必须将源 RDS 数据库配置为授权的集成源。有关说明,请参阅为您的 Amazon Redshift 数据仓库配置授权。
后续步骤
借助源 RDS 数据库和 Amazon Redshift 目标数据仓库,您可以创建零 ETL 集成并复制数据。有关说明,请参阅 创建 Amazon RDS 与 Amazon Redshift 的零 ETL 集成。