我有一个 CSV 文件,其中有一列包含多于一行的数据。当我尝试将数据导入 HIVE 表时,默认情况下它需要一行并导入不正确的结果。
示例文件
1、《1号线》
2 号线,2012 年 12 月 23 日
2、《1号线2号线》2012年12月24日。
在这种情况下,它将第一个条目视为两个单独的行。缓解此问题的命令是什么?
使用以下:
root@system>>cat file.txt
1,"Line 1
Line 2", 12/23/2012
2, "Line 1 Line 2" 12/24/2012.
root@system>> sed '{N;s/\n/ /g}' file.txt
输出是:
1,"Line 1 Line 2", 12/23/2012
2, "Line 1 Line 2" 12/24/2012.
(N)将下一行添加到工作缓冲区。现在您可以进一步解析并将数据存储到 Hive 表中。
好像现在 Hive 只支持默认的行分隔符 '\n'。因此,您必须编辑文件以导入 Hive Table。