Zgodnie z docs funkcje collect_set
i collect_list
powinny być dostępne w Spark SQL. Jednak nie mogę go uruchomić. Używam Spark 1.6.0 przy użyciu Docker image.Użyj opcji collect_list i collect_set w Spark SQL
Staram się robić to w Scala:
import org.apache.spark.sql.functions._
df.groupBy("column1")
.agg(collect_set("column2"))
.show()
I pojawia się następujący błąd w czasie wykonywania:
Exception in thread "main" org.apache.spark.sql.AnalysisException: undefined function collect_set;
próbował go również za pomocą pyspark
, ale to też nie. Dokumenty stwierdzają, że te funkcje są aliasami UDAFów Ula, ale nie mogę wymyślić, aby włączyć te funkcje.
Jak to naprawić? Thanx!
i co 1.6.1 w dokumentach sais że avialable "@since 1.6.0", ale nadal jestem, że uzyskanie błąd –
Hej @ zero323, Próbuję użyć funkcji "zbieraj listy" w Spark 1.5.0. Stworzyłem kontekst ula, ale nie mogę wymyślić, jak zaimportować funkcję. To nie kompiluje: .groupBy (providerData ("PRVSEQ"), providerData ("PROV_NUM")) .agg (collect_list (regexp_replace (triggerReport ("match_type"), "_ (Individual | Practice) Model.", " "))) –
@VijayRatnagiri Zostało wprowadzone w 1.6. O ile dobrze pamiętam, powinieneś być w stanie użyć surowego zapytania SQL w 1.5 na zarejestrowanej tabeli tymczasowej. – zero323