一、Scala作为spark的运行基础语言,首先需要下载的就是Scala
1、官网下载安装Scala:scala-2.12.8.tgz
https://www.scala-lang.org/download/
2、上传解压
上传SecureCRT 【File】→【Connect SFTP Session】开启sftp操作:
put E:\大数据软件\9\scala-2.12.8.tgz
解压:tar -zxvf scala-2.12.8.tgz -C /opt/module
3、修改 scala-2.12.8的文件名
mv scala-2.12.8 scala
4、测试:scala -version
5、启动:scala
二、安装spark
1、官网下载安装Spark:spark-2.4.2-bin-hadoop2.7.tgz
https://www.apache.org/dyn/closer.lua/spark/spark-2.4.2/spark-2.4.2-bin-hadoop2.7.tgz
解压、重命名(与上面操作一致)
2、在/etc/profile里配置Scala和spark的环境变量
exprot SCALA_HOME=/opt/module/scala
export PATH=PATN
exprot SPARK_HOME=/opt/module/spark
export PATH=PATN
Esc :wq!保存并退出。
source /etc/profile配置生效
3、启动spark
①先启动hadoop 环境
start-all.sh
②启动spark环境
进入到SPARK_HOME/sbin下运行start-all.sh
/opt/module/spark/sbin/start-all.sh
[注] 如果使用start-all.sh时候会重复启动hadoop配置,需要./在当前工作目录下执行命令
jps 观察进程 多出 worker 和 mater 两个进程。
查看spark的web控制页面:http://bigdata128:8080/
显示spark的端口是7070
Spark-shell
此模式用于interactive programming,先进入bin文件夹后运行:spark-shell
出现下面界面则说明Scala和spark已经安装好
三、spark与wordcount
在以上都做好的情况下 Ctrl-c退出
1、在spark下建立一个mycode文件夹,并创建word.txt,在里面编写内容
cd /opt/module/spark
mkdir mycode
cd mycode
mkdir wordcount
cd wordcount
vim word.txt
hello,world,hello
hello,world
welcome
(新建word.txt文件并编写内容,中间必须用逗号隔开)
2.进入spark运行代码
scala> val file = spark.sparkContext.textFile(“file:///opt/module/spark/mycode/wordcount/word.txt”) #文件路径
scala> val WordCounts = file.flatMap(line => line.split(",")).map((word => (word, 1))).reduceByKey(_ + _)
scala> WordCounts.collect
//将计算结果保存到本地
scala> WordCounts.saveAsTextFile(“file:///opt/module/spark/mycode/wordcount/result”)
//ps:再次保存不能覆盖,会报错。
3、运行结果
4、可以看出计算结果为:
(hello,3)
(welcome,1)
(world,2)
5、退出
scala> :quit