Spark:数据集与数据框

时间:2018-10-09 19:53:09

标签: apache-spark

this post中,作者展示了如何对数据框和数据集进行相同的计算。尽管我了解Dataset(几乎)是类型安全的DataFrame,但我不了解在此特定示例中使用Dataset有什么好处。

通常,什么时候将使用数据集而不是DataFrame进行数据处理,反之亦然? (我需要非常具体的例子)

数据是一个数据框

data
  .groupBy($"manager_name")
  .agg(
    round(avg($"response_time"), 1).as("time"),
    round(avg($"satisfaction_level"), 1).as("satisfaction")
  )
  .orderBy($"satisfaction")

总和是一个数据集

summed
  .groupByKey(x => x.manager_name)
  .agg(scaledAvg(_.response_time), scaledAvg(_.satisfaction_level))
  .map { case (managerName, time, satisfaction) =>
    FeedbackRow(managerName, time, satisfaction)
  }.orderBy($"statisfaction_level")

0 个答案:

没有答案