上述代码怎么改为统计每一类的总和
时间: 2024-03-17 13:40:13 浏览: 9
如果要将 WordCount 程序改为统计每一类数据的总和,可以按照下面的方式修改程序:
```scala
import org.apache.flink.api.scala._
object SumCount {
def main(args: Array[String]): Unit = {
// 第1步:建立执行环境
val env = ExecutionEnvironment.getExecutionEnvironment
// 第2步:创建数据源
val data = env.fromElements(
("classA", 80),
("classA", 85),
("classB", 90),
("classB", 95),
("classB", 92)
)
// 第3步:对数据集指定转换操作
val counts = data
.groupBy(0)
.sum(1)
// 第4步:输出结果
counts.print()
}
}
```
这个程序中,我们使用 `env.fromElements` 方法创建了一个数据源,其中包含了多个二元组,第一个元素表示类别,第二个元素表示该类别的一个数值。接下来,我们使用 `.groupBy(0)` 方法按照第一个元素(类别)进行分组,然后使用 `.sum(1)` 方法对每个分组中的第二个元素(数值)进行求和。最后,我们将结果打印到控制台。执行该程序后,会输出每个类别的总和。