我的Scala Spark程序(简化代码)中有不同的功能:
def func1(spark: SparkSession, inputpath: String, calc_slot_udf: UDF) : DataFrame = {
import spark.implicits._
val df = spark.read.parquet(inputpath)
valresult = df.withColumn("time_slot", calc_slot_udf($"tt"))
return result
}
def func2(df: DataFrame, c: String) : DataFrame = {
import spark.implicits._
result = df.filter($"country" === c)
return result
}
另外,我有一个主要功能,即我创建SparkSession
spark
。然后我将spark
传递给其他函数。但是,由于我使用filter($"...")
和其他类似的函数,我应该在每个函数中使用import spark.implicits._
。
有没有办法避免在每个函数中重复import spark.implicits._
?