今天写了Python脚本准备将s3上面的数据迁移到redshift上面去,突然发现在数据load的时候出现了STL_LOAD_ERRORS,刚接触到redshift也没有报错根本不知道怎么解决。
这里显示报错了,具体的日志要去STL_LOAD_ERRORS当中查看,这个其实是一张表。在这个表当中有报错的相信原因。怎么去查询原因那,查询的语句如下:
SELECT * FROM STL_LOAD_ERRORS where filename like '%table_name%' order by starttime desc limit 10
查询到的结果如下:
在这个表当中与两列是非常有用的,其中err_code代表的是错误的编码,err_reason代表的是具体的原因,我们来看这里的错误,这里显示的是,我们的数据是字符串的形式,但是我们建表的数据类型是decimal的数据类型
所以导致我们的数据插入不进去,所以报错了。