版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/howard2005/article/details/79331556
利用Spark的RDD可以对本机或集群上的文件进行词频统计。
1、创建Scala项目SparkScalaWordCount

2、创建lib目录,添加spark的jar,并添加作为项目的库

3、在项目根目录创建test.txt文件

4、创建WordCount对象

package net.hw.spark.wc

import org.apache.spark.{SparkConf, SparkContext}

/**
* Created by howard on 2018/2/6.
*/
object WordCount {
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setMaster("local").setAppName("wordcount")
val sc = new SparkContext(conf)
val rdd = sc.textFile("test.txt")
.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_ + _)
rdd.foreach(println)
rdd.saveAsTextFile("result")
}
}

5、启动WordCount,查看结果

统计结果还保存在result目录下的文本文件里:

6、利用Spark集群处理保存在HDFS上的文件
(1)上传test.txt到HDFS的word目录

(2)启动Spark集群的Master和Slave
[root@hadoop ~]# cd /home/software/spark-2.2.0-bin-hadoop2.7/conf
[root@hadoop conf]# vim spark-env.sh
export SPARK_WORKER_MEMOR=512m
[root@hadoop ~]# start-dfs.sh
[root@hadoop ~]# start-master.sh -h hadoop
[root@hadoop ~]# start-slave.sh spark://hadoop:7077

(2)修改WordCount
package net.hw.spark.wc

import org.apache.spark.{SparkConf, SparkContext}

/**
* Created by howard on 2018/2/6.
*/
object WordCount {
def main(args: Array[String]): Unit = {
val conf = new SparkConf()
conf.setAppName("wordcount")
conf.setMaster("spark://hadoop:7077")
val sc = new SparkContext(conf)

val rdd = sc.textFile("hdfs://hadoop:9000/word/test.txt")
.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_ + _)
rdd.saveAsTextFile("hdfs://hadoop:9000/word/result")
}
}
(3)打成jar包SparkScalaWordCount.jar

(4)将SparkScalaWordCount.jar上传到虚拟机hadoop的/home/howard目录

(5)在Spark服务器上运行
[root@hadoop howard]# spark-submit --class net.hw.spark.wc.WordCount ./SparkScalaWordCount.jar

将两个结果文件part-00000和part00001合并成一个结果文件result.txt存放虚拟机本地磁盘,执行:
[root@hadoop howard]# hadoop fs -getmerge /word/result result.txt
[root@hadoop howard]# cat result.txt
————————————————
版权声明:本文为CSDN博主「howard2005」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/howard2005/article/details/79331556

转:Spark案例:Scala版统计单词个数相关推荐

  1. Spark案例:Scala版统计单词个数

    目录 1.创建Scala项目SparkScalaWordCount 2.创建lib目录,添加spark的jar,并添加作为项目的库

  2. Spark案例:Python版统计单词个数

    1.Python项目PythonSparkWordCount 2.input目录里的文本文件test.txt 3.创建word_count.py文件实现词频统计 import os import sh ...

  3. Spark案例:Java版统计单词个数

    1.Maven项目JavaSparkWordCount 2.在pom.xml里,添加对spark的依赖 <?xml version="1.0" encoding=" ...

  4. hadoop 文本统计一个字符的个数_hadoop统计单词个数 - 卡饭网

    hadoop入门之统计单词在文件中出现的个数示例 hadoop入门之统计单词在文件中出现的个数示例 Linux环境:CentOs6.4 Hadoop版本:hadoop-0.20.2 内容:统计hado ...

  5. 开发可统计单词个数的Android驱动程序(2)

    开发可统计单词个数的Android驱动程序(1) 五.指定与驱动相关的信息 虽然指定这些信息不是必须的,但一个完整的Linux驱动程序都会指定这些与驱动相关的信息.一般需要为Linux驱动程序指定如下 ...

  6. 统计单词个数(划分型)

    codevs 1040 统计单词个数 2001年NOIP全国联赛提高组  题目等级 : 黄金 Gold 题目描述 Description 给出一个长度不超过200的由小写英文字母组成的字母串(约定;该 ...

  7. codevs1040统计单词个数(区间+划分型dp)

    1040 统计单词个数 2001年NOIP全国联赛提高组  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description 给出一个长度不超过2 ...

  8. c语言编程统计单词的个数,使用c语言如何统计单词个数

    使用c语言如何统计单词个数 发布时间:2020-04-21 13:58:58 来源:亿速云 阅读:207 作者:小新 使用c语言如何统计单词个数?相信有很多人都不太了解,今天小编为了让大家更加了解Go ...

  9. 【codevs1040】【01NOIPTG】统计单词个数,字符串的划分DP

    1040 统计单词个数 2001年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给出一个长度不超过200的 ...

最新文章

  1. VuePress 入门
  2. SQL Server中的角色(服务器级别和数据库级别角色)
  3. JWT对称加密非对称加密
  4. Fast R-CNN《Fast R-CNN》论文笔记
  5. 深入到系统组件是否白盒测试_2019年系统集成项目管理工程师:第一章 信息化知识(三)要点?...
  6. 黑马程序员---面向对象笔记总结
  7. react 小程序转换_如何将AngularJS 1.x应用程序转换为React应用程序-一次转换一个组件。
  8. ECCV18 Oral | MVSNet: 非结构化多视点三维重建网络(高精度高效率,代码已开源)...
  9. 小米11新旗舰通过3C认证:支持最高67.1W快充
  10. ES6新特性_变量的解构赋值---JavaScript_ECMAScript_ES6-ES11新特性工作笔记006
  11. 如果有200万存款吃利息,可以不用上班吗?
  12. Java 针对每个人安装的位置不同的情况 从快捷方式中获取到安装位置 运行谷歌浏览器
  13. ucinet计算聚类系数大于1怎么办_ucinet6聚类分析
  14. smtp服务器发送邮件的工作原理,SMTP协议工作原理及服务.doc
  15. 单片机与嵌入式linux 比较
  16. 【Python百日进阶-Web开发-Feffery】Day378 - fac数据展示17:AntdTable 表格 (5)示例:表格校验、监听
  17. 更改计算机的主题和桌面背景,禁止更改电脑主题背景的技巧
  18. Foxmail添加gmail账号
  19. 浅谈解析库XPath,bs4和pyquery
  20. Ubuntu 查看磁盘空间大小命令

热门文章

  1. 简述运用计算机思维解决问题的步骤,计算思维能力主要包括问题及问题求解过程的符号表示、逻辑思维与抽象思维、形式化证明、建立模型和模型计算、利用计算机技术等能力 答案:√...
  2. asp.net文件下载,实现隐藏文件下载地址
  3. 对PyTorch的dim的理解
  4. 纸上得来终觉浅,绝知此事要躬行。
  5. 史上最牛叉的俄罗斯方块--game.cpp/.h
  6. 视频教程-微信小程序电商实战-PHP
  7. 浅入浅出游戏粒子系统
  8. java总是标点符号报错_[javamail]AUTH LOGIN failed;Invalid username or password报错
  9. vue iframe里内容无法撑开高度 固定150px 解决方法
  10. 升级产品思维,三年内让自己的收入翻十倍