Spark广播变量似乎是单元化的

时间:2018-03-27 15:04:18

标签: scala apache-spark nullpointerexception broadcast

我有一个单例对象 Main ,并定义了private var

private var params: Broadcast[Parameters] = _

然后我通过main方法初始化它

def main(args: Array[String]) = {
  ...
  params = spark.sparkContext.broadcast(new Parameters())

我在这个对象中有一个方法,然后传递rdd参数并尝试从map变换中获取广播变量的值。

def testMethod(rdd: RDD[String]): Unit = {
  rdd.map(elem -> {
    val currentDate = params.value.CURRENT_DATE
    ...

在我尝试获取值grom params的行上出错: NullPointerException 。如何修复此代码以使其工作?我无法理解初始化有什么问题。

0 个答案:

没有答案