锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

HIVE ON SPARK无法创建spark client session

时间:2023-01-28 18:00:00 插座连接器dc060t00

HIVE ON SPARK无法创建spark client session

    • 1.环境概述
    • 2.解决
    • 其他
    • 总结

1.环境概述

尚硅谷数仓5.0提供的spark with hadoop与对应的适配没有hadoop的spark,hive是经过修改过的添加了spark3相应jar包的spark,出现了fail to create spark client for spark session 的错误,但是hive不走spark其它查询可正常使用。

报错相关

2.解决

当启动hive时执行spark相关任务时,yarn的application什么都没有显示,直到结束。此时可以hive监控日志,hive可以去日志的位置hive/conf的log4j文件中查看

这里的hive日志存储路径/tmp/用户名,输入hivelog在路径下监控日志。

tail -f hive.log 

再次打开窗口重启hive然后运行spark相关语句,如插入insert与count(*)然后在另一个窗口查看结果。

9-ad46-86c583699c86 main] client.SparkClientImpl:      client token: N/A 2022-07-07T00:42:38,112  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      diagnostics: [星期四 七月 07 00:42:37  0800 2022] Application is Activated, waiting for resources to be assigned for AM.  Details : AM Partition =  ; Partition Resource =  ; Queue's Absolute capacity = 100.0 % ; Queue's Absolute used capacity = 0.0 % ; Queue's Absolute max capacity = 100.0 % ; Queue's capacity (absolute resource) =  ; Queue's used capacity (absolute resource) =  ; Queue's max capacity (absolute resource) =  ;  2022-07-07T00:42:38,112  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      ApplicationMaster host: N/A 2022-07-07T00:42:38,113  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      ApplicationMaster RPC port: -1 2022-07-07T00:42:38,113  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      queue: default 2022-07-07T00:42:38,113  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      start time: 1657125757635 2022-07-07T00:42:38,113  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      final status: UNDEFINED 2022-07-07T00:42:38,113  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      tracking URL: http://hadoop103:8088/proxy/application_1657125588906_0001/ 2022-07-07T00:42:38,113  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl:      user: wenlan 2022-07-07T00:42:38,211  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl: 2022-07-07 00:42:38,211 INFO util.ShutdownHookManager: Shutdown hook called 2022-07-07T00:42:38,215  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl: 2022-07-07 00:42:38,214 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-ef148fe5-2af3-47dc-83b2-31bd1f70a223 2022-07-07T00:42:38,220  INFO [RemoteDriver-stderr-redir-527071be-93b4-4219-ad46-86c583699c86 main] client.SparkClientImpl: 2022-07-07 00:42:38,220 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-20ba387e-1676-4fd1-89e8-9fb9d4f5e057 

我的程序卡在上面的图片上,然后修改client.timeout日志提供的参数不解决问题,说明不是网络等问题tarcking URL,进入相应的页面,我在这里http://hadoop103:8088/proxy/application_1657125588906_0001/

等他一会儿fail然后检查

这里的错误是缺乏相应的依赖,org/apache/hadoop/mapred/JobConf,查询数据,发现可以直接从maven下载相应的包并上传,
下载地址在
https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-mapreduce-client-core
然后下载3.1.2版本的

和我一起下载hadoop对应版本的3.1.2,然后下载好的jar包上传到hdfs上的sparkjar依赖位置,即spark.yarn.jars配置对应目录,重启hive应能正常运行hive on spark了。

这样配置后我成功的运行了insert假期回来重用的句子。groupby考虑到以下解决方案,决方案。

其他

如果你遇到以下问题,说你没有这条路径
只需要你的spark复制一份后,可以更改为相应的名称这个问题应该在其他地方修改。

如果你查看生成的日志,说你没什么log4j只需要依赖路径spark对应路径spark-env.sh修改文件并添加文件

export SPARK_DIST_CLASSPATH=$(/opt/module/hadoop-3.1.3/bin/hadoop classath)

就可以解决相应的问题了!

总结

如果不是偶发性的hive on spark无法使用就先不用去调内存设置和网络设置,首先检查相应配置文件是否合理配置,之后通过日志对问题进行监测,如果缺少依赖项目,只需要在依赖路径上传对应依赖即可解决问题。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章