我一直在试图弄清楚如何将HDInsight(对于Windows)中的Hive表中的数据作为Excel / CSV文件提取到本地计算机。为此,我正在使用Visual Studio的Data Lake Tools。
现在我尝试搜索解决方案并找到此link以及此link,之后我最终得到了此查询...
INSERT OVERWRITE LOCAL DIRECTORY 'C:\Users\username\Documents' ROW FORMAT DELIMITED FIELDS TERMINATED BY '\;' SELECT * FROM hive_tablec;
运行此查询时,它实际上已成功运行,但在文件夹完成后不会显示该文件夹中的任何文件。
我还尝试根据自己的目的调整第一个链接下建议的一些查询,但这并没有产生任何有用的结果,相反(在此查询):
SELECT * FROM hive_tablec | sed 's/[\t]/,/g' > 'C:\Users\username\Documents\';
大多数在第一个链接中投票并且显然适用于其他查询的查询似乎是为控制台界面编写的,而我使用的是Data Lake Tools。因此,我正在寻找该工具的工作查询。
所以我的问题是......,有没有人知道这个问题的可行解决方案,还是能够指出我的方法和查询中的错误?
提前感谢您的帮助。
答案 0 :(得分:0)
在下面的陈述中有额外的“\”,这是不必要的 -
FIELDS TERMINATED BY '\;'
只需使用
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'