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

文章详细介绍了如何通过pip在国内代理镜像下安装PySpark,以及在PyCharm中配置PySpark。接着,它阐述了PySpark数据处理的基本步骤,包括构建SparkContext执行环境入口对象,读取和处理数据,最后写出结果。文章还提供了创建和使用SparkContext的代码示例。
部署运行你感兴趣的模型镜像





一、安装 PySpark




1、使用 pip 安装 PySpark


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

在这里插入图片描述

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

pip install pyspark

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

在这里插入图片描述

安装完毕 :

在这里插入图片描述

命令行输出 :

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 ;

在这里插入图片描述





二、PySpark 数据处理步骤



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

数据处理的步骤如下 :

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

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

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

在这里插入图片描述


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

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

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

在这里插入图片描述





三、构建 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

在这里插入图片描述

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### PySpark 安装与使用入门指南 #### 1. 安装 PySpark 和 FindSpark 为了在本地环境安装 PySpark 并配置环境以便顺利运行 Spark 应用程序,可以按照如下方法操作: 通过 `pip` 工具来安装 PySpark 是最简单的方式之一。这使得开发者可以在任何支持 Python 的平台上快速设置开发环境。 ```bash pip install pyspark ``` 对于希望在 Jupyter Notebook 或其他 IDE 中集成 PySpark 支持的情况,则推荐先安装 `findspark` 包[^2]。FindSpark 可帮助自动初始化 SparkContext,在不同环境下更加灵活地启动 PySpark 程序。 ```bash pip install findspark ``` #### 2. 初始化 PySpark 环境并创建第一个应用程序 一旦完成了上述软件包的安装之后,就可以开始编写简单的 PySpark 脚本了。下面是一个基本的例子展示如何加载数据集以及执行一些基础的数据处理任务。 ```python import findspark findspark.init() from pyspark.sql import SparkSession # 创建一个新的 Spark Session 实例 spark = SparkSession.builder \ .appName("MyFirstPysparkApp") \ .getOrCreate() data = [("James", "Smith", "USA", 30), ("Michael", "Rose", "", 20), ("Robert", "", "UK", 22)] columns = ["firstname", "lastname", "country", "age"] df = spark.createDataFrame(data, columns) # 显示 DataFrame 内容 df.show() ``` 这段代码展示了怎样构建一个 SparkSession 对象,并利用它读取内存中的列表作为输入源生成了一个 DataFrame 表格结构。最后调用了 show 方法打印出了表格的内容[^3]。 #### 3. 运行 PySpark 应用程序 当准备好提交作业到集群上运行时,通常会采用命令行工具 `spark-submit` 来完成这项工作。该工具允许指定各种参数来自定义应用的行为,比如分配资源数量、设定日志级别等。 ```bash spark-submit --master local[*] my_first_pyspark_app.py ``` 此命令将在本地模式下尽可能多地占用 CPU 核心数来加速计算过程;而实际生产环境中则可能需要调整这些选项以适应具体需求。
评论 17
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值