[英]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.