0


Spark集群搭建记录 | 云计算[CentOS7] | Scala Maven项目访问Spark实现单词计数

本文目录

写在前面

本系列文章索引以及一些默认好的条件在 传送门
要想完成Spark的配置,首先需要完成Hadoop&&Spark的配置
Hadoop配置教程:链接
在这里插入图片描述

若未进行明确说明,均按照root用户操作

step1 下载Scala IDE

本来在Eclipse的Marketplace便可以下载,可是现在官网都寄了
所以说只好找到之前的版本凑合来用
下载链接
这个软件再解压后会产生一个文件夹

eclipse

,所以说为了避免和先前的

eclipse

产生冲突或者是覆盖问题
我们选择在也之前不同的目录下进行解压,然后进行配置

step2 解压安装Scala IDE

假设已经将scala-ide放置到虚拟机的某路径下,该路径不同于eclipse的路径
假如以

/usr/local

为例
我们使用

tar

命令进行解压:

tar -zxvf scala-SDK<Tab>

然后就可以打开其中的

eclipse/eclipse

使用该软件:
在这里插入图片描述
如果说想要更方便的在桌面直接就能点击使用的话,可以直接创建

软连接

或者是

.Desktop

文件并放置到桌面,方法不在赘述

step3 Scala 下载

注意注意!!!

Scala

的版本对

Spark

版本极其敏感,所以说为了能够下载适合已经装了的

Spark

版本互相兼容,还请移步官网查看并下载适配的

Scala

,博主下面给出对应的适配关系,来源maven仓库
在这里插入图片描述

博主使用的是

Spark2.4.0

,与这个版本兼容的有2.11/2.12
在这里博主使用

2.11

版本的

Scala

进行配置

cd /usr/local
wget https://downloads.lightbend.com/scala/2.11.8/scala-2.11.8.tgz
tar -zxvf scala-2<Tab>
mv scala-2<Tab> scala

step4 Scala 配置

vim /etc/profile

加入:

export SCALA_HOME=/usr/local/scala
export PATH=$PATH:$SCALA_HOME/bin
source

一下使其生效

source /etc/profile

在输入

scala

之后如若出现下图则代表成功:
在这里插入图片描述
因为在后续的过程中,均需要该环境跑集群的代码,所以说,集群的所有机器为了能够干活,都需要安装

scala

可以使用

scp

命令传送到集群的其他节点,或者是手动在剩余的机器重复step3

    →
   
  
  
   \to
  
 
→step4

step5 创建scala项目

打开

Scala ide

,并创建

scala

项目:
在这里插入图片描述
右键单击创建好的项目,将下图的第三步换成

Convert to Maven Project

,因为博主已经将项目设置为

Maven

项目,所以说,该选项消失
在这里插入图片描述

step6 创建scala object

src

目录下,我们创建一个

scala object


右键

src

,然后:
在这里插入图片描述
在里面写入代码逻辑,具体代码可以参考链接
并根据实际情况对代码进行修改
以上链接源代码:
具体代码根据自己实际情况来进行修改

importorg.apache.spark.{SparkConf, SparkContext}object WordCount {def main(args: Array[String]):Unit={val conf =new SparkConf()
        conf.setAppName("wordcount")
        conf.setMaster("spark://主机名:7077")val sc =new SparkContext(conf)val rdd = sc.textFile("hdfs://主机名:9000/tmp/test.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _)
        rdd.saveAsTextFile("hdfs://主机名:9000/tmp/result")}}

step7 修改pom文件

pom.xml

文件中加入和自己实际环境适配的依赖:
比如

spark-core

的话,我们就选择:
在这里插入图片描述

<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core --><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.11</artifactId><version>2.4.0</version></dependency>

以上内容要加在

<dependencies></dependencies>

之间,

<dependencies></dependencies>

<build></build>

同“等级”
至于

<plugin></plugin>

可以根据自己实际情况进行配置

step8 配置项目

右键单击项目:
在这里插入图片描述
选择完成后,在左侧找到

scala complier


在这里插入图片描述
选择跟自己适配的版本,然后确定关闭
而对于

maven

的相关配置,也要进行修改,在博文step3中有提及

step9 设置输入路径

因为在代码中难免会涉及到路径,所以说以step6中的代码为例,需要给

tmp

文件夹赋予必要的权限:
hadoop fs -chmod -R 777 /tmp
并且将自己所需要技术的文件

test.txt

通过

主机名:50070

端口的web界面进行上传:
在这里插入图片描述
然后点击:
在这里插入图片描述
等个十几秒就好啦~:以下是结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


本文转载自: https://blog.csdn.net/weixin_45712255/article/details/124233892
版权归原作者 PushyTao 所有, 如有侵权,请联系我们删除。

“Spark集群搭建记录 | 云计算[CentOS7] | Scala Maven项目访问Spark实现单词计数”的评论:

还没有评论