简体   繁体   English

在 RDD 上计算之前为每个 Spark 执行器指定初始化

[英]Specify Initialization for each Spark executor before compute on RDD

I want to make sure this class/static-block to be initialized in every JVM as early as possible because it suppose to be(in order to work properly),我想确保尽早在每个 JVM 中初始化这个类/静态块,因为它应该是(为了正常工作),

// java
class SecurityInitializer {
    static {
        Security.addProvider(myprovider);
    }
}

// Equivalent in Scala, use companion object to get something similar to static block in Java
object SecurityInitializer {
    Security.addProvider(myprovider)
}

I know it`s easy to do this in driver , but how do I force this code to run in executor ideally before creation of sparkcontext?我知道在 driver 中执行此操作很容易,但是如何在创建 sparkcontext 之前强制此代码在理想情况下在executor 中运行?

Looking for answers in Scala but any suggestion is welcomed.在 Scala 中寻找答案,但欢迎提出任何建议。

OK 现在是官方用例了,从 2.4 开始,名字是 ExecutorPlugin https://issues.apache.org/jira/browse/SPARK-24918

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM