Spark环境搭建和使用方法

举报
俺想吃蜂蜜 发表于 2022/04/13 08:15:30 2022/04/13
【摘要】 目的安装Spark在spark-shell中运行代码编写Spark独立应用程序 基础环境Spark支持4种不同类型的部署方式,包括:Local模式:单机模式Standalone模式:使用Spark自带的简单集群管理器YARN模式:使用YARN作为集群管理器Mesos模式:使用Mesos作为集群管理器Spark可以独立安装使用,也可以和Hadoop一起安装使用。安装了Hadoop后,就可以让...

目的

安装Spark

在spark-shell中运行代码

编写Spark独立应用程序

基础环境

Spark支持4种不同类型的部署方式,包括:
Local模式:单机模式
Standalone模式:使用Spark自带的简单集群管理器
YARN模式:使用YARN作为集群管理器
Mesos模式:使用Mesos作为集群管理器

Spark可以独立安装使用,也可以和Hadoop一起安装使用。安装了Hadoop后,就可以让Spark使用HDFS存取数据。不安装Hadoop,Spark只能访问本地文件系统数据。需要说明的是,当安装好Spark以后,里面就自带了scala环境,不需要额外安装scala。

本次实验采用Hadoop(伪分布式)+Spark(local)模式。安装Spark之前需要安装Linux系统、Java环境 ,Hadoop。

下载安装

Spark安装包下载地址: http://spark.apache.org

进入下载页面后,点击主页右侧的“Download Spark”按钮进入下载页面,下载页面中提供了几个下载选项,主要是Spark release及Package type的选择,如下图所示。第1项Spark release一般默认选择最新的发行版本,截至2018年4月份的最新版本为2.3.0(本教程采用2.1.0)。第2项package type则选择“Pre-build with user-provided Hadoop [can use with most Hadoop distributions]”,可适用于多数Hadoop版本。选择好之后,再点击第4项给出的链接就可以下载Spark了。

解压安装包spark-2.1.0-bin-without-hadoop.tgz至路径 /usr/local:

通过运行Spark自带的示例,验证Spark是否安装成功。
cd /usr/local/spark
bin/run-example SparkPi
执行时会输出非常多的运行信息,输出结果不容易找到,可以通过 grep 命令进行过滤(命令中的 2>&1 可以将所有的信息都输出到 stdout 中,否则由于输出日志的性质,还是会输出到屏幕中):
bin/run-example SparkPi 2>&1 | grep “Pi is”

image.png
Spark Shell可以以实时、交互的方式来分析数据,也可以使用sbt或者maven编译打包运行。推荐初学使用第一种。
Spark Shell支持Scala和Python,由于Spark框架本身就是使用Scala语言开发的,所以使用spark-shell命令会默认进入Scala的交互式执行环境。如果要进入Python的交互式执行环境,则要执行pyspark命令。

在spark-shell中运行代码

执行如下命令启动Spark Shell(默认是local模式):
image.png
启动Spark Shell成功后在输出信息的末尾可以看到“Scala >”的命令提示符

image.png

可以在里面输入scala代码进行调试:

image.png

可以使用命令“:quit”退出Spark Shell:

image.png

或者,也可以直接使用“Ctrl+D”组合键,退出Spark Shell

编写Spark独立应用程序

1.安装sbt

sbt是一款Spark用来对scala编写程序进行打包的工具,Spark 中没有自带 sbt,需要下载安装

下载sbt安装包以后,执行如下命令拷贝至 /usr/local/sbt 中:

cp ~/下载/sbt-launch.jar .

接着在 /usr/local/sbt 中创建 sbt 脚本(vim ./sbt),添加如下内容:

!/bin/bash
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar `dirname $0`/sbt-launch.jar "$@"

保存后,为 ./sbt 脚本增加可执行权限:

最后运行如下命令,检验 sbt 是否可用(需要几分钟时间)(请确保电脑处于联网状态,首次运行会处于 “Getting org.scala-sbt sbt 0.13.11 …” 的下载状态,请耐心等待。笔者等待了 7 分钟才出现第一条下载提示):

查看版本

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。