首页 > 解决方案 > Spark count 分组中的单词数

问题描述

我有一个数据集

+----------+--------+------------+
|        id|    date|       errors|
+----------+--------+------------+
|1         |20170319|      error1|
|1         |20170319|      error2|
|1         |20170319|      error2|
|1         |20170319|      error1|
|2         |20170319|        err6|
|1         |20170319|       error2|

需要按天计算错误数

输出

+----------+--------+------------+
|    date|       errors| count
+----------+--------+------------+
 |20170319|      error1|    2
 |20170319|      error2|    3
 |20170319|        err6|    1
    val dataset = spark.read.json(path);
    val c =dataset.groupBy("date").count()

//我如何继续计算错误

我在 spark scala sql 中尝试过 Windowing over date 但无法找到生产力我需要转换为 Rdd 并找到一种方法吗?

标签: sqlscalaapache-sparkapache-spark-sqlapache-spark-dataset

解决方案


你只需要groupBy两者dateerrors

val c =dataset.groupBy("date","errors").count()

推荐阅读