[英]Passing sparkSession as function parameters spark-scala
我正在使用 spark-scala 生成表格,我很关心效率。
通过 sparkSession 会使我的程序变慢吗? 它比 SparkSession.getOrCreate 慢吗?
我使用纱线作为主人。
提前致谢。
您可以创建 Spark 会话一次并在不损失任何性能的情况下传递。 但是,修改方法签名以传入会话对象并不方便。 您可以通过简单地在函数中调用getOrCreate
来获取相同的全局会话而不传递它来避免这种情况。 当getOrCreate
被调用时,它会将当前会话设置为默认SparkSession.setDefaultSession
广告将其返回给其他getOrCreat
调用
val spark : SparkSession = SparkSession.builder
.appName("test")
.master("local[2]")
.getOrCreate()
//pass in function
function1(pass)
//obtain without passing
def function2(){
val s = SparkSession.builder.getOrCreate()
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.