我使用AWS Kinesis Firehose将文件写入S3,后者又加载到Redshift中。我的表上有一个TIMESTAMP列:
$mdOpenMenu
Firehose中的Redshift COPY选项提供了列的格式:
create table TABLE_NAME
(
...
COLUMN_NAME TIMESTAMP,
...
)
COLUMN_NAME的数据并不总是填充。在这种情况下,我将TIMESTAMP列的数据设置为空字符串。发生这种情况时,我看到Redshift加载错误,错误代码为1206:
DELIMITER '\t' GZIP DATEFORMAT AS 'YYYYMMDD' TIMEFORMAT AS 'YYYYMMDDHH24MISS' MAXERROR 1000
有趣的是,我的负荷仍在继续。这个TIMESTAMP列的空字符串记录仍然可以正常加载到我的Redshift表中,但我一直看到这些错误记录到Invalid timestamp format or value [YYYYMMDDHH24MISS]
表中。
是否有Redshift COPY选项我应该设置忽略这些错误?我应该设置一个关键字而不是数据中的空白字符串吗?