从 Amazon EMR 中加载数据
您可以使用 COPY 命令从一个具有如下配置的 Amazon EMR 集群并行加载数据:将文本文件作为固定宽度文件、字符分隔文件、CSV 文件或 JSON 格式文件写入到集群的 Hadoop Distributed File System (HDFS)。
从 Amazon EMR 中加载数据的过程
本节演练从 Amazon EMR 集群加载数据的过程。以下各节提供您必须完成每个步骤的详细信息。
-
用户必须拥有必要的权限才能创建 Amazon EMR 集群和运行 Amazon Redshift COPY 命令。
-
将集群配置为将文本文件输出到 Hadoop Distributed File System (HDFS)。您需要 Amazon EMR 集群 ID 和集群的主节点公有 DNS(托管集群的 Amazon EC2 实例的端点)。
-
步骤 3:检索 Amazon Redshift 集群公有密钥和集群节点 IP 地址
公有密钥使 Amazon Redshift 集群节点能够建立与主机的 SSH 连接。您将使用每个集群节点的 IP 地址来配置主机安全组,从而允许使用这些 IP 地址从 Amazon Redshift 集群访问。
-
步骤 4:将 Amazon Redshift 集群公有密钥添加到每个 Amazon EC2 主机的授权密钥文件
您将 Amazon Redshift 集群公有密钥添加到主机的授权密钥文件,以便让主机识别 Amazon Redshift 集群并接受 SSH 连接。
-
步骤 5:将主机配置为接受 Amazon Redshift 集群的所有 IP 地址
修改 Amazon EMR 实例的安全组,以添加接受 Amazon Redshift IP 地址的输入规则。
-
从 Amazon Redshift 数据库运行 COPY 命令,以便将数据加载到 Amazon Redshift 表中。