当前位置:网站首页>添加spark的相关依赖和打包插件(第六弹)
添加spark的相关依赖和打包插件(第六弹)
2022-08-10 06:20:00 【发量不足】
目录
步骤1 打开pom.xmlà添加的以下依赖,点击右下角enable auto-import自动下载
步骤2 右击main下的Scala文件先创建一个package并命名为cn.itcast
步骤3 创建WordCount.scala文件用于词频统计 alt+回车:选择导入包
步骤3 创建WordCount.scala文件用于词频统计 alt+回车:选择导入包
注意:需要事先在D盘创建word文件夹下的words.txt里面内容如下:(最好不要用中文路径)
添加spark的相关依赖和打包插件
步骤1 打开pom.xmlà添加的以下依赖,点击右下角enable auto-import自动下载
<!--设置依赖版本号-->
<properties>
<scala.version>2.11.8</scala.version>
<hadoop.version>2.7.1</hadoop.version>
<spark.version>2.0.0</spark.version>
</properties>
<dependencies>
<!--Scala-->
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
<!--Spark-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>${spark.version}</version>
</dependency>
<!--Hadoop-->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>${hadoop.version}</version>
</dependency>
</dependencies>
添加完依赖后选择自动载入
步骤2 右击main下的Scala文件先创建一个package并命名为cn.itcast
步骤3 创建WordCount.scala文件用于词频统计 alt+回车:选择导入包
问题:没有scala文件创建选项
解决方法:
添加完插件包后即可:
步骤3 创建WordCount.scala文件用于词频统计 alt+回车:选择导入包
注意:需要事先在D盘创建word文件夹下的words.txt里面内容如下:(最好不要用中文路径)
package cn.itcast
# 导入包
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
object WordCount {
def main(args: Array[String]): Unit = {
//1.创建SparkConf对象,设置appName和Master地址
val sparkconf = new SparkConf().setAppName("WordCount").setMaster("local[2]")
//2.创建SparkContext对象,它是所有任务计算的源头,它会创建DAGScheduler和TaskScheduler
val sparkContext = new SparkContext(sparkconf)
//设置日志级别
//sparkContext.setLogLevel("WARN")
//3.读取数据文件,RDD可以简单的理解为是一个集合,集合中存放的元素是String类型
val data : RDD[String] = sparkContext.textFile("D:\\word\\words.txt")
//4.切分每一行,获取所有的单词
val words :RDD[String] = data.flatMap(_.split(" "))
//5.每个单词记为1,转换为(单词,1)
val wordAndOne :RDD[(String, Int)] = words.map(x =>(x,1))
//6.相同单词汇总,前一个下划线表示累加数据,后一个下划线表示新数据
val result: RDD[(String, Int)] = wordAndOne.reduceByKey(_+_)
//7.收集打印结果数据
val finalResult: Array[(String, Int)] = result.collect()
println(finalResult.toBuffer)
//8.关闭sparkContext对象
sparkContext.stop()
}
}
可以看到计算出的单词频数itcast(1)Hadoop(1)spark(1)hello(3)
可能碰到的问题:
如果遇到运行结果报错或者结果没出来,则是没放Scala-sdk-2.11.8
解决方法:
如果没有则需要手动添加:
解决以上问题,运行结果如下
可以看到计算出的单词频数itcast(1)Hadoop(1)spark(1)hello(3)
边栏推荐
- 2022河南萌新联赛第(五)场:信息工程大学 H - 小明喝奶茶
- 语法基础(判断语句)
- Unity3d famous project-Dark Tree translation
- 强化学习_07_DataWhale深度Q网络进阶技巧
- Tencent Cloud Song Xiang: Kubernetes cluster utilization improvement practice
- MySQL事务隔离级别
- 强化学习_11_Datawhale模仿学习
- 【强化学习】《Easy RL》- Q-learning - CliffWalking(悬崖行走)代码解读
- 强化学习_06_pytorch-DQN实践(CartPole-v0)
- 【愚公系列】2022年08月 Go教学课程 034-接口和多态
猜你喜欢
[Reinforcement Learning] "Easy RL" - Q-learning - CliffWalking (cliff walking) code interpretation
Tencent Cloud Song Xiang: Kubernetes cluster utilization improvement practice
ESP32 485风速
MVCC详解
腾讯云宋翔:Kubernetes集群利用率提升实践
CuteOneP 一款php的OneDrive多网盘挂载程序 带会员 同步等功能
关于MongoDb查询Decimal128转BigDecimal问题
High quality WordPress download station 5 play theme template
强化学习_10_Datawhale稀疏奖励
Reproduce dns out-band data combined with sqlmap
随机推荐
QEMU guest与host通过网络通信——bridge/hostfwd/guestfwd
2022河南萌新联赛第(五)场:信息工程大学 F - 分割草坪
2022河南萌新联赛第(五)场:信息工程大学 H - 小明喝奶茶
求问各位大佬,FLink SQL读取source的时候去指定水位线的时间字段,如果指定的这个字段中格
关于Qt高频率信号槽合并的误解和方案
2022河南萌新联赛第(五)场:信息工程大学 C - 丢手绢
数据库学习之表的约束
Chapter 11 Database Design Specifications [2. Index and Tuning] [MySQL Advanced]
Grammar Basics (Judgment Statements)
2022 Henan Mengxin League No. 5: University of Information Engineering B - Transportation Renovation
什么是MQTT网关?与传统DTU有哪些区别?
2022河南萌新联赛第(五)场:信息工程大学 B - 交通改造
强化学习_12_Datawhale深度确定性策略梯度
XV6 swtch.S详解
Qt程序字体初始化引起的白屏问题
Elementary Structure
MySQL 免安装版/解压版的安装与配置(Win & Unix & Linux)
3. Transactions [mysql advanced]
socket实现进程间通信
2022河南萌新联赛第(五)场:信息工程大学 J - AC自动机