Spark 计算分组依据中的单词数

Spark count number of words with in group by

我有一个数据集

+----------+--------+------------+
|        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 但无法找到有效的方法 我需要转换为 Rdd 并找到一种方法吗?

您只需要 groupBy dateerrors

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