博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
保存Hive查询结果的方法
阅读量:6423 次
发布时间:2019-06-23

本文共 1522 字,大约阅读时间需要 5 分钟。

很多时候,我们需要将Hive的查询(select)结果保存起来,方便进一步处理或查看。

在Hive里面提供了不同的方式来保存查询结果,在这里做下总结:

一、保存结果到本地

方法1:调用hive标准输出,将查询结果写到指定的文件中
这个方法最为常见,笔者也经常使用。sql的查询结果将直接保存到/tmp/out.txt中:
$ hive -e "select user, login_timestamp from user_login" > /tmp/out.txt

 

方法2:使用INSERT OVERWRITE LOCAL DIRECTORY结果到本地

hive> insert overwrite local directory "/tmp/out/"                                            > select user, login_time from user_login;

  

上面的命令会将select user, login_time from user_login的查询结果保存到/tmp/out/本地目录下。

 

我们查看一下/tmp/out/目录下的文件,发现命令执行后,多了两个文件:

$ find /tmp/out/ -type f/tmp/out/.000000_0.crc/tmp/out/000000_0

  

默认的字段分割符有时候可能不太方便,幸好Hive提供了修改分割符号的方法,我们只要在导出时指定就可以了:

hive> insert overwrite local directory "/tmp/out/"    > row format delimited fields terminated by "\t"     > select user, login_time from user_login;

  

二、保存结果到hdfs

保存查询结果到hdfs很简单,使用INSERT OVERWRITE DIRECTORY就可以完成操作:

hive> insert overwrite directory "/tmp/out/"    > row format delimited fields terminated by "\t"     > select user, login_time from user_login;

  

三、保存结果到HIVE表

方法1、已经建好结果表,使用INSERT OVERWRITE TABLE以覆盖方式写入结果表

如果结果表已经建好,可以使用INSERT OVERWRITE TABLE将结果写入结果表:

login_time          	biginthive> insert overwrite table query_result         > select user, login_time from user_login;

  

当然,HIVE也提供了追加方式INSERT TABLE,可以在原有数据后面加上新的查询结果。在上面这个例子基础上,我们再追加一个查询结果:

hive> insert into table query_result    > select * from query_result;

  

方法2、如果需要新建一个表,用于存放查询结果,可以使用CREATE TABLE AS SELECT语法

hive> create table query_result     > as    > select user, login_time from user_login;

  

 

转载地址:http://dhrra.baihongyu.com/

你可能感兴趣的文章
Netscaler GSLB的主备数据中心解决方案
查看>>
大数据平台网站日志分析系统
查看>>
Xilinx-7Series-FPGA高速收发器使用学习—RX接收端介绍
查看>>
Java String练习题及答案
查看>>
使用SVD方法实现电影推荐系统
查看>>
艾伟:Visual Studio 2008 到底有多强
查看>>
fedora下重用ssh连接 类似secureCRT的clone session功能
查看>>
Excel VBA 循环“我中毒了~”
查看>>
Hotfix - Flexerasoftware发布InstallShield和AdminStudio的安全补丁包
查看>>
CSS 教程Part4 [盒子模型](摘录自 W3C School)
查看>>
android开发技巧
查看>>
五个有趣的拓扑变换问题 [转]
查看>>
asp.net中的比较完美的验证码
查看>>
HDU 3277 Marriage Match III(最大流+二分+并查集)
查看>>
FPSMeter – 简单的、可定制主题的 FPS 仪表库
查看>>
Android应用中使用百度地图API定位自己的位置(二)
查看>>
24点经典算法
查看>>
Dynamic CRM 2013学习笔记(十九)自定义审批流1 - 效果演示
查看>>
C#实现http协议支持上传下载文件的GET、POST请求
查看>>
在xpage上怎么用jdbc去连接sql server呀
查看>>