使用spark提供的pyspark库来进行编写spark应用程序

一、PySpark环境配置
1.1windows中环境配置
1、打开cmd
2、输入python
C:\Users\wangwch>python
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 10:22:32) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
3、通过sys.path找到site-packages目录
>>> import os
>>> os.path
<module 'ntpath' from 'D:\\ProgramData\\Anaconda3\\lib\\ntpath.py'>
>>> import sys
>>> sys.path
['', 'D:\\ProgramData\\Anaconda3\\python36.zip', 'D:\\ProgramData\\Anaconda3\\DLLs', 'D:\\ProgramData\\Anaconda3\\lib', 'D:\\ProgramData\\Anaconda3', 'D:\\ProgramData\\Anaconda3\\lib\\site-packages', 'D:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32', 'D:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32\\lib', 'D:\\ProgramData\\Anaconda3\\lib\\site-packages\\Pythonwin']
4、找到linux中的spark里面的python/lib目录下面的两个包(pyspark.zip,py4j.zip)
[hadoop@master python]$ cd lib/
[hadoop@master lib]$ ll
total 612
-rw-r--r-- 1 hadoop hadoop  80352 Feb 23  2018 py4j-0.10.6-src.zip
-rw-r--r-- 1 hadoop hadoop   1445 Feb 23  2018 PY4J_LICENSE.txt
-rw-r--r-- 1 hadoop hadoop 538841 Feb 23  2018 pyspark.zip
[hadoop@master lib]$ pwd
/home/hadoop/apps/spark-2.3.0-bin-hadoop2.7/python/lib

若D:\ProgramData\Anaconda3\lib\site-packages目录中存在py4j或pyspark文件夹,先进行删除

在这里插入图片描述

拷贝到windows下面的D:\ProgramData\Anaconda3\lib\site-packages目录中并进行解压:

在这里插入图片描述

压缩包解压之后,生成py4j和pyspark文件夹,把拷贝的zip压缩包删除。
在这里插入图片描述

py4j:

通过py4j,Python程序能够动态的访问java虚拟机中的java对象,java程序也可以回调python的对象。

pyspark:

spark提供的python写的sparkAPI库

2.1 Linux中环境配置
1、查看当前Linux下面python的版本
[hadoop@master lib]$ python
Python 2.7.5 (default, Oct 30 2018, 23:45:53) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 
2、升级python版本到3.6.4和windows中的版本一致
2.1下载安装

​ 使用root用户进行安装

​ python的下载地址:https://www.python.org/ftp/python/

#下载3.6.4的包
[root@master local]# wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz
2.2解压安装
[root@master local]# tar -zxvf Python-3.6.4.tgz
2.3 编译,要使用root用户
#进入到Python-3.6.4目录
[root@master local]# cd Python-3.6.4/
#1.检查配置
[root@master Python-3.6.4]# ./configure --prefix=/usr/local/python-3.6.4
#其中--prefix是Python的安装目录
#2.下载gcc编译依赖
[root@master Python-3.6.4]# yum -y install gcc
#3、进行编译并安装
[root@master Python-3.6.4]# ./make && make install

[root@master python-3.6.4]# ll
total 0
drwxr-xr-x 2 root root 295 Jul 21 10:16 bin
drwxr-xr-x 3 root root  24 Jul 21 10:16 include
drwxr-xr-x 4 root root  63 Jul 21 10:16 lib
drwxr-xr-x 3 root root  17 Jul 21 10:16 share
#4、Linux已经安装了python2.7.5,这里我们不能将它删除,如果删除,系统可能会出现问题。我们只需要按照与Python2.7.5相同的方式为Python3.6.5创建一个软链接即可,我们把软链接放到/usr/local/bin目录下
[root@master bin]# ls -s /usr/local/python-3.6.4/bin/python3.6 /usr/local/bin/python3
    0 /usr/local/bin/python3  12372 /usr/local/python-3.6.4/bin/python3.6
[root@master bin]# ls -l /usr/local/bin/

#5、配置系统环境变量
[root@master Python-3.6.4]# vim /etc/profile
export PYTHON_HOME=/usr/local/python-3.6.4/bin
export PATH=$PATH:$PYTHON_HOME/bin
#6、使配置文件立即生效
[root@master Python-3.6.4]# source /etc/profile
#7、对当前系统中python版本进行验证
[root@master ~]# python3
Python 3.6.4 (default, Jul 21 2021, 09:52:44) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
#8、将spark下的python/lib目录下面的两个包(pyspark.zip,py4j.zip)两个压缩包,拷贝到python的Lib下的site-packages里面
[root@master site-packages]# cp /home/hadoop/apps/spark-2.3.0-bin-hadoop2.7/python/lib/py4j-0.10.6-src.zip  /usr/local/lib/python3.6/site-packages
[root@master site-packages]# cp  /home/hadoop/apps/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip  /usr/local/lib/python3.6/site-packages
#9、解压两个包,并删除zip包
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐