相关疑难解决方法(0)

单身人士作为Scala的综合课程?

我正在阅读Scala编程,我不理解以下句子(pdf第112页):

每个单例对象都实现为从静态变量引用的合成类的实例,因此它们具有与Java静态相同的初始化语义.

这是否意味着如果我在scala中有单例FooBar,编译器将创建一个名为FooBar $的类?

另外作者的意思是"从静态变量引用"?是否有一个隐藏的静态变量,某处持有对某些FooBar $类的引用?

我感谢任何帮助.

scala

17
推荐指数
2
解决办法
3972
查看次数

Spark on Java - 在所有工作者上拥有静态对象的正确方法是什么

我需要在Spark中的所有执行程序的函数中使用不可序列化的第三方类,例如:

JavaRDD<String> resRdd = origRdd
    .flatMap(new FlatMapFunction<String, String>() {
        @Override
        public Iterable<String> call(String t) throws Exception {

        //A DynamoDB mapper I don't want to initialise every time
        DynamoDBMapper mapper = new DynamoDBMapper(new AmazonDynamoDBClient(credentials));

        Set<String> userFav = mapper.load(userDataDocument.class, userId).getFav();

        return userFav;
    }
});
Run Code Online (Sandbox Code Playgroud)

我希望有一个静态DynamoDBMapper mapper,我为每个执行者初始化一次,并且能够一遍又一遍地使用它.

由于它不是可序列化的,我无法在驱动器中初始化它并进行广播.

注意:这是一个答案(在所有工作者上有一个静态对象的正确方法),但它仅适用于Scala.

java static apache-spark

6
推荐指数
1
解决办法
2661
查看次数

标签 统计

apache-spark ×1

java ×1

scala ×1

static ×1