如何从spark中的数据框创建多个列表。 在我的情况下,我想订购具有分组特定密钥的mongodb文档。并创建多个列表,该列表基于一个模式键进行分组 请帮帮我
sparkSession = SparkSession.builder().getOrCreate()
MongoSpark.load[SparkSQL.Character](sparkSession).printSchema()
val characters = MongoSpark.load[SparkSQL.Character](sparkSession)
characters.createOrReplaceTempView("characters")
val sqlstmt = sparkSession.sql("SELECT * FROM characters WHERE site = 'website'")
...
答案 0 :(得分:0)
您可以这样做:
val columns = sqlstmt.columns.map(col)
task1
.groupBy(key)
.agg(collect_list(struct(columns: _*)).as("data"))
不要忘记导入
import org.apache.spark.sql.functions._