Apache spark 如何识别正在运行的JVM是Apache Spark中的驱动程序还是执行程序
我正在尝试将Spark日志扩展到Elasticsearch。我正在寻找一种方法,在构建log语句时,识别此消息是由驱动程序记录的还是来自执行者的Apache spark 如何识别正在运行的JVM是Apache Spark中的驱动程序还是执行程序,apache-spark,Apache Spark,我正在尝试将Spark日志扩展到Elasticsearch。我正在寻找一种方法,在构建log语句时,识别此消息是由驱动程序记录的还是来自执行者的 有什么建议吗?我将用下面的代码来区分驱动程序和执行程序 object test{ def main(args:Array[String]){ log.info("This is driver") val sparkSession = ??? spark.read ...
有什么建议吗?我将用下面的代码来区分驱动程序和执行程序
object test{
def main(args:Array[String]){
log.info("This is driver")
val sparkSession = ???
spark.read
...
.map(x=>{
...
log.info("This is executor")
...
})
log.info("This is driver")
}
}
正如您所看到的,介于map
/foreach
和其他转换/操作之间的任何操作都在执行器上执行,其他所有操作都在驱动程序上执行
希望这能澄清 转换中的任何内容(映射、平面映射、过滤器等)都将在执行器上执行。