1.spqrk的安装与使用:
前言
Spark 的安装需要建立在 Hadoop 的之上(类似于 Hbase 和 Hive),关于 Hadoop 的单机安装以及伪分布式安装可以参考其他博客:
本文章参考于https://blog.csdn.net/olizxq/article/details/118249447
Ubuntu下单机安装Hadoop详细教程(附所需安装包下载)
Ubuntu下伪分布式安装Hadoop详细教程
本文安装的 Hadoop 及 Java 环境基于林子雨老师的《大数据技术原理与应用(第3版)》中所要求,其中 Java 版本为1.8.0_301,Hadoop 版本为3.2.2,这里我的操作系统环境是 Ubuntu 20.04,此安装方法同样适用于低版本。
一、安装Spark
- 下载压缩包并解压
官网下载目录如下:https://spark.apache.org/downloads.html
建议清华镜像网站下载:https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-3.2.0/

注意这里建议下载 without-hadoop 版本,此版本适用于所有 Hadoop 版本,若是官网下载,则需要选择 Pre-build with user-provided Hadoop 类型即可下载。
下载文件如下:spark-3.2.0-bin-without-hadoop.tgz,进入下载目录,解压压缩包:
cd ~/Downloads
sudo tar -zxf ./spark-3.2.0-bin-without-hadoop.tgz -C /usr/local
- 安装Spark
进入到 /usr/local 目录下,更改文件夹名,赋予用户权限:
cd ~/Downloads
sudo tar -zxf ./spark-3.2.0-bin-without-hadoop.tgz -C /usr/local
- 配置环境变量
修改 ~/.bashrc 文件:
vim ~/.bashrc
- 增添下面几行:
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin
export HADOOP_HOME=/usr/local/hadoop
- 运行如下命令使配置立即生效:
source ~/.bashrc
- 修改配置文件
创建 spark-env.sh 文件:
cd /usr/local/spark/conf
sudo cp spark-env.sh.template spark-env.sh
修改配置 spark-env.sh 文件:
sudo vim spark-env.sh
将以下内容写入文件:
export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
按下 ESC 键,:wq,保存并退出。
二、验证Spark安装及错误处理
- 运行Spark实例
在终端下,运行以下命令:
cd /usr/local/spark
bin/run-example SparkPi 2>&1 | grep "Pi is"
2. 输出如下,运行成功!
hadoop@fzqs-Laptop:/usr/local/spark$ cd /usr/local/spark
hadoop@fzqs-Laptop:/usr/local/spark$ bin/run-example SparkPi 2>&1 | grep "Pi is"
Pi is roughly 3.143755718778594
- 启动Spark shell
由于之前已经配置了环境变量,所以这里不需要加上路径也可使用命令:
spark-shell
- 正常启动界面如下:

注意启动若出现如下警告:
hadoop@fzqs-Laptop:/usr/local$ spark-shell
2021-12-09 23:49:14,625 WARN util.Utils: Your hostname, fzqs-Laptop resolves to a loopback address: 127.0.1.1; using 10.132.13.98 instead (on interface wlo1)
2021-12-09 23:49:14,626 WARN util.Utils: Set SPARK_LOCAL_IP if you need to bind to another address
Setting default log level to "WARN".
参考此篇博客:Spark启动:WARN util.Utils: Your hostname, … resolves to a loopback address: …; using … instead
简单执行一下命令:
scala> 12345 + 54321
res0: Int = 66666
退出 spark-shell 界面
:quit
2. pyspark的安装与使用:
安装Java
Spark是基于Java的,因此首先需要安装Java。可以使用以下命令检查是否已安装Java:
如果未安装Java,你可以通过以下命令安装OpenJDK:
sudo apt update
sudo apt install openjdk-11-jdk
安装完成后,验证一下是否安装成功:
java -version
安装Spark
接下来,我们需要安装Apache Spark。可以从Apache Spark官网下载最新版本的tar包。以下是下载和解压的命令(假设你下载路径为/opt):
cd /opt
wget
tar -xvzf spark-3.4.0-bin-hadoop3.tgz
解压完成后,进入解压后的目录:
cd spark-3.4.0-bin-hadoop3
接下来,将Spark添加到环境变量中。打开~/.bashrc文件:
nano ~/.bashrc
在文件末尾添加以下行:
export SPARK_HOME=/opt/spark-3.4.0-bin-hadoop3
export PATH=$PATH:$SPARK_HOME/bin
保存并退出后,更新环境变量:
source ~/.bashrc
安装PySpark
要使用PySpark,我们还需要安装Python及其必要的库。如果你还没有安装Python,可以使用以下命令:
sudo apt install python3 python3-pip
然后,通过pip安装PySpark:
pip3 install pyspark
验证安装
完成以上步骤后,可以通过启动PySpark来验证安装是否成功。在终端中输入:
pyspark
如果一切正常,将会看到PySpark的启动信息,并进入PySpark的交互环境。
要执行的pyspark代码
from pyspark import SparkContext
from pyspark import SparkConf
data = list(range(1,1000))
rdd = sc.parallelize(data)
rdd.collect()
在pyspark命令行中执行

输出结果,成功执行

在vscode里执行效果:
