大佬教程收集整理的这篇文章主要介绍了由于空白字段,S3 COPY 到 Redshift 表在选项卡受限文件上失败,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如标题所述。我正在尝试使用 s3 复制命令将从 s3 压缩的制表符限制文件复制到 Redshift 表中,但其中一列是空的并且弄乱了列对齐并破坏了复制语句。 这是我正在使用的 copY 命令:
copY homeowner.smartystreets_attom_delta_test
FROM 's3://<bucket/filepath/filename>.gz'
CREDENTIALS 'aws_access_key_ID=<access_key_ID>;aws_secret_access_key=<access_key>'
DEliMITER AS '\t'
GZIP
IGnorEheader 1
TruncATEcolumNS
FILLRECORD
BLANKSASNulL
EMPTYASNulL
TRIMBLANKS
ACCEPTinVCHARS AS '0';
如您所见,我正在尝试使用任何处理 NulL 或空列的选项,但它没有帮助。 我认为空列中的连续选项卡正在破坏命令。
空字段为您提供一个空值 - 即一个空字符串。使用 EMPTYASNULL,当检测到这样的字段时,Redshift 将其视为 NULL。
要真正获得 NULL 本身,您需要在字段中包含表示 NULL 的特殊(且区分大小写)字符串。
如果您缺少制表符,您所拥有的不是空字符串或 NULL;这是一行缺少一列。
FILLRECORD 将帮助您,但仅适用于从列末尾连续的缺失列,向后移动;我想这里不是这种情况,因为您遇到了问题。
我看到的唯一解决方案是,您需要在加载之前对数据进行预处理、清理和验证。
以上是大佬教程为你收集整理的由于空白字段,S3 COPY 到 Redshift 表在选项卡受限文件上失败全部内容,希望文章能够帮你解决由于空白字段,S3 COPY 到 Redshift 表在选项卡受限文件上失败所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。