spark scala groupbykey用于数据集错误类型不匹配

yyhrrdl8  于 2021-07-12  发布在  Spark
关注(0)|答案(0)|浏览(197)

嗨,我正在尝试做一个groupby,然后使用自定义case类在spark数据集上进行一些聚合,但是一直遇到错误。请注意,我希望输出数据集的类型仍然与原始数据集的类型相同。

case class ExampleRow(
                         a: String,
                         b: String,
                         c: Double,
                       )

val origDataset: Dataset[ExampleRow] = ...
val newDataset: Dataset[ExampleRow] = origDataset
  .groupByKey(r => r.a, r.b)
  .agg(typed.avg[TimeUsageRow](_.other).name("c").as[Double])

运行时总是出现以下错误:

type mismatch;
[error]  found   : org.apache.spark.sql.Dataset[((String, String), Double)]
[error]  required: org.apache.spark.sql.Dataset[example.ExampleRow]
[error]       .agg(
[error]           ^
[error] one error found

有什么想法吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题