Scala版的WordCount单词统计

本文详细介绍使用Apache Spark进行大规模数据处理的实战案例,包括如何利用Scala编程语言读取文本文件,进行单词频率统计,并通过flatMap、map及reduceByKey等操作实现高效的数据处理流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

源数据:

hello word
hello java
hello python
hello waad
hello word
hello java
hello python
hello waad
hello word
hello java
hello python
hello waad
hello word
hello java
hello python
hello waad
hello word
hello java
hello python
hello waad
dfsadh
dafhads sadfksadj sadfksadh 
dsafhkjdsahf sdahfksad 
sdfkjahlksadf fdshjslkad 
ghghfhjkdhf

Scala代码:

import scala.tools.scalap.Main
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext


object Regression {
  def main(args: Array[String]): Unit = {
    val conf=new SparkConf().setAppName("local").setMaster("local");
    val sc=new SparkContext(conf);
//    val data=sc.textFile("./words");
//    data.flatMap(_.split(" ")).map((_,1)).reduceByKey((_+_)).collect().foreach(println)
  
    sc.textFile("./words").flatMap(s=>{
      s.split(" ")
    }).map(s=>{
      (s,1)
    }).reduceByKey((v1,v2)=>{
      (v1+v2)
      }).foreach(s=>{
        println(s)
      })    
  }  
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值