如何将hive查询结果导出成txt文件

原文地址:https://zhidao.baidu.com/question/241683835498891364.html    
-----------------------------------------------------------------------------
最近在使用hive时,需要将hive查询的数据导出到本地文件系统,HQL语法如下:
  INSERT OVERWRITE [LOCAL] DIRECTORY directory1 select_statement1
  查询结果导出到本地文件后,试图使用excel加载时遇上了麻烦:不知道hive导出文件时使用的分隔符,
  使用文本编辑器打开也显示乱码。
  最后在官方文档上找了半天才发现,hive使用 ^A 符号作为域的分隔符,原文如下:
  Data written to the filesystem is serialized as text with columns separated by ^A
  在python中可以使用line.split('\x01')来进行切分,也可以使用line.split('\001'),注意其中是单引号
  在java中可以使用split("\\u0001")来进行切分
  如果确实需要将查询结果导出到本地文件,最好使用hive的命令:
  [sql] view plaincopy在CODE上查看代码片派生到我的代码片
  bin/hive -e "select * from test" >> res.csv
  
  或者是:
  
  bin/hive -f sql.q >> res.csv
  
  其中文件sql.q写入你想要执行的查询语句

  这问题在使用hive hql streaming时也会遇到,当你使用hql strreaming 将输出直接写入到hdfs目录,然后你在该目录上创建hive 外部表时,hive的输出结果会将streaming 的key和value之间的分隔符修改为 \001,所以,在hql streaming和输出为hive 外部表时,最好将streaming的最后输出的分隔符修改为\001,并且hive外部表的分隔符应该设置为\001,注意:不要使用^A和\x01,如:
  [html] view plaincopy在CODE上查看代码片派生到我的代码片
  create external table site_user_mapping_info_month(uid String,tag string,project_ids string,site_interests string) PARTITIONED BY(year String, month String) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\001' LOCATION '/project/site_grouping/site_user_mapping_info_month';

-------------

更多的Java,Angular,Android,大数据,J2EE,Python,数据库,Linux,Java架构师,:

http://www.cnblogs.com/zengmiaogen/p/7083694.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/538700.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MSSQL-最佳实践-如何监控备份还原进度

title: MSSQL 最佳实践 如何监控备份还原进度 author: 风移 摘要 本期月报是SQL Server备份还原专题分享系列的第六期,打算分享给大家如何监控SQL Server备份还原进度。 场景引入 由于SQL Server备份还原操作是重I/O读写操作,尤其是当数据库或数据库备…

抢车位app下载_太方便了!有了这个APP,找车位再也不用“兜圈子”了

对于不少有车一族来说,决定出门是否开车的重要因素之一,那就是目的地是不是好停车,因为找车位可真是一件很头疼的事,不过未来,满街找停车位的尴尬情况将会越来越少,近日,镇江智慧停车平台正式上…

bmp文件头_图像算法原理与实践——图像文件存储

图像数据在计算机储器设备中的存储形式是图像文件,图像必须按照某个公开的、规范约终结定的数据存储顺序和结构进行保存,才能使不同的程序对图像文件顺利进行打开或存盘操作,实现数据共享。图像数据在文件中的存储顺序和结构称为图像文件格式…

一共81个,开源大数据处理工具汇总

查询引擎 一、Phoenix 贡献者::Salesforce 简介:这是一个Java中间层,可以让开发者在Apache HBase上执行SQL查询。Phoenix完全使用Java编写,代码位于GitHub上,并且提供了一个客户端可嵌入的JDBC驱动。 Phoen…

html5怎么删除样式,css怎么删除一个样式

css删除一个样式的方法:首先创建一个HTML示例文件;然后给div添加css样式;最后通过“removeClass()”方法从被选元素删除一个或多个类即可。本教程操作环境:windows7系统、HTML5&&CSS3版、Dell G3电脑。CSS添加样式、删除样…

python语言中内置的字符串排版方法_Python14之字符串(各种奇葩的内置方法)

一、字符串的分片操作其分片操作和列表和元组一样1 str1 keshengtao2 str1[2:6]3 shen4 str1[:]5 keshengtao6 str1[:4]7 keshView Code二、访问字符串中的字符注:字符串中的单个字符,同样也是字符串1 str1 keshengtao2 str1[3]3 hView Code三、字符串…

sqlserver 字符串转化数值函数_Excel常见函数用法(TEXT函数)

基本语句:=TEXT(数值,文本格式) 用法说明:TEXT函数可通过格式代码对数字应用格式,进而更改数字的显示方式。其中,参数①是我们想要改变格式的数值,它可以是文本,也可以是数字;而参数②就是我们想要参数①最终变成的格式,它的作用原理和自定义数字格式一致,基本用法共…

laravel 的 表单请求

在对文章、帖子等信息进行创建、更新的时候,需要进行表单验证的时候,一般我们使用Request来获取输入的值来进行验证,这样需要在每一个方法中进行书写验证规则。 laravel 提供了创建表单请求,我们可以使用 artisan 来创建一个表单请…

Flume概述

官网 http://flume.apache.org/ 介绍 Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。Flume可以采集文件,socket数据包等各种形式源数据,又可以将采集到的数据输出到HDFS、hbase、hive、kafka等众多外部存储系统中。一般的采集需…

日常计算机操作知识试题,关于2017计算机一级考试试题操作题

关于2017计算机一级考试试题操作题在日常学习和工作中,我们很多时候都不得不用到试题,试题可以帮助参考者清楚地认识自己的知识掌握程度。那么一般好的试题都具备什么特点呢?下面是小编为大家整理的关于2017计算机一级考试试题操作题&#xf…

概率分布分位点_概率分布的分位数三.PPT

概率分布的分位数三5.2 常用统计分布 一、常见分布 t 分布具有下列性质: 性质5.6 设 , 则当 时有 性质5.7 设 , 是T的分布密度, 则 此性质说明,当 时,T分布的极限 分布是标准正态分布。 这说明F分布极限分布也是正态分…

mastercam加工报表生成_听说最厉害的工程师才敢这样玩五轴加工?

今天让我们一起来看看五轴有些什么接地气的玩法:侧刃加工(此图非动图)相较使用刀具底刃加工,利用刀具侧刃加工可以得到更加光滑的加工表面。适用于航空航天工业中复杂型腔工件的精加工。Mastercam提供专用功能可有效防止刀具和零件型腔底部出现过切&…

Flume安装(单节点)

Flume单节点的安装非常简单。 1、下载 2、解压 3、配置环境变量FLUME_HOME 4、flume-env.sh配置JAVA_HOME 具体步骤 下载 http://flume.apache.org/download.html 解压 tar -zxvf apache-flume-1.7.0-bin.tar.gz 配置FLUME_HOME root 用户或者 su root vi /etc/pro…

电子科技大学2019年计算机复试分数线,2019考研电子科技大学复试分数线已公布...

2019考研电子科技大学复试分数线已公布!相信接下来很多2019考研考生都会关注34所考研复试分数线及考研国家线相关信息。中公考研小编整理了“2019考研电子科技大学复试分数线已公布”文章,希望能对2019考研考生有帮助~根据教育部有关文件精神&#xff0c…

量子计算时代来临?D-Wave 量子计算机使运算速度提高 1 亿倍!

查尔斯巴贝奇(Charles Babbage)于 19 世纪 30 年代提出了一款难以实现的概念性分析引擎,自那时以来,计算机科学一直为了保持领先于时代的地位而奋力前行。在过去 75 年内,许多惊人的创举接连出现:可编程电子…

python编的游戏越玩越卡_用Python写游戏,不到十分钟就学会了

安装pygame本人电脑是windows 10、python3.6,pygame下载地址:pypi.python.org/pypi/Pygame…请自行下载对应python版本的pygame运行以下命令创建Pygame窗口及响应用户输入新建一个文件夹alien_invasion,并在文件夹中新建alien_invasion.py文件…

Map Reduce和流处理

欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~本文由从流域到海域翻译,发表于腾讯云社区map()和reduce()是在集群式设备上用来做大规模数据处理的方法,用户定义一个特定的映射,函数将使用该映射对一系列键值对进行处理…

Flume实战监听网络端口

具体的配置解释见官网 http://flume.apache.org/FlumeUserGuide.html#flume-sources 1、flume安装目录下新建文件夹 example 2、在example下新建文件 netcat-logger.conf内容如下:#name the components on this agent a1.sources r1 a1.sinks k1 a1.channels…

滑动关机代码bat_BAT面试算法进阶--(2) 无重复字符的最长子串(滑动法优化+ASCII码法)...

一.算法题题目Given a string, find the length of the longest substring without repeating characters.ExampleGiven "abcabcbb", the answer is "abc", which the length is 3.Given "bbbbb", the answer is "b", with the length…

jpa findone怎么用_Jpa VS MyBatis,你用哪个?

经常看到有小伙伴在讨论 JPA 和 MyBatis 这两个孰优孰劣的问题,其实松哥觉得这是一个伪命题,没必要为这种问题争个面红耳赤,每种框架有它存在的道理,也有各自擅长的事情,今天松哥就和大家来聊聊这两个框架,…