【问题标题】:Can the teradata connector sqoop sequencefile format overcome delimiter issues?teradata 连接器 sqoop 序列文件格式能否克服分隔符问题?
【发布时间】:2017-09-21 18:17:34
【问题描述】:

如果数据库在字段中包含诸如“,”和“\n”之类的字段,有没有办法让 sqoop 到 hive 而不必修复这些分隔符,可能使用替代格式而不是标准文本文件?一直在使用一些解决方法(即/替换分隔符、替换等)。

【问题讨论】:

    标签: hadoop hive teradata sqoop


    【解决方案1】:

    我发现在换行符的列基础上解决此问题的解决方案:

    SELECT 
      COL_A,
      OREPLACE(COL_B, '0A'XC, '_replace_char_'),
      ...,
      COL_N
    FROM
      TABLE_NAME
    

    假设这也适用于逗号。我还没有测试你是否可以嵌套这个 replace char 语句。也没有估计对假脱机空间使用的影响。

    解决方案在第一个问题中找到,而不是在“答案”中:

    https://community.teradata.com/t5/Database/Removing-a-line-break-character-in-a-column/td-p/52431

    【讨论】:

    • 很好的答案!加油!
    • 作为更新,这似乎不支持 UNICODE 表,并且在单个查询中使用此函数 100 次时也会出现运行时失败。
    猜你喜欢
    • 2017-03-03
    • 2012-05-16
    • 1970-01-01
    • 2021-10-13
    • 2013-12-11
    • 2014-06-08
    • 2018-05-28
    • 2018-12-18
    • 1970-01-01
    相关资源
    最近更新 更多