peak_ZN

Spark安装

1 安装JDK(jdk-8u281-linux-x64.tar.gz) ,上传并解压到/usr/lib/jdk1.8/jdk1.8.0_281 

2 安装Hadoop(hadoop-3.2.1.tar.gz),上传并解压到/usr/local/hadoop-3.2.1

3安装Spark(spark-3.1.2-bin-hadoop3.2.tar.gz),上传并解压到/usr/local/spark

此步进行解压须得先在/usr/local里创建文件夹spark以致可以将解压好的关于spark文件集中存放在文件夹spark中。(因为spark解压后不止一个文件夹,如若不提前创建文件夹spark的话会在下一步进行环境配置变量时无法将spark的路径进行明确标定。)

关于解压缩的规范写作:

cd /mnt/hgfs/share #注意区分大小写字母,JDK安装包所在位置

sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jdk1.8 #JDK文件解压到/usr/lib/jdk1.8目录下

 sudo tar -zxf ~/下载/apache-flume-1.9.0-bin.tar.gz -C /usr/local

4配置环境变量

vim /etc/profile

在配置文件(/etc/profile)末尾添加: 

export JAVA_HOME=/usr/local/jdk1.8/jdk1.8.0_281     (根据自己文件的路径进行修改)
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/usr/local/hadoop-3.2.1   (同上)
export PATH=$PATH:$HADOOP_HOME/bin

export SPARK_HOME=/usr/local/spark   (同上)
export PATH=$PATH:$SPARK_HOME/bin

保存关闭刷新
source /etc/profile

5启动pyspark交互式环境

pyspark

显示状况如下:

 会出现的问题如下:

解决方法:哪儿权限不够修改哪儿(sudo chmod 777 文件夹名)

6运行Demo

./spark-submit --master local[*] /usr/local/spark/examples/src/main/python/pi.py 10     (此命令不是写在spark标志出来所形成的三个箭头后面的,和普通命令一样写在目录之下)

结果显示如下:

 

 

配置本地pyspark

pip install pyspark -i https://pypi.tuna.tsinghua.edu.cn/simple

可能会出现一些问题,以下是我出现问题的部分解决实验步骤,都是在网上进行copy的,大家可以根据自己实验所出现的问题进行修改。

运行pyspark代码步骤如下:

代码如下:

from pyspark import SparkConf, SparkContext

if __name__ == '__main__':
conf = SparkConf() \
.setMaster('local[*]') \
.setAppName("wordcount")

sc = SparkContext(conf=conf)

rdd = sc.textFile("/usr/local/spark/test/1.txt") \
.flatMap(lambda x: x.split(" ")) \
.map(lambda x:(x,1)) \
.reduceByKey(lambda a,b:a+b)

print(rdd.collect())
sc.stop()

 

 

首先我在我的电脑/usr/local/spark中创建了文件夹test,并在文件夹test中创建了文件1.txt,其中文件的内容是hello world !!!!!    (文件名必须以.txt为后缀结尾,因为此代码设置的文件类型是textFile)。

然后在文件夹python中创建以.py为后缀的文件方便代码的存放及运行。

 最终运行结果如下:

 

 

 

 

posted on 2022-11-02 22:49  榫ning  阅读(180)  评论(0编辑  收藏  举报