从远程主机中加载数据 - Amazon Redshift

从远程主机中加载数据

您可使用 COPY 命令从一个或多个远程主机并行加载数据,例如 Amazon EC2 实例或其他计算机。COPY 将连接到使用 SSH 的远程主机并在远程主机上运行命令以生成文本输出。

远程主机可以是 Amazon EC2 Linux 实例或配置为接受 SSH 连接的另一台 Unix 或 Linux 计算机。本指南假定您的远程主机是 Amazon EC2 实例。如果过程与其他计算机不同,指南中将会指出差别。

Amazon Redshift 可连接到多台主机,并可以打开到每台主机的多个 SSH 连接。Amazon Redshift 会通过每个连接发送一个唯一命令来生成到主机标准输出的文本输出,然后 Amazon Redshift 会像读取文本文件一样读取它。

开始前的准备工作

在开始之前,您应做好以下准备:

  • 您可使用 SSH 连接的一个或多个主机(如 Amazon EC2 实例)。

  • 主机上的数据源。

    您将提供一些命令,Amazon Redshift 集群将在主机上运行这些命令以生成文本输出。在集群连接到主机后,COPY 命令将运行这些命令,从主机的标准输出中读取文本,并将数据并行加载到 Amazon Redshift 表中。文本输出必须采用 COPY 命令可提取的形式。有关更多信息,请参阅准备输入数据

  • 从您的计算机访问主机的权限。

    对于 Amazon EC2 实例,您将使用 SSH 连接来访问主机。您必须访问主机以将 Amazon Redshift 集群的公有密钥添加到主机的授权密钥文件。

  • 正在运行的 Amazon Redshift 集群。

    有关如何启动集群的信息,请参阅 Amazon Redshift 入门指南

加载数据的过程

本节指导您完成从远程主机加载数据的过程。以下各节提供每个步骤中必须完成的操作的详细信息。