【发布时间】:2020-01-03 00:12:12
【问题描述】:
我正在尝试使用 COPY 命令从 S3 将 .parquet 文件加载到我的 Redshift 数据库中。
该文件包含一个日期格式为 2018-10-28 的列。 Redshift 中表中的相关字段定义为日期。源 spark 数据框将该字段显示为 datetime64 并转换为 pandas 它是时间戳。
使用简单的COPY dates FROM s3://mybucket/file.parquet iam_role {xxxxx} FORMAT AS PARQUET 总是会返回不兼容的架构错误。
在我的 jupyter 笔记本中,我看不到完整的错误描述,但我猜它是日期字段,因为表的其余部分是一个简单的 varchar 字段和一些 int 字段
有没有办法查看完整的错误消息,因为它没有写入 stl_load_errors?
有没有比 yyyy-mm-dd 更好的源格式来将数据加载到 redshift 中?
【问题讨论】:
-
尝试使用字符串而不是日期设置目标表
-
是的,查询表
svl_s3log。错误消息吐出pid。您可以按此过滤并在message列上找到错误。
标签: date copy amazon-redshift parquet