1
我试着去创建一个最简单的UDF到LAT的变换,长值,我从JDBC连接到麦哲伦点UDT得到阅读空间数据的火花2 megallen
我想是这样的(星火2.1):
val spark = SparkSession
.builder()
.master("local[2]")
.getOrCreate()
import spark.implicits._
import org.apache.spark.sql.functions.udf
val df = Seq((30.1,32.2,new PointUDT())).toDF("lat","long","point")
val toPointUDF = udf{(x:Double,y:Double) => new PointUDT.serialize(Point(x,y)) }
val result = df.withColumn("point",toPointUDF($"point")).take(1)
result must beEqualTo(Point(30,10))
遗憾的是它不经过编译... 获得“PointUDT是从这个地方人迹罕至”
我怎样才能使这项工作?