文章也同时在简书更新
引言
“Apache Spark™ is a fast and general engine for large-scale data processing.”
Spark是一种高性能分布式计算框架。它基于RDD使用内存来加速迭代过程。相比于前辈Hadoop,Spark有着更好的性能表现,尤其针对Machine Learning此类典型的应用,提升更为显著。
本文将集中介绍如何快速配置Spark。
软件依赖
- 运行Spark需要java环境。
- Spark应用多用Scala编写,建议使用SBT来管理。
安装java运行环境
安装JDK&JRE
|
|
建议装version 8不要装9。安装完成后,默认路径是/usr/lib/jvm/java-8-openjdk-amd64
,如果不一致请搜索到正确路径。
添加环境变量
|
|
添加如下jave的PATH:
|
|
更新环境变量
|
|
测试java环境
|
|
看到相应版本信息输出即表明配置正确:
|
|
安装SBT
Mac
使用Homebrew下载
|
|
或者使用Macports (Third-party package)
|
|
其它平台
SBT官方链接。有.zip,.tgz以及.msi供选择。
下载Spark
Spark官方链接。笔者选择的是2.2.0版本。
配置Spark
解压下载的.zip后,若只是想单机版运行,无需后续配置,直接就已经可以运行任务了。若想进行真正的分布式运行,请阅读下述配置流程:
- 进入spark-2.2.0根目录的conf子目录。重点关注如下几个配置文件:log4j.properties.template(日记相关,使用默认即可), slaves.template(分布式worker节点配置)以及spark-defaults.conf.template(运行参数配置)。入门的配置大多只需要修改slaves.template即可。
- 将slaves.template重命名,去除.template后缀,在其中添加分布式节点的IP信息。若只在本地运行,请填写localhost。笔者进行的是真分布式,所以填写了两台worker节点的IP或hosts信息,如:
|
|
备注:请自行对应IP与hosts。
- 配置完成后,进入spark-2.2.0根目录。运行
./sbin/start-all.sh
启动Spark。 - 提交一个example中的任务:
|
|
出现一系列反馈信息,如报错请仔细检查前面的配置,以及各类path输入是否正确。
详细的提交格式如下(可查阅Document):
|
|
至此,最简单的Spark配置流程告一段落。
总结
作为Spark入门指南的第一篇,本文介绍了最快速的配置方法。
下篇笔者将讲解如何使用IntelliJ IDEA进行spark应用的开发。