火花提交:--jars 不起作用

2024-01-17

我正在为 Spark Streaming 作业构建指标系统,在系统中,指标是在每个执行器中收集的,因此需要在每个执行器中初始化指标源(用于收集指标的类)。

指标源被打包在一个jar中,提交作业时,使用参数“--jars”将jar从本地发送到每个执行器,但是,执行器在jar到达之前就开始初始化指标源类,作为结果,它抛出类未找到异常。

看来如果执行者可以等到所有资源都准备好,问题就会解决,但我真的不知道该怎么做。

有人面临同样的问题吗?

PS:我尝试使用HDFS(将jar复制到HDFS,然后提交作业并让执行器从HDFS中的路径加载类),但失败了。我检查了源代码,似乎类加载器只能解析本地路径。

这是日志,你可以看到jar是在2016-01-15 18:08:07添加到classpath的,但是初始化是在2016-01-15 18:07:26开始的

信息 2016-01-15 18:08:07 org.apache.spark.executor.Executor:添加 文件:/var/lib/spark/worker/worker-0/app-20160115180722-0041/0/./datainsights-metrics-source- assembly-1.0.jar 到类加载器

错误 2016-01-15 18:07:26 Logging.scala:96 - org.apache.spark.metrics.MetricsSystem:源类 org.apache.spark.metrics.PerfCounterSource 无法实例化

这是我使用的命令:

spark-submit --verbose \
 --jars /tmp/datainsights-metrics-source-assembly-1.0.jar \ 
 --conf "spark.metrics.conf=metrics.properties" \
 --class org.microsoft.ofe.datainsights.StartServiceSignalPipeline \
 ./target/datainsights-1.0-jar-with-dependencies.jar

我可以想到几个选项:-

  1. 创建一个 Fat Jar 文件,其中包括主类和依赖项。
  2. 如果依赖项仅由执行程序而不是驱动程序使用,那么您可以使用显式添加 jar 文件SparkConf.setJars(....)或者如果驱动程序也使用它,那么您也可以使用命令行选项--driver-class-path用于配置驱动程序类路径。
  3. 尝试使用以下参数在 Spark-default.conf 中配置它:-

    spark.executor.extraClassPath=<classapth>
    spark.executor.extraClassPath=<classapth>
    

无论你做什么,我都建议修复网络延迟,否则会损害 Spark 作业的性能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

火花提交:--jars 不起作用 的相关文章

随机推荐

  • 修复 Twitter Bootstrap 中的按钮大小

    I use 推特引导程序 https getbootstrap com 2 3 2 在我的网络应用程序中 我有一张有很多按钮的桌子 按钮的文本随着表行的当前状态而变化 在 Ajax 请求响应之后 我使用 Jquery 更改按钮文本 我的问题
  • Rails - 在控制器中存储 cookie 并从 Javascript、Jquery 获取

    是否可以在控制器中存储用户的 Cookie 或会话 并通过 JS 或 Jquery 访问它来获取 cookie Session值在服务器上可用 你可以这样设置它们在你的控制器中 http apidock com rails ActionCo
  • WPF - 自定义设计音量控制

    我使用 WPF 已经有一段时间了 我需要通过互联网创建以下控件 但找不到合适的 任何人都可以帮助如何实现此功能 单击控件时 值应该增加或减少 我发现我可以使用音量控制或滑块 但不清楚我应该使用什么 谢谢期待 我更喜欢使用进度条来显示此类内容
  • 如何在 Visual Studio 中添加高优先级 TODO 注释?

    添加这样的评论 TODO Refactor this code 在我可以查看的任务列表中创建一个任务等 有一列标记为 让您可以按优先级对这些任务进行排序 如何设置特定任务的优先级 任务的优先级取决于您用来标记它的关键字 您可以通过转到 工具
  • 克隆 TypeScript 对象

    我有一个打字稿课程 export class Restaurant constructor private id string private name string public getId string return this id p
  • 如何从 tmux 会话获取 stdout 和 stderr?

    我正在linux系统中编写一个示例python程序 我在用tmux https linux die net man 1 tmux创建会话并在 tmux session 中执行另一个脚本 我想将 stdout 和 stderr 从 tmux
  • Bash 复杂的管道依赖关系

    I m trying to model a build concurrent pipeline in a single Bash script I know I can use other tools but at this point I
  • OpenGL:在两个元素之间画线

    我需要在我创建的两个网格之间画一条线 每个网格都与不同的模型矩阵相关联 我一直在思考如何做到这一点 我想到了 glMatrixMode GL MODELVIEW glLoadMatrixf first object model matrix
  • iframe 将 origin 发送为 null

    我有一个 iframe 内容是从我正在使用的第三方库注入的 该库正在注入用户需要提交的表单 问题是 当表单初始化时 它们正在执行一些请求 并且标头源作为空值发送 这会导致问题 因为它们的服务器不允许空值 我尝试添加沙箱属性 甚至尝试伪造调用
  • 为什么 request.body 未定义?

    我有一个 Node js 服务器 其中包括 bodyparser 和所有内容 var express require express var dbcon require app db databaseconnection var bodyP
  • Java 相当于 .NET 的 DateTime.Parse?

    我正在开发一个 java 类 该类将与 Pervasive Data Profiler 一起使用 该类需要检查日期字符串是否适用于 NET 的 DateTime Parse 是否有等效的类或第三方库可以为我提供与 NET 的 DateTim
  • 如何从 MP3 的 URL 获取其长度?

    如果我知道 MP3 文件的 URL 获取其长度 比特率 大小等最简单 最快的方法是什么 如何仅下载 MP3 的 ID3 标签部分来获取这些详细信息 您需要查看 mp3 文件中的 ID3 标签 除非您在其他地方跟踪您想要的元数据 要专门获取文
  • 为什么我的 SQL Server 审核触发器会扰乱来自 Access 的 OBDC 调用/刷新?

    我在其中一个表上实现了一个审核触发器 它基本上将旧记录和新记录以及日期和用户复制到名为 Audit 的表中 我将在下面发布我的脚本 问题是 当我在 Access 中插入新记录然后按 Tab 进行切换时 它会刷新并显示表中的第一条记录 下面是
  • 消除平均数值的子查询

    Quest 查询选择以 Vancouver 开头且距离以 Vancouver 开头的所有位置的中心 5 分钟范围内的所有点 例如 Vancouver South Fraser Vancouver Fairview 和Vancouver Ba
  • 跨文件的 SQLAlchemy 类

    我试图弄清楚如何将 SQLAlchemy 类分布在多个文件中 但我一生都无法弄清楚如何做到这一点 我对 SQLAlchemy 还很陌生 所以如果这个问题很微不足道 请原谅我 考虑这 3 个类每个人都有自己的文件 A py from sqla
  • 将 Eclipse 替换为 Sublime Text 2/3 for java

    有没有人设法为他们的基于 java 的应用程序构建一种使用 Sublime Text 2 或 3 而不是 eclipse 的方法 我们在 eclipse mac 中提供了 java 并支持 Maven 和 git 我们本身并不在 Eclip
  • 如何理解重定位部分“.rela.plt”的字段

    我试图了解 Linux 上共享库的动态链接 给出重定位部分 rela plt 的以下转储 Offset Info Type Sym Value Sym Name Addend 000000373f68 0f8300000007 R X86
  • Silverlight AutoCompleteBox 大写输入

    我需要在 Silverlight 4 应用程序的 AutoCompleteBox 中强制输入大写字母 在 TextBox 中 可以通过替换 KeyDown 事件上的 Text 属性来完成 例如 control Text enteredCha
  • Internet Explorer 中的 JavaScript 故障排除工具

    我大量使用 Firebug 和 Mozilla JS 控制台 但时不时地会遇到仅 IE 的 JavaScript bug 这真的很难定位 例如 第 724 行错误 当源 HTML 只有 200 行时 我想要一个轻量级的 JS 工具 a la
  • 火花提交:--jars 不起作用

    我正在为 Spark Streaming 作业构建指标系统 在系统中 指标是在每个执行器中收集的 因此需要在每个执行器中初始化指标源 用于收集指标的类 指标源被打包在一个jar中 提交作业时 使用参数 jars 将jar从本地发送到每个执行