第 5 章 数据导入 数据导入:加载数据
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
在第 4 章中,您从所需的源系统中提取了数据。 现在是时候将数据加载到 Redshift 数据仓库中,从而完成数据摄取了。如何加载数据取决于数据提取的输出结果。在本节中,我将介绍如何将提取的数据加载到 CSV 文件(其中包含与表格中每一列相对应的数值),以及包含 CDC 格式数据的提取输出。
将 Amazon Redshift 仓库配置为目的地
如果您使用 Amazon Redshift作为数据仓库,那么与 S3 集成以在提取数据后加载数据是非常简单的。 第一步是创建一个用于加载数据的 IAM 角色(如果还没有的话)。
备注
有关设置 Amazon Redshift 集群的说明,请查看最新的文档和定价,包括免费试用。
要创建角色,请按照以下说明操作,或查看AWS 文档了解最新详情:
-
在 AWS 控制台(或顶部导航栏)的 "服务 "菜单下,导航至 IAM。
-
在左侧导航菜单上选择 "角色",然后单击 "创建角色 "按钮。
-
您将看到一个 AWS 服务列表供您选择。找到并选择 Redshift。
-
在 "选择用例 "下,选择 Redshift - 可定制。
-
在下一页(附加权限策略),搜索并选择 AmazonS3ReadOnlyAccess,然后单击下一步。
-
为角色命名(例如,"RedshiftLoadRole"),然后单击 "创建角色"。
-
单击新角色的名称,并复制角色的亚马逊资源名称(ARN),以便在本章后面的内容中使用。你还可以在 IAM 控制台的角色属性下找到它。ARN 看起来像这样:
arn:aws:iam::<aws-account-id>:role/<role-name>.
现在,您可以将刚刚创建的 IAM 角色与 Redshift 群集关联起来。为此,请按照以下步骤操作,或查看Redshift 文档了解更多详情。
备注
您的群集需要一两分钟来应用更改,但在此期间仍可访问。
-
返回 AWS Services 菜单,转到 Amazon Redshift。
-
在导航菜单中选择群集,然后选择要加载数据的群集。
-
在 "操作 "下单击 "管理 IAM 角色"。
-
在加载的 "管理 IAM 角色 "页面上,你可以在 "可用角色 "下拉菜单中选择你的角色。然后点击 "添加 IAM 角色"。
-
单击完成。
最后,在您在"设置云文件存储 "中创建的pipeline.conf文件中添加另一个部分,其中包含您的 Redshift 凭据和您刚刚创建的 IAM 角色的名称。您可以在 AWS Redshift 控制台页面上找到您的 Redshift 集群连接信息:
[aws_creds] database = my_warehouse username = pipeline_user password = weifj4tji4j host = my_example.4754875843.us-east-1.redshift.amazonaws.com port = 5439 iam_role = RedshiftLoadRole ...