0

我们目前正在编辑 Spark 中的特定模块。我们正在使用 spark-kernel https://github.com/ibm-et/spark-kernel来运行我们所有的 spark 作业。所以,我们所做的是再次编译我们编辑过的代码。这会生成一个 jar 文件。但是,我们不知道如何将代码指向 jar 文件。

看起来它再次引用了旧脚本,而不是新编辑和新编译的脚本。您对如何修改一些 spark 包/模块并使用 spark-kernel 反映更改有一些想法吗?如果我们不打算使用 spark-kernel,有没有办法可以在 spark 中编辑特定模块,例如 spark 中的 ALS 模块:https ://github.com/apache/spark/blob/master/mllib /src/main/scala/org/apache/spark/ml/recommendation/ALS.scala。谢谢!

4

1 回答 1

1

您可能编辑了一个scalaorjava文件并重新编译(即使您称它们为脚本,它们也不是严格意义上的脚本,因为它们没有被干扰)。假设这就是你所做的......

然后,您可能没有完全替换您正在测试的部署中生成的 JAR 文件。奇怪的是您新编译的 JAR 文件在某个地方,而不是在您正在观察的某个地方。要正确获取它,您必须构建的不仅仅是 JAR 文件,还必须重新打包可安装文件并重新安装。

存在其他技术,如果您可以在安装中识别解压的项目,有时您可以将其复制到位;但是,这种技术本质上是不可维护的,因此我建议仅在对更改进行一次性验证时使用它,而不是在将要使用的任何系统上使用。

请记住,使用 Spark,有时工作节点是动态部署的。如果是这样,您可能必须找到可安装的动态部署系统,并确保那里也有正确的包装。

于 2016-03-14T13:53:33.560 回答