6

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpar...

 1 year ago
source link: https://blog.51cto.com/u_14202100/6990356
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )

精选 原创
  • 一、安装 PySpark
  • 1、使用 pip 安装 PySpark
  • 2、国内代理镜像
  • 3、PyCharm 中安装 PySpark
  • 二、PySpark 数据处理步骤
  • 三、构建 PySpark 执行环境入口对象
  • 四、代码示例

一、安装 PySpark


1、使用 pip 安装 PySpark

执行 Windows + R , 运行 cmd 命令行提示符 ,

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_PyCharm

在命令行提示符终端中 , 执行

pip install pyspark

命令 , 安装 PySpark , 安装过程中 , 需要下载 310 M 的安装包 , 耐心等待 ;

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_PyCharm_02

安装完毕 :

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_python_03

命令行输出 :

C:\Users\octop>pip install pyspark
Collecting pyspark
  Downloading pyspark-3.4.1.tar.gz (310.8 MB)
     |████████████████████████████████| 310.8 MB 126 kB/s
Collecting py4j==0.10.9.7
  WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None))': /packages/10/30/a58b32568f1623aaad7db22aa9eafc4c6c194b429ff35bdc55ca2726da47/py4j-0.10.9.7-py2.py3-none-any.whl
  Downloading py4j-0.10.9.7-py2.py3-none-any.whl (200 kB)
     |████████████████████████████████| 200 kB 1.1 MB/s
Using legacy setup.py install for pyspark, since package 'wheel' is not installed.
Installing collected packages: py4j, pyspark
    Running setup.py install for pyspark ... done
Successfully installed py4j-0.10.9.7 pyspark-3.4.1
WARNING: You are using pip version 20.1.1; however, version 23.2.1 is available.
You should consider upgrading via the 'y:\001_developtools\015_python\python37\python.exe -m pip install --upgrade pip' command.

C:\Users\octop>

2、国内代理镜像

如果使用 官方的源 下载安装 PySpark 的速度太慢 ,

可以使用 国内的 镜像网站  https://pypi.tuna.tsinghua.edu.cn/simple/ ,

这是清华大学提供的源 ;

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

3、PyCharm 中安装 PySpark

也可以参考 【Python】pyecharts 模块 ② ( 命令行安装 pyecharts 模块 | PyCharm 安装 pyecharts 模块 ) 博客 , 在 PyCharm 中 , 安装 PySpark ;

尝试导入 pyspack 模块中的类 , 如果报错 , 使用报错修复选项 , PyCharm 会自动安装 PySpark ;

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_PySpark_04

二、PySpark 数据处理步骤


PySpark 编程时 , 先要构建一个 PySpark 执行环境入口对象 , 然后开始执行数据处理操作 ;

数据处理的步骤如下 :

首先 , 要进行数据输入 , 需要读取要处理的原始数据 , 一般通过 SparkContext 执行环境入口对象 执行 数据读取操作 , 读取后得到 RDD 类实例对象 ;

然后 , 进行 数据处理计算 , 对 RDD 类实例对象 成员方法进行各种计算处理 ;

最后 , 输出 处理后的结果 , RDD 对象处理完毕后 , 写出文件 , 或者存储到内存中 ;

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_数据处理_05

数据的初始形态 , 一般是 JSON 文件 , 文本文件 , 数据库文件 ;

通过 SparkContext 读取 原始文件 到 RDD 中 , 进行数据处理 ;

数据处理完毕后 , 存储到 内存 / 磁盘 / 数据库 中 ;

【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_Spark_06

三、构建 PySpark 执行环境入口对象


如果想要使用 PySpark 进行数据处理 , 必须构建一个 PySpark 执行环境入口对象 ;

PySpark 执行环境 入口对象 是 SparkContext 类实例对象 ;

首先 , 导入相关包 ;

# 导入 PySpark 相关包
from pyspark import SparkConf, SparkContext

然后 , 创建 SparkConf 实例对象 , 该对象用于配置 Spark 任务 , 各种配置可以在链式调用中设置 ;

  • 调用 SparkConf#setMaster 函数 , 可以设置运行模式 , 单机模式 / 集群模式 ;
  • 调用 SparkConf#setAppName函数 , 可以设置 Spark 程序 名字 ;
# 创建 SparkConf 实例对象 , 该对象用于配置 Spark 任务
# setMaster("local[*]") 表示在单机模式下 本机运行
# setAppName("hello_spark") 是给 Spark 程序起一个名字
sparkConf = SparkConf()\
    .setMaster("local[*]")\
    .setAppName("hello_spark")

再后 , 创建 PySpark 执行环境 入口对象 ;

# 创建 PySpark 执行环境 入口对象
sparkContext = SparkContext(conf=sparkConf)

最后 , 执行完 数据处理 任务后 , 调用 SparkContext#stop 方法 , 停止 Spark 程序 ;

# 停止 PySpark 程序
sparkContext.stop()

四、代码示例


代码示例 :

"""
PySpark 数据处理
"""

# 导入 PySpark 相关包
from pyspark import SparkConf, SparkContext

# 创建 SparkConf 实例对象 , 该对象用于配置 Spark 任务
# setMaster("local[*]") 表示在单机模式下 本机运行
# setAppName("hello_spark") 是给 Spark 程序起一个名字
sparkConf = SparkConf()\
    .setMaster("local[*]")\
    .setAppName("hello_spark")

# 创建 PySpark 执行环境 入口对象
sparkContext = SparkContext(conf=sparkConf)

# 打印 PySpark 版本号
print(sparkContext.version)

# 停止 PySpark 程序
sparkContext.stop()

执行结果 :

Y:\002_WorkSpace\PycharmProjects\pythonProject\venv\Scripts\python.exe Y:/002_WorkSpace/PycharmProjects/HelloPython/hello.py
23/07/29 23:08:04 WARN Shell: Did not find winutils.exe: java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset. -see https://wiki.apache.org/hadoop/WindowsProblems
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
23/07/29 23:08:04 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
3.4.1

Process finished with exit code 0
【Python】PySpark 数据处理 ② ( 安装 PySpark | PySpark 数据处理步骤 | 构建 PySpark 执行环境入口对象 )_Spark_07
  • 收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK