【发布时间】:2021-05-05 11:45:42
【问题描述】:
我正在将我的数据从 s3 加载到 redshift。我注意到红移错误日志中查询中的数据类型发生了变化。
这是我正在创建的表...
main_covid_table_create = ("""
CREATE TABLE IF NOT EXISTS main_covid_table(
SNo INT IDENTITY(1, 1),
ObservationDate DATE,
state VARCHAR,
country VARCHAR,
lastUpdate DATE,
Confirmed DOUBLE PRECISION,
Deaths DOUBLE PRECISION,
Recovered DOUBLE PRECISION
)
""")
复制命令为
staging_main_covid_table_copy = ("""
COPY main_covid_table
FROM {}
iam_role {}
DELIMITER ','
IGNOREHEADER 1
DATEFORMAT AS 'auto'
NULL AS 'NA'
""").format(COVID_DATA, IAM_ROLE)
运行脚本后,我从 redshift 中得到了他的错误:
我对这个错误的解释是lastUpdate的数据类型被用于国家列。有人可以帮忙吗?
【问题讨论】:
-
请为输入文件中的
lastUpdate字段提供一些示例值。 -
谢谢@JohnRotenstein。
lastUpdate看起来像这样 2020-01-22 17:00:00, 2021-01-20 05:21:54 -
你能发布几行你的源数据文件(如果可能的话,包括失败的行)?看起来您的表列定义和输入文件中的数据组织没有保持一致。源数据中的分隔符或没有分隔符的缺失值可能会导致此问题。查看 Redshift 尝试处理的数据将有助于我们更好地评估问题所在。
标签: amazon-web-services amazon-redshift