【发布时间】:2015-07-25 08:57:52
【问题描述】:
我正在尝试将磁盘上的 .csv 文件加载到 Hive。
根据 StackOverflow 上的 answer,我使用以下查询创建了表:
CREATE TABLE mytable
(
id_number STRING,
country STRING
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
然后我使用以下查询将文件中的数据转储到 Hive:
LOAD DATA LOCAL INPATH /mytable.csv OVERWRITE INTO TABLE mytable;
不幸的是,hive 中的结果表由一行组成,其中每个元素(如下所示)是 .csv 文件中一行的拼凑版本:
“aDXLS23M\t俄罗斯”
我已经坚持了几个小时,无法弄清楚如何让 hive 识别 .csv 文件中的列分隔符。有什么建议吗?
提前致谢。
【问题讨论】:
-
\t是制表符分隔的。试试... fields terminated by '\t' -
您好,我尝试将 ',' 替换为 '\t',不幸的是,这并没有解决问题。
-
发布您的 csv 内容。只需 3 到 4 行就足够了。