Redshift 副本不会将数据插入我的表中

Posted

技术标签:

【中文标题】Redshift 副本不会将数据插入我的表中【英文标题】:Redshift copy doesn't insert data into my table 【发布时间】:2015-11-28 14:34:36 【问题描述】:

我有表 SampleTable

并通过 SQL 客户端 (JackDB) 运行以下 Redshift 命令

copy SampleTable
from 's3://bucket-name/backup/data.csv.gz'
credentials 'aws_access_key_id=xxx;aws_secret_access_key=xxx'
gzip
csv;

命令确实返回

执行成功在 2.771 秒内更新了 0 行。

但没有数据插入到空表SampleTable中

select count(*)
from SampleTabe

返回 0

data.csv.gz中有100MB数据

【问题讨论】:

但是这 100MB 的数据是什么样的呢? 您能给我们举一个您的数据示例吗?该命令本身对我来说看起来不错。我猜你的数据格式可能是一个原因。 @Masashi Miyazaki 感谢您的回复。自己解决了,数据与查询不对应。我应该包含分隔符以覆盖默认值,并包含 IGNOREHEADER 1 以跳过 csv 标头。只是被这种情况下没有记录 stl_load_error 的事实所困扰 @NathanielWaisbrot 感谢您的回复。自己解决了,数据与查询不对应。我应该包含分隔符以覆盖默认值,并包含 IGNOREHEADER 1 以跳过 csv 标头。只是被这种情况下没有记录 stl_load_error 的事实所困扰 【参考方案1】:

自己解决了,数据与查询不对应。

我应该包含分隔符以覆盖默认值,并包含 IGNOREHEADER 1 以跳过 csv 标头。

只是担心在这种情况下没有记录 stl_load_error

【讨论】:

“数据与查询不对应”是什么意思?

以上是关于Redshift 副本不会将数据插入我的表中的主要内容,如果未能解决你的问题,请参考以下文章

Redshift 复制命令追加、替换或更新插入?

创建 Redshift 生产的副本,每个表中的 # 条记录有限

在 AWS Redshift、sql 工作台中手动将数据插入表中

如何将密码存储在 Redshift 的表中?

插入数据:查看哪一列导致 Redshift 上的数字溢出

使用亚马逊管道的红移副本因缺少主键而失败