1.1 问题描述

Spark Streaming程序解析protobuf序列化的数据时,--jars 来添加依赖的protobuf-java-3.0.0.jar包,使用local模式程序正常,使用yarn模式时会报找不到方法的错误,如下所示:

1.2 解决方法

分析local模式能运行,yarn模式不能运行的原因是,用户提交的protobuf-java-3.0.0.jar与SPARK_HOME/lib下的protobuf-java-2.5.0.jar冲突了,默认会优先加载SPARK_HOME/lib下的jar,而不是你程序的jar,所以会发生“ NoSuchMethodError”。

解决方法:提交参数添加 --conf spark.executor.extraClassPath=$user_jars

如下图所示,注意protobuf-java-3.0.0.jar包要分发到所有节点

此类问题相关参数总结:

属性名称 默认值 含义
spark.driver.extraClassPath (none) 附加到driver的classpath的额外的classpath实体。这个设置存在的主要目的是Spark与旧版本的向后兼容问题。用户一般不用设置这个选项
spark.executor.extraClassPath (none) 附加到executors的classpath的额外的classpath实体。这个设置存在的主要目的是Spark与旧版本的向后兼容问题。用户一般不用设置这个选项
spark.driver.userClassPathFirst false 实验性)当在driver中加载类时,是否用户添加的jar比Spark自己的jar, 优先级高。这个属性可以降低Spark依赖和用户依赖的冲突。它现在还是一个实验性的特征。
spark.executor.userClassPathFirst false 实验性)当在executor中加载类时,是否用户添加的jar比Spark自己的jar优先级高。这个属性可以降低Spark依赖和用户依赖的冲突。它现在还是一个实验性的特征。

最新文章

  1. MD5加密的Java实现
  2. [BI项目记]-DB脚本同步
  3. 关于js的闭包
  4. unity, 按类型查找文件
  5. SDN跟网络虚拟化的完美结合
  6. ————————————————————————————杭电ACM————————————————X-POWER————————————————————————————————
  7. Share Point 创建 TimerJob
  8. C# 调用控制台程序,并获取输出写入文件
  9. PeopleCode 处理压缩文件
  10. C# IO操作磁盘上的txt
  11. avalon 中require.config源码分析
  12. RegisterWindowMessage介绍
  13. CF559C Gerald and Giant Chess
  14. Centos配置ARP和Tomcat Native
  15. Windows10 VS2017 C++ Json解析(使用jsoncpp库)
  16. [uboot] (第三章)uboot流程——uboot-spl代码流程
  17. OpenCV3三种超像素分割算法源码以及效果
  18. 如何删除WINDOWS中服务中不再使用的服务?
  19. sonarQube常见问题及分析
  20. CentOS简单命令学习:date cal bc

热门文章

  1. Html table、thead、tr、th、td 标签
  2. _mount_vendor
  3. variable 'o' used without having been completely initialized Compiling Vertex program
  4. python requests 上传文件
  5. Tomcat配置服务和自启动
  6. JWT ajax java spingmvc 简洁教程
  7. 判断网页打开浏览器类型,PC 手机端,微信浏览器,,,
  8. 两个非空的<div>元素inline-block化后出现空白部分解决办法
  9. GANs用于文本生成
  10. Angular - - ng-focus、ng-blur