irpas技术客

Hive On Spark搭建报错:Failed to create Spark client for Spark session xx: ..TimeoutE

irpas 3818

错误描述

按照官方文档,搭建Hive On Spark时,出现以下错误。

FAILED: Execution Error, return code 30041 from org.apache.hadoop.hive.ql.exec.spark.SparkTask. Failed to create Spark client for Spark session xxx: java.util.concurrent.TimeoutException: Client 'xxx timed out waiting for connection from the Remote Spark Driver 错误分析

既然是连接超时,可能有两种情况。一种是配置正常,但网络情况太差,响应还未返回给Hive就报错了。这种情况下,把请求等待时间改大就行。

在hive中,编辑hive-site.xml,调整以下参数:

# 单位毫秒 hive.spark.client.connect.timeout hive.spark.client.server.connect.timeout

但多数情况下,可能是hive on spark的配置错误或缺失,导致无法响应。 如果是参照官方文档进行的搭建,则需要注意Spark的版本问题。

Hive On Spark是需要特定的Spark版本的,如果当前Hive只支持Spark 1.x,则需把spark-assembly.jar拷贝到Hive 的lib目录下。

但如果你使用了Spark2.x的集群,在Spark2.x 的lib下是诶没有这个jar包的。所以会出现报错情况。

解决方案

从官网查询当前Hive所依赖的Spark版本,重新安装Spark。或者使用编译的方式安装Spark,去除hadoop依赖即可,详情见Hive官网文档的Hive On Spark搭建一节。

后话

如果有帮助的,记得点赞、关注。在公众号《数舟》中,可以免费获取专栏《数据仓库》配套的视频课程、大数据集群自动安装脚本,并获取进群交流的途径。

我所有的大数据技术内容也会优先发布到公众号中。如果对某些大数据技术有兴趣,但没有充足的时间,在群里提出,我为大家安排分享。

公众号自取:


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #hive #on #Spark搭建报错Failed #To #create #spark #client #for