Spark-Wordount详细解析scala版本

本文通过实例演示如何使用Apache Spark进行简单的词频统计任务。包括创建Spark上下文、加载数据、执行map-reduce操作及输出结果等关键步骤。

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

第一步:创建Spark对象

       sc = SparkContext(appName="PythonWordCount")

第二步:获取数据并将数据并行化(这里直接List())

data= List("i","love","spark","do","you","love","spark","too")

       RDD= sc.parallelize(data)

第三步:对RDD进行处理

var re=RDD.map((_,1)).reduceByKey(_+_).collect()

第四步:打印输出
print(re)


map的参数是一个,假如List()有100 TG,master主机会将这些数据分片,分成10000个(这里假设哦,可调的)然后发放到各个slave上
sc.parallelize(data)这段代码就是这个意思。接着map,一般情况下会从hdfs中读取文件,每读一次就是一行,map这个参数就是接受这一行数据然后对这一行数据进行处理
,本例子中么有从hdfs 中读,map的参数传进来的就是List()中的一个元素,map里面填的(_,1)其实就是一个匿名函数,也可以自己写一个函数,然后将函数名写进来。map
里面的匿名函数意思是,每接受一个参数,就将这个参数以《K,V》的形式返回,K就是List中的单词,词频为1,每一个计算节点都会执行map函数


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值