缺少数据的 Sqoop 导出

Sqoop Export with Missing Data

我正在尝试使用 Sqoop 将数据从 HDFS 导出到 Postgresql。但是,我部分通过导出收到错误,它无法解析输入。我手动进入正在导出的文件,发现该行缺少两列。我已经用 Sqoop 命令尝试了一堆不同的参数,但无法让它工作。到目前为止,我是 运行:

sqoop export --connect jdbc:postgresql://localhost:5432/XX -username
XX -password XX --table XX --input-fields-terminated-by
"\t" --input-lines-terminated-by "\n" --input-null-string '\n' --input-null
non-string '\n' -m 1 --export-dir /user/dan/output

我也尝试过不使用“--input-null-string”和“--input-null-non-string”参数并得到相同的结果。我的 table 有 6 列,我正在阅读的文件有制表符分隔值,如果所有 6 列都存在,这些值将插入到 table 中。任何帮助将不胜感激。

我通过更改我的 reduce 函数解决了这个问题,这样如果没有正确数量的字段来输出某个值,然后我就可以使用带有该值的 --input-null-non-string它奏效了。