0

我有一个 CSV 文件,其中有一列包含多于一行的数据。当我尝试将数据导入 HIVE 表时,默认情况下它需要一行并导入不正确的结果。

示例文件

1、《1号线》

2 号线,2012 年 12 月 23 日

2、《1号线2号线》2012年12月24日。

在这种情况下,它将第一个条目视为两个单独的行。缓解此问题的命令是什么?

4

2 回答 2

0

使用以下:

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 表中。

于 2013-08-27T05:04:14.977 回答
0

好像现在 Hive 只支持默认的行分隔符 '\n'。因此,您必须编辑文件以导入 Hive Table。

于 2013-08-27T06:45:41.137 回答