【问题标题】:Handling Multiple Delimiter while loading data in hive在配置单元中加载数据时处理多个分隔符
【发布时间】:2020-09-30 11:52:51
【问题描述】:

我正在使用 sqoop 并使用 '|' 从 db2 导入数据作为字段分隔符。然后使用加载数据命令将此数据加载到配置单元表中。在 hive table create 语句中,我也使用字段分隔符作为 '|'但从一列的源端,在 30 条记录中的 1M 条记录中,我发现“|”在数据本身。因此,在加载数据配置单元时,会将其视为新字段并加载到下一列。 有没有办法处理这种情况? 我找到了一些我们可以使用的附件,但在数据中我也得到了多个特殊字符(-,/..etc) 所以我无法决定我应该如何以及在哪里(sqoop 或 hive/两者)使用这个外壳。 有人可以指导我如何处理这种情况。我也可以使用不同的字段分隔符(,| 等),因为当我在源代码中检查时我不确定数据中的特殊字符我发现了多个字符。

sqoop import Properties:  -fields-terminated-by '|' --hive-drop-import-delims
Hive Table Properties: row format delimited fields terminated by '|' stored as textfile;
Sample Data:H No. 100,200,300,400, KbcColony-||, D Delhi

【问题讨论】:

    标签: hive sqoop


    【解决方案1】:

    您可以使用escaped-by 选项:

    --escaped-by \\ \
    --fields-terminated-by '|' \
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多