如何处理sqoop导入分隔符问题\ r \ n

时间:2014-04-23 17:10:46

标签: mysql oracle postgresql hive sqoop

我正在使用sqoop从各种来源获取数据,我注意到很多事情都可能出错。我曾经多次发生某些列包含分隔符,这些分隔符会导致额外的不需要的行,从而导致不需要的NULL值。不想要的角色包括坏人,如windows delmiter \ r \ n,一直到Icalandic Thorn。

处理这些问题的最佳做法是什么?

我考虑过按列选择所有内容并使用REPLACE类型方法移除邪恶角色,但感觉应该有更好的方法。

1 个答案:

答案 0 :(得分:3)

在较新版本的sqoop中,您拥有--hive_drop-import-delims--hive-delims-replacement命令。

请参阅https://sqoop.apache.org/docs/1.4.3/SqoopUserGuide.html

这将处理字符串字段中的\r \n\001。对于其他替换,您可以使用REPLACE函数进行解决方法