如何使用JAVA在Spark DataFrame上调用UDF?
2022-09-01 23:05:15
与这里类似的问题,但没有足够的点来评论那里。
根据最新的Spark文档,可以以两种不同的方式使用,一种用于SQL,另一种用于DataFrame。我发现了多个如何使用与sql一起使用的例子,但一直找不到任何关于如何直接在DataFrame上使用的例子。udf
udf
udf
o.p.在上面链接的问题上提供的解决方案使用根据Spark Java API文档在Spark 2.0中已经并将被删除的解决方案。在那里,它说:__callUDF()__
_deprecated_
“因为它与 udf() 是冗余的”
所以这意味着我应该能够用它来计算我的,但我不知道该怎么做。我没有偶然发现任何阐明Java-Spark程序语法的东西。我错过了什么?__udf()__
udf
import org.apache.spark.sql.api.java.UDF1;
.
.
UDF1 mode = new UDF1<String[], String>() {
public String call(final String[] types) throws Exception {
return types[0];
}
};
sqlContext.udf().register("mode", mode, DataTypes.StringType);
df.???????? how do I call my udf (mode) on a given column of my DataFrame df?