Hive 查询 cli 有效,同样通过 hue 失败
Posted
技术标签:
【中文标题】Hive 查询 cli 有效,同样通过 hue 失败【英文标题】:Hive query cli works, same via hue fails 【发布时间】:2016-07-07 13:58:53 【问题描述】:我对色调(3.10 版)有一个奇怪的问题。
我有一个非常简单的 hive 查询:
drop table if exists csv_dump;
create table csv_dump row format delimited fields terminated by ',' lines terminated by '\n' location '/user/oozie/export' as select * from sample;
在 hive 编辑器中运行此查询有效
将此查询作为 oozie 工作流命令行运行
使用 beeline 运行此查询命令行有效
通过 hive 中的 oozie 工作流运行此查询失败
在这种情况下失败意味着:
drop 和 create 没有运行,或者至少没有任何效果 将执行工作流中的准备操作 工作流中的 hive2 步骤仍然显示成功 将执行以下步骤。现在我确实尝试了不同的用户(oozie 和 ambari,根据相关情况调整位置),成功/失败案例完全相同。
我找不到任何相关的日志,除了可能来自色调:
------------------------
Beeline command arguments :
-u
jdbc:hive2://ip-10-0-0-139.eu-west-1.compute.internal:10000/default
-n
oozie
-p
DUMMY
-d
org.apache.hive.jdbc.HiveDriver
-f
s.q
-a
delegationToken
--hiveconf
mapreduce.job.tags=oozie-e686d7aaef4a29c020059e150d36db98
Fetching child yarn jobs
tag id : oozie-e686d7aaef4a29c020059e150d36db98
Child yarn jobs are found -
=================================================================
>>> Invoking Beeline command line now >>>
0: jdbc:hive2://ip-10-0-0-139.eu-west-1.compu> drop table if exists csv_dump; cr
eate table csv_dump0 row format delimited fields terminated by ',' lines termina
ted by '\n' location '/user/ambari/export' as select * from sample;
<<< Invocation of Beeline command completed <<<
Hadoop Job IDs executed by Beeline:
<<< Invocation of Main class completed <<<
Oozie Launcher, capturing output data:
=======================
#
#Thu Jul 07 13:12:39 UTC 2016
hadoopJobs=
=======================
Oozie Launcher, uploading action data to HDFS sequence file: hdfs://ip-10-0-0-139.eu-west-1.compute.internal:8020/user/oozie/oozie-oozi/0000011-160707062514560-oozie-oozi-W/hive2-f2c9--hive2/action-data.seq
Oozie Launcher ends
我看到直线已启动,但我没有看到像命令行那样分配的任何映射器。
有人知道会出什么问题吗?
谢谢, 纪尧姆
【问题讨论】:
这是您在此处提供的stdout
。你检查了stderr
日志。我猜,MR 工作信息/日志进入stderr
部分。
stderr 根本不提供任何有趣的东西,只是连接/连接/关闭到 hive 服务器 2 url 的连接。在 /var/log/whatever 中没有比这更相关的了。
你在sql脚本文件中添加新行了吗?
@Romain 确实没有换行符,并添加了一些解决问题的方法。我把这个写成答案,不仅仅是评论,我会接受!
【参考方案1】:
正如@romain 在 cmets 中所解释的,需要在 sql 脚本中添加新行。那么一切都很好。
【讨论】:
感谢@Romain!多年来,我一直在用一个包含一个句子的脚本来解决这个问题。我在句子的末尾添加了一个新行,它起作用了。所以...你需要在每个句子之后添加新行,甚至是脚本的最后一句。以上是关于Hive 查询 cli 有效,同样通过 hue 失败的主要内容,如果未能解决你的问题,请参考以下文章