【问题标题】:Java Spark broadcast variable in separate file单独文件中的 Java Spark 广播变量
【发布时间】:2016-02-09 16:00:56
【问题描述】:

我需要在我的驱动程序中创建一个广播变量,并在一个单独的文件中的一个类中使用它。

例如我在驱动中有这个:

public static final Relation[] relations = {
     Test1.getRelationSigleton(),
     Test2.getRelationSigleton()
};

relationsBroadcast = ctx.broadcast(relations);

在地图步骤中我需要得到这个:

private Relation[] relations = relationsBroadcast.value();

问题是它无法编译,因为没有在新文件的范围内声明关系广播。

我现在的解决方案是将地图步骤与驱动程序放在同一个文件中,但它看起来很乱,我想将其移出。

【问题讨论】:

  • 由于关系是静态的,您可以在使用它的代码段中声明广播

标签: java apache-spark broadcast


【解决方案1】:

正如@rhernando 在评论中提到的那样,这样做的方法是使用对主类中变量的静态引用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多