1
object SparkUDFApp {
def main(args: Array[String]) {
val df = ctx.read.json(".../example.json")
df.registerTempTable("example")
val fn = (_: String).length // % 10
ctx.udf.register("len10", fn)
val res0 = ctx sql "SELECT len10('id') FROM example LIMIT 1" map {_ getInt 0} collect
println(res0.head)
}
}
JSON示例代碼
{"id":529799371026485248,"text":"Example"}
的代碼應返回從JSON字段值的長度(例如,「 ID'具有值18)。但不是返回'18',而是返回'2',這是'id'的長度,我想。
所以我的問題是如何重寫UDF來解決它?