问题描述:
在部署hive on spark,测试时报错,执行建表操作成功,但是插入insert出现以下错误:

Failed to execute spark task, with exception ‘org.apache.hadoop.hive.ql.metadata.HiveException(Failed to create Spark client for Spark session 2df0eb9a-15b4-4d81-aea1-24b12094bf44)’
FAILED: Execution Error, return code 30041 from org.apache.hadoop.hive.ql.exec.spark.SparkTask. Failed to create Spark client for Spark session 2df0eb9a-15b4-4d81-aea1-24b12094bf44

请添加图片描述
查资料主要列举了以下三点原因:

  1. Spark没有启动;
    需在/opt/module/spark路径下输入以下内容启动spark:
[xiaobai@hadoop102 spark]$ ./sbin/start-all.sh
  1. Spark和hive版本不匹配,我的是匹配的;

  2. 内存资源不足,导致hive连接spark客户端超时。

原因分析
在/tmp/xiaobai路径下按照所需时间查看hive日志:
在这里插入图片描述
提示timed out waiting for client connection.表明hive与spark连接时间超时!
请添加图片描述

解决方法
1). 将/opt/module/spark/conf/目录下spark-env.sh.template文件改成spark-env.sh,之后添加内容export SPARK_DIST_CLASSPATH=$(hadoop classpath)
2). 将/opt/module/hive/conf目录下hive-site.xml修改hive和spark的连接时间。
在这里插入图片描述
再次执行insert语句,成功!喜极而泣!
在这里插入图片描述

我是昨天晚上就出错的 查了一晚上也没解决 结果今天才解决 不说了 解决另一个bug去了😭

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐