Scala + Spark:在程序中传递参数的方法。是否可以使用Context?

时间:2018-02-06 11:01:11

标签: scala apache-spark

我想知道是否可以使用上下文或类似的东西在Scala Spark程序中传递参数。我的意思是,我在我的应用程序中读取了spark-submit中的一些参数,但这些参数将是必要的"最后"(让我们说)。所以我必须将它们从驱动程序传递到另一个文件,然后传递给另一个文件,依此类推......所以,我对方法的调用有很多参数。 提前谢谢!

1 个答案:

答案 0 :(得分:3)

要理解的关键点是,您提供spark提交应用程序jar文件以及您希望在调用jar时提供spark提供的任何命令行参数。

我的理解是,你只需要在执行结束时使用其中的一些参数,而不是在嵌套函数调用中携带所有这些参数。我会说,有一定范围的重构设计。

任何情况下,您可以使用的一个技巧是,将这些参数写入json文件并在必要时使其可供您的spark应用程序读取(我会将这些参数写入aws s3并在需要时读取它们)。

或者,您可以创建一个隐式变量并将其传递出我认为不是一个好设计的代码。