Spark 2.1 将 UDF 注册到 functionRegistry



嗨,我想注册一个已经创建的 UDF 对象。 我正在使用 spark 2.1,而 sparkSession.udf.register(( 函数不接受 UDF 参数,只接受常规的 scala 函数。 很容易从大型Spark API中错过某些内容,因此只需询问是否有函数或构造函数可以在2.1中允许这样做?

在这种情况下,我会扭转问题并使用 udf 注册来获得UserDefinedFunction

import org.apache.spark.sql.expressions.UserDefinedFunction
val id: UserDefinedFunction = spark.udf.register("id", (x: Int) => x)

这将在DataFrames中同时工作:

val id: UserDefinedFunction = spark.udf.register("id", (x: Int) => x)

和 SQL:

spark.sql("SELECT id(id) FROM RANGE(42)")

相关内容

  • 没有找到相关文章

最新更新