我在 S3 上有一组文件,我正试图将它们加载到 redshift 中。我正在使用亚马逊数据管道来做到这一点。向导获取了集群、数据库和文件格式信息,但我收到错误消息,需要主键才能将表中的现有字段 ( KEEP_EXISTING
) 保留在表中
我的表架构是:
create table public.Bens_Analytics_IP_To_FileName(
Day date not null encode delta32k,
IP varchar(30) not null encode text255,
FileName varchar(300) not null encode text32k,
Count integer not null)
distkey(Day)
sortkey(Day,IP);
所以然后我在表上添加了一个复合主键,看看它是否可以工作,但我得到了同样的错误。
create table public.Bens_Analytics_IP_To_FileName(
Day date not null encode delta32k,
IP varchar(30) not null encode text255,
FileName varchar(300) not null encode text32k,
Count integer not null,
primary key(Day,IP,FileName))
distkey(Day)
sortkey(Day,IP);
所以我决定添加一个标识列作为最后一列,并将其作为主键,但是 COPY 操作需要输入文件中该标识列的值,这没有多大意义
理想情况下,我希望它在没有主键或复合主键的情况下工作
有任何想法吗?
谢谢