Hive三种不同的数据导出的方式
转自:http://blog.chinaunix.net/uid-27177626-id-4653808.html
Hive三种不同的数据导出的方式,根据导出的地方不一样,将这些方法分为三类:
(1)导出到本地文件系统
(2)导出到HDFS
(3)导出到hive的另一个表中
导出到本地文件系统
执行:
hive> insert overwrite local directory '/root/student'
> select * from student;
通过insert overwrite local directory将hive中的表student的内容倒到本地文件系统的/root下的student目录下,这条HQL的执行需要启用Mapreduce完成,运行完这条语句之后,将会在本地文件系统的/root/student目录下生成文件,这个文件是Reduce产生的结果(这里生成的文件名是000000_0),我们可以看看这个文件的内容:
可以看出这就是表student中的数据,数据之间用空格间隔开来。
注:将数据从hive倒到本地文件系统与将数据倒到hive不一样,不能用insert into实现。
导出到HDFS
将hive中的数据导出到HDFS和将数据导出到本地文件系统类似,只是命令的执行中少了一个“local”
可以查看hdfs的对应目录,发现数据确实倒入了指定目录。
将数据导出到hive的另一张表
即:hive> insert into table hive_student_test
> select id,name,sex,salary
> from student;
前提是在hive中创建好目标表hive_student_test,然后执行上述操作将hive中的student表的数据依据其id,name,sex,salary字段将其导入到目标表中。查询目标表的结果:
在hive0.11.0版本中新引进了一个新的特性,也就是当用户将hive查询结果输出到文件,用户可以只用列的分隔符,而在之前的版本中是不能指定列之间的分隔符的。例如:
hive> insert overwrite local directory '/root/student'
> row format delimited
> fields terminated by '\t'
> select * from student;
还可以用hive的-e和-f参数来导出数据,其中-e表示后面直接带双引号的sql语句;而-f是接一个文件,文件的内容为一个sql语句。如下所示:
执行:./hive -e "select * from student" >> /root/student11.txt
这个得到的结果也是用\t分割的。也可以用-f实现。
执行:./hive -f /root/SQL.sql >> /root/student12.txt
相关文章
- asp.net core导出导入excel
- C# 基于Aspose.Cells的数据导出到Excel
- phpExcel导出文件时内存溢出的问题
- Google Earth Engine——使用MODIS数据进行逐月数据的过火(火灾)面积并导出
- Google Earth Engine(GEE)——导出数据到Google硬盘和云端存储!和最大像素限制导出
- Google Earth Engine(GEE)——提取sentinel-5p中NO2数据下载导出Google硬盘,可通过链接直接下载到电脑
- Google Earth Engine ——导出sentinel-2影像中出现的错误(波段分辨率不同)
- Google Earth Engine(GEE)——影像导出谷歌硬盘发生错误Error: Exported bands must have compatible data types
- 基于pytorch框架的lenet模型并导出ONNX格式
- AngularJS中module的导入导出
- tablib把数据导出为Excel、JSON、CSV等格式的Py库(写入数据并导出exl)
- 【HMS Core】华为分析SDK如何申请数据导出功能?
- sqlite db数据的导出
- 《Hadoop实战手册》一1.9 使用Pig从HDFS导出数据到MongoDB
- MariaDB/MySQL备份和恢复(二):数据导入、导出
- Element-ui组件库Table表格导出Excel表格--存在重复数据问题-----建议前端不做导出逻辑,应该是后端做处理
- Qt数据库应用5-海量数据多线程导出
- Qt数据库应用8-数据导出组件示例说明
- 前端导出pdf
- SQLyog-直接导出JSON格式的数据
- Docker(三):镜像导入与导出、保存与加载、在Docker容器中安装软件
- PL/SQL Developer导入导出数据库方法及说明
- C语言图形导入与导出
- .net实现一个简单的通用查询数据、导出Excel的网页
- KiCAD 一键导出嘉立创生产文件 - 坐标,BOM,以及Gerber
- ANSYS WORKBENCH——参数化建模以及参数优化(结果导出为Excel)
- 如何导出数据库的数据词典