hive-drop-import-delims选项对oracle的clob无效
Posted zhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive-drop-import-delims选项对oracle的clob无效相关的知识,希望对你有一定的参考价值。
工作过程中发现了用sqoop将oracle中的数据导入到hive时,会因为oracle中类型为clob的字段中存在换行时,会造成hive的数据错位。即使加上了 --hive-drop-import-delims 也无效。
通过查询,发现有两种解决方案,
一种是将oracle中类型为clob的字段通过cast(column_name as varchar2(4000)) 将类型进行显式转换。
另一种是用 --map-column-java col1=String,col2=String 来显式说明某字段在java中的类型。
关于第二种方式,详见 https://stackoverflow.com/questions/28076200/hive-drop-import-delims-not-removing-newline-while-using-hcatalog-in-sqoop
sqoop文档中关于改参数的说明,详见:http://sqoop.apache.org/docs/1.4.6/SqoopUserGuide.html#_literal_blob_literal_and_literal_clob_literal_columns
以上是关于hive-drop-import-delims选项对oracle的clob无效的主要内容,如果未能解决你的问题,请参考以下文章
sqoop 测试 --hive-delims-replacement 参数