将sparkSession作为函数参数传递SparkScala
我正在使用spark scala生成表,我关心的是效率 通过sparkSession会使我的程序变慢吗?它比SparkSession.getOrCreate慢吗 我以纱线为主打将sparkSession作为函数参数传递SparkScala,scala,apache-spark,Scala,Apache Spark,我正在使用spark scala生成表,我关心的是效率 通过sparkSession会使我的程序变慢吗?它比SparkSession.getOrCreate慢吗 我以纱线为主打 提前感谢。您可以创建一次Spark会话,并在不损失任何性能的情况下进行传递。 然而,修改方法签名以在会话对象中传递并不麻烦。您可以通过在函数中调用getOrCreate来避免这种情况,以获得相同的全局会话,而不传递它。调用getOrCreate时,它会将当前会话设置为默认SparkSession。setDefaultSe
提前感谢。您可以创建一次Spark会话,并在不损失任何性能的情况下进行传递。 然而,修改方法签名以在会话对象中传递并不麻烦。您可以通过在函数中调用getOrCreate来避免这种情况,以获得相同的全局会话,而不传递它。调用getOrCreate时,它会将当前会话设置为默认SparkSession。setDefaultSession ad会将该会话返回给其他getOrCreat调用
不,如果通过,则不会减慢进程。当我无法编译时,它会抱怨此语法?[错误]/home/hadoop/score2/src/main/scala/comm_demo/score2。scala:46:36:应为标识符,但找到“.”。[error]val spark=SparkSession.builder..getOrCreate[error]^[error]发现一个错误[error]编译/编译增量编译失败生成器后有2个点,删除一个!最后我猜可能是答题代码有误,效果很好。
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()
}