从列式数据格式中执行 COPY 操作 - Amazon Redshift

从列式数据格式中执行 COPY 操作

COPY 可采用以下列式格式从 Amazon S3 中加载数据:

  • ORC

  • Parquet

有关从列式数据格式中使用 COPY 的示例,请参阅COPY 示例

COPY 支持具有以下限制的列式数据:

  • Amazon S3 桶必须与 Amazon Redshift 数据库位于同一 AWS 区域。

  • 要通过 VPC 端点访问您的 Amazon S3 数据,请使用 IAM 策略和 IAM 角色设置访问权限,如《Amazon Redshift 管理指南》中的将 Amazon Redshift Spectrum 与增强 VPC 路由结合使用中所述。

  • COPY 不自动应用压缩编码。

  • 仅支持以下 COPY 参数:

  • 如果 COPY 在加载时遇到错误,则命令失败。列式数据类型不支持 ACCEPTANYDATE 和 MAXERROR。

  • 错误消息发送至 SQL 客户端。一些错误记录在 STL_LOAD_ERRORS 和 STL_ERROR 中。

  • COPY 会按列在列式数据文件中出现的相同顺序将值插入到目标表的列中。目标表中的列数和数据文件中的列数必须匹配。

  • 如果您为 COPY 操作指定的文件包含下列扩展名之一,我们将解压缩数据,而无需添加任何参数:

    • .gz

    • .snappy

    • .bz2

  • 从 Parquet 和 ORC 文件格式的 COPY 操作使用 Redshift Spectrum 和桶访问。要对这些格式执行 COPY 操作,请确保没有任何阻止使用预签名 URL 的 IAM 策略。有关更多信息,请参阅将 Amazon Redshift Spectrum 与增强型 VPC 路由结合使用