Scala доступ или передача данных в пределах udf - PullRequest
0 голосов
/ 14 сентября 2018

UDF - мне нужно пройти через фрейм данных, чтобы выполнить определенную операцию. Я понимаю, что не могу получить доступ к полному набору данных в формате udf. Но каково это решение?

def process(spark: SparkSession, df: DataFrame): DataFrame = { 

    def udf_func = udf((name: String, cluster_id: String) => {
    print(df.count()) <-- thisline   
    cluster_id     
})
val newdf = df.withColumn("cluster_id", udf_func(df("name"),df("cluster_id")))

Мне нужно пройти «имя» по всем именам информационного кадра и получить расстояние Левенштейна, если оно находится в пределах потока, я обновляю cluster_id

print (df.count ()) -> Только для демонстрации - просто чтобы показать, что я не могу получить доступ к df в UDF

...