Spark:统计两个字段

时间:2016-12-13 11:22:15

标签: apache-spark

我正在尝试用Spark计算一些参数。我使用了单词计数示例。 在这个例子中,我们可以计算一个单词,但我想知道如何同时计算两个字段。

这是我想要做的:

输入文件

{
    "redundancy":1,
    "deviceID":"dv1"
}
{
    "redundancy":1,
    "deviceID":"dv2"
}
{
    "redundancy":2,
    "deviceID":"dv1"
}
{
    "redundancy":1,
    "deviceID":"dv1"
}
{
    "redundancy":2,
    "deviceID":"dv5"
}

输出文件

{
    "redundancy":1,
    "count":3,
    "nbDevice":2
}
{
    "redundancy":2,
    "count":2,
    "nbDevice":2
}

我想知道是否已经有这个用例的例子,或者如果你有任何文档或链接,我会非常感激。

1 个答案:

答案 0 :(得分:1)

您可以使用对作为键。

解决方案可能如下所示:

rdd.map(record => (record.firstField, record.secondField) -> 1)
   .reduceByKey(_ + _)
相关问题