本专栏已收集头歌大数据所有答案 以供参考
第1关:Scala语言开发环境的部署
以下是解题步骤
题目中已经说明在平台已经将spark安装包下载到/opt目录下了,所以不需要再下载了。
- 1.所以要先将目录跳转到/opt目录中:
cd /opt
- 2.接下来,解压到/app目录下:
mkdir /app //创建 app 目录
tar -zxvf scala-2.12.7.tgz -C /app
配置环境
接下来我们开始配置环境,在自己本机上需要配置好Java环境,因为Scala是基于jvm的(在平台已经将Java环境配置好了):
vi /etc/profile
#set scala
SCALA_HOME=/app/scala-2.12.7
export PATH=$PATH:$SCALA_HOME/bin
不要忘了配置好之后source /etc/profile
校验
在命令行输入:scala -version出现如下结果就配置成功了
按照惯例,我们在开始一个编程语言要进行一个仪式,哈哈,那就是,Hello World,接下来我们使用Scala输出Hello World:
在命令行中输入scala进入Scala命令行,输入println("Hello World") 就可以啦。
第2关:安装与配置Spark开发环境
解答步骤
题目中已经说明在平台已经将spark安装包下载到/opt目录下了,所以不需要再下载了。
- 1.所以要先将目录跳转到/opt目录中:
cd /opt
- 2.然后按照步骤解压
tar -zxvf spark-2.2.2-bin-hadoop2.7.tgz -C /app
- 3.配置环境变量
vim /etc/profile
- 将以下代码加入到编辑文件末尾
#set spark enviroment
SPARK_HOME=/app/spark-2.2.2-bin-hadoop2.7
export PATH=$PATH:$SPARK_HOME/bin
- 保存后使用以下代码更新环境变量
source /etc/profile
- 修改Spark配置文件
- 切换到conf目录下:
cd /app/spark-2.2.2-bin-hadoop2.7/conf
- 在这里我们需要配置的是spark-env.sh文件,但是查看目录下文件只发现一个spark-env.sh.template文件,我们使用命令复制该文件并重命名为spark-env.sh即可;
- 接下来编辑spark-env.sh,在文件末尾添加如下配置:
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_111
export SCALA_HOME=/app/scala-2.12.7
export HADOOP_HOME=/usr/local/hadoop/
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_MASTER_IP=machine_name # machine_name 根据自己的主机确定
export SPARK_LOCAL_IP=machine_name # machine_name 根据自己的主机确定
在命令行输入hostname查询自己的主机名
我这里的主机名是educoder
所以将
export SPARK_MASTER_IP=machine_name # machine_name 根据自己的主机确定
export SPARK_LOCAL_IP=machine_name # machine_name 根据自己的主机确定
修改为
export SPARK_MASTER_IP=educoder # educoder 根据自己的主机确定
export SPARK_LOCAL_IP=educoder # educoder 根据自己的主机确定
校验
最后我们需要校验是否安装配置成功了;
现在我们启动spark并且运行spark自带的demo:
首先我们在spark根目录下启动spark:
在spark的根目录下输入命令./sbin/start-all.sh即可启动,使用jps命令查看是否启动成功,有woker和master节点代表启动成功。
接下来运行demo:
在Spark根目录使用命令./bin/run-example SparkPi > SparkOutput.txt运行示例程序
在运行的时候我们可以发现打印了很多日志,最后我们使用cat SparkOutput.txt可以查看计算结果(计算是有误差的所以每次结果会不一样):