在这个问题的继续中,我如何从一个.csv文件中创建一个配置单元表,该文件有一列,字段用分号表示;
我的csv文件中的某些标题/发布者有“&”;在它们中以及包含它们的行被误读,因为它们在符号和代码中的分号和每个字段的末尾被过早地拆分。
如何修改此代码:
CREATE TABLE books (ISBN STRING, Title STRING, Author STRING, Year STRING, Publisher STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY "\;";
LOAD DATA INPATH '/path/to/my/datafile' INTO TABLE books;
所以它不这样做?
我的csv文件中有问题的行示例如下:
0743403843;"Decipher";"Stel Pavlou";"2002";"Simon & Schuster (Trade Division)"
publisher列未正确阅读。
我知道我可以在手动删除&;之前对csv进行sanatize;但是你能告诉我如何在hive或者hadoop的另一个工具中做到这一点吗?
2条答案
按热度按时间vlju58qv1#
你能试试这个吗?
w6mmgewl2#
这篇文章讨论了在使用csv和带引号的字符串包含逗号时的类似问题和解决方案:http://dev.bizo.com/2010/11/csv-and-hive.html
看起来他们链接到的csv serde可以配置为备用分隔符,所以它也应该适用于您的格式。