scala的wordcount程序

goods.txt

13059  2019-12-23 06:12:29
15281  2019-12-23 06:12:29
14905  2019-12-23 06:12:29
14622  2019-12-23 06:12:29
19817  2019-12-23 06:12:29
13009  2019-12-23 06:12:29
14572  2019-12-23 06:12:29
11081  2019-12-23 06:12:29
17228  2019-12-23 06:12:29
16931  2019-12-23 06:12:29
18945  2019-12-23 06:12:29
18013  2019-12-23 06:12:29
11879  2019-12-23 06:12:29
17429  2019-12-23 06:12:29
17570  2019-12-23 06:12:29
12141  2019-12-23 06:12:29
11758  2019-12-23 06:12:29
15326  2019-12-23 06:12:29
14718  2019-12-23 06:12:29
13607  2019-12-23 06:12:29
16815  2019-12-23 06:12:29
11954  2019-12-23 06:12:29
12841  2019-12-23 06:12:29
18054  2019-12-23 06:12:29
12340  2019-12-23 06:12:29
17825  2019-12-23 06:12:29
10948  2019-12-23 06:12:29
17236  2019-12-23 06:12:29
14181  2019-12-23 06:12:29
16364  2019-12-23 06:12:29
10167  2019-12-23 06:12:29
15274  2019-12-23 06:12:29
15835  2019-12-23 06:12:29
15301  2019-12-23 06:12:29
10411  2019-12-23 06:12:29
15269  2019-12-23 06:12:29
19951  2019-12-23 06:12:29
13363  2019-12-23 06:12:29
16532  2019-12-23 06:12:29
17222  2019-12-23 06:12:29
14913  2019-12-23 06:12:29
18991  2019-12-23 06:12:29
15675  2019-12-23 06:12:29
16375  2019-12-23 06:12:29
12181  2019-12-23 06:12:29
12846  2019-12-23 06:12:29
19642  2019-12-23 06:12:29
17573  2019-12-23 06:12:29
16103  2019-12-23 06:12:29
18154  2019-12-23 06:12:29
11089  2019-12-23 06:12:29
14158  2019-12-23 06:12:29
18991  2019-12-23 06:12:29
14799  2019-12-23 06:12:29
12870  2019-12-23 06:12:29
12153  2019-12-23 06:12:29
16096  2019-12-23 06:12:29
16640  2019-12-23 06:12:29
18872  2019-12-23 06:12:29
10108  2019-12-23 06:12:29
15066  2019-12-23 06:12:29
11491  2019-12-23 06:12:29
18612  2019-12-23 06:12:29
18973  2019-12-23 06:12:29
15727  2019-12-23 06:12:29
13312  2019-12-23 06:12:29
19056  2019-12-23 06:12:29
14585  2019-12-23 06:12:29
10003  2019-12-23 06:12:29
15521  2019-12-23 06:12:29
12853  2019-12-23 06:12:29
15755  2019-12-23 06:12:29
11276  2019-12-23 06:12:29
14950  2019-12-23 06:12:29
18219  2019-12-23 06:12:29

wc.scala

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
object wc {
  def main(args: Array[String]): Unit = {
    //指定为root用户
    System.setProperty("HADOOP_USER_NAME", "root")
    //获取conf文件
    val conf = new SparkConf()
      //项目名
      .setAppName("wc")
      //允许本地运行
      .setMaster("local")
    //获取上下文
    val sc = new SparkContext(conf)
    //hdfs上获取源文件
    //14816  2019-12-23 06:12:30
    //14816  2019-12-23 06:12:30
    //11077  2019-12-23 06:12:30
    val lines = sc.textFile("hdfs://10.0.0.20:8020/goods.txt")
    //以\t进行拆分,获取第一个索引
    //14816
    //14816
    //11077
    val words = lines.map(_.split("\t")(0))
    //每个索引末尾加1
    //(14816,1)
    //(14816,1)
    //(11077,1)
    val tulp = words.map((_,1))
    //key相同的进行累加
    //(14816,2)
    //(11077,1)
    val re = tulp.reduceByKey(_+_)
    //将k和v调换位置,再将k降序排序"false"再调换k和v
    val jx = re.map(x => (x._2,x._1)).sortByKey(false ).map(x => (x._2,x._1))
    //转为字符串以\t进行分割
    //14816 2
    //11077 1
    val str = jx.map( x=> {x._1 + "\t" + x._2})
    //结果输出到hdfs上
    str.saveAsTextFile("hdfs://10.0.0.20:8020/sp/wc2")
  }
}

结果

在这里插入图片描述详情 http://www.dhhblog.com/?p=1231

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值