Hadoop 如果值不在双引号内,如何处理特殊字符?
我们有一些CSV格式的数据,我们想在这些数据上创建配置单元外部表。数据格式如下:Hadoop 如果值不在双引号内,如何处理特殊字符?,hadoop,hive,Hadoop,Hive,我们有一些CSV格式的数据,我们想在这些数据上创建配置单元外部表。数据格式如下: 20160708,1234,"""some text\nsome ot,her text",foo ,bar 20160718,3210,hello text ,hello,x ,y,more,columns 如上所述,第一行的第三列包含三个双引号,并且还包含\n字符。我已经使用OpenCSV SerDe正确解析了这一行,但Hive只解析了201607081234,““一些
20160708,1234,"""some text\nsome ot,her text",foo ,bar
20160718,3210,hello text ,hello,x ,y,more,columns
如上所述,第一行的第三列包含三个双引号,并且还包含\n
字符。我已经使用OpenCSV SerDe正确解析了这一行,但Hive只解析了201607081234,““一些文本
部分作为第一行,而忽略了一些ot,她的文本”,foo,bar
这一部分
我有以下问题:
“我使用了OpenCSV SerDe…但是Hive…”——您的意思是您在MR作业中尝试了SerDe,但没有在Hive表定义中?它是可用的,参见。我在配置单元表定义中提到了OpenCSVSerde。