etl抽取oracle数据到hive库中的时候,oracle表中如果有换行符如:‘\n\r’,会造成当前行的数据错位。
原来是因为hive默认的存储方式是textfile,这种方式不支持存储换行符。
方案一、替换这些特殊字符:
1 | regexp_replace(t.test, '\n|\t|\r', '') |
方案二、修改表的存储格式为:parquet
1 | drop table if exists test_table; |
etl抽取oracle数据到hive库中的时候,oracle表中如果有换行符如:‘\n\r’,会造成当前行的数据错位。
原来是因为hive默认的存储方式是textfile,这种方式不支持存储换行符。
方案一、替换这些特殊字符:
1 | regexp_replace(t.test, '\n|\t|\r', '') |
方案二、修改表的存储格式为:parquet
1 | drop table if exists test_table; |
原文作者:styytNOTstop
发表日期:August 6th 2019, 11:14:24 am
更新日期:August 6th 2019, 2:12:00 pm
版权声明:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: true tags: true