1

如何将 CSV 文件从 S3 存储桶复制到 Redshift 并避免重复行?我已阅读有关复制命令的信息,但没有找到任何有关通过 PHP SDK 使用它的文档。

4

1 回答 1

2

PHP SDK 旨在运行管理任务(与 Web 控制台相同)。

为了加载数据,只需使用 PostgreSQL 连接器连接到数据库并运行 COPY 查询。

避免重复行是另一个问题 - 目前 redshift 不强制执行 UNIQUE 约束,因此源文件中存在的任何行都将添加到目标表中(即使已经存在相同的 UNIQUE 值)。

文档提供了一些提示如何仅导入新行,例如:

  1. 将数据复制到 temp_table 中;

  2. 仅插入新数据:

INSERT INTO dest_table (
  SELECT * from temp_table
  WHERE key NOT IN (
    SELECT key FROM dest_table
  )
)
于 2013-06-05T10:40:54.353 回答