将HiveQL查询的结果导出为CSV时出错?

时间:2016-11-28 22:06:44

标签: hadoop hive

我是Hadoop / Hive的初学者。我做了一些研究,找到了一种将HiveQL查询结果导出到CSV的方法。 我在Putty的命令行下面运行 -

Hive -e ‘use smartsourcing_analytics_prod; select *  from solution_archive_data limit 10;’ > /home/temp.csv;

但以下是我得到的错误enter image description here

ParseException line 1:0 cannot recognize input near 'Hive' '-' 'e'

我希望得到关于此的意见。

2 个答案:

答案 0 :(得分:1)

我执行此类操作的一种方法是使用所需的架构创建外部表。然后执行INSERT INTO TABLE target_table ...看下面的例子:

CREATE EXTERNAL TABLE isvaliddomainoutput (email_domain STRING, `count` BIGINT) 
ROW FORMAT DELIMITED FIELDS TERMINATED BY ","
STORED AS TEXTFILE
LOCATION "/user/cloudera/am/member_email/isvaliddomain";

INSERT INTO TABLE isvaliddomainoutput

SELECT * FROM member_email WHERE isvalid = 1;

现在转到“/ user / cloudera / am / member_email / isvaliddomain”并找到您的数据。

希望这有帮助。

答案 1 :(得分:1)

  • 从hive shell外部运行命令 - 只需从linux shell运行。
  • 使用' h ive'代替' H ive'
  • 只是将输出重定向到csv文件将无法正常工作。你可以这样做:
    hive -e 'YOUR QUERY HERE' | sed 's/[\t]/,/g' > sample.csv
    就像在这里提供的那样:How to export a Hive table into a CSV file?
  • AkashNegi回答也适用于你......虽然
  • 有点长
相关问题