记录一个hive中跑insert语句说没创建spark客户端的问题

【背景说明】

我目前搭建离线数仓,并将hive的执行引擎改成了Spark,在将ods层的数据装载到dim层,执行insert语句时报如下错误

【报错】

4200040000 Error while compiling statement: FAILED: SemanticException Failed to get a spark session: org.apache.hadoop.hive.ql.metadata.HiveException: Failed to create Spark client for Spark session e1e64eb2-bfa8-4e3f-8e3a-d37b88a92c86

这个错误表示Hive无法为Spark会话创建Spark客户端,可能是由于Spark会话创建失败导致的。

【原因】

经过排查,发现导致该问题的原因是当队列资源达到100%后,如果短期内都没有任务空余资源释放出来提供给创建 sparksession使用,将会导致任务失败而抛出这个异常 。

【解决】

加大client连接时间间隔;

修改hive的配置文件hive-site.xml

复制代码
<!--Hive和Spark连接超时时间-->
<property>
    <name>hive.spark.client.connect.timeout</name>
    <value>100000ms</value>
</property>

注意注意:每次改完这个配置文件需要重启hiveserver2,我封装了这个脚本

复制代码
hi.sh stop
hi.sh start

再重跑insert

相关推荐
2601_962073971 天前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
大数据·hadoop·架构
用户3610588626121 天前
SparkStreaming 之 transform 算子详解及代码实现
大数据·spark
fastjson_1 天前
Hive 基础函数
数据仓库·hive·hadoop
kuroomi1 天前
hadoop高可用架构
hadoop
starzy19902 天前
SparkStreaming 之 Direct 模式深度剖析
大数据·spark
JLWcai202510092 天前
树脂砂轮质保与科学存放
mongodb·zookeeper·spark·memcached·storm
用户3610588626122 天前
SparkStreaming 之 DStream 底层结构剖析
大数据·spark
千里码aicood2 天前
基于Hadoop的汽车销量分析与可视化
大数据·hadoop·分布式
Code知行合壹3 天前
数据中台设计
大数据·分布式·spark