Pyspark学习一:概述

PySpark 介绍 & 为什么使用 PySpark

官方文档:https://spark.apache.org/docs/latest/api/python/

1. PySpark 是什么?

PySpark 是 Apache Spark 的 Python API,提供了 大规模分布式计算能力 ,用于处理 大数据

Spark 本身是一个 基于内存计算的分布式计算框架 ,比 Hadoop MapReduce 更快,适用于 批处理、流处理、机器学习和图计算

PySpark = Spark(核心计算引擎) + Python API,允许 Python 开发者轻松使用 Spark 进行大规模数据处理。

2. 为什么使用 PySpark?

适用于大规模数据处理

  • PySpark 可以在 集群 (如 Hadoop YARN、Kubernetes、Standalone)上运行,处理 TB 或 PB 级数据
  • 适合处理 海量数据集,不受单机内存限制。

比 Hadoop MapReduce 快

  • Spark 基于内存计算 ,比传统的 Hadoop MapReduce 更快(10-100 倍)。
  • 支持 DAG(有向无环图)执行计划,优化计算过程。

兼容 Python 生态

  • 支持 Pandas (通过 pyspark.pandas)。
  • 集成机器学习 (通过 pyspark.ml)。
  • 可以与 NumPy、SciPy、Matplotlib 结合使用。

支持 SQL 查询

  • PySpark 提供了 Spark SQL,可以用 SQL 语法操作大数据,方便分析。

支持流式计算

  • PySpark 的 Structured Streaming 可用于实时数据处理,如 日志分析、监控、金融风控

内置 ML 和图计算

  • MLlib 提供了分布式机器学习库(支持回归、分类、聚类等)。
  • GraphX 支持分布式图计算(如 PageRank)。

3. PySpark 适用场景

  • 大规模 ETL(数据清洗、转换、加载)
  • 数据分析(支持 SQL 查询)
  • 机器学习(大规模训练,替代 pandas/scikit-learn)
  • 流处理(Kafka + Spark Streaming)
  • 实时数据分析(如推荐系统、风控、监控)

4. PySpark vs Pandas

对比项 PySpark Pandas
处理规模 TB / PB 级大数据 仅适合小数据(<10GB)
计算方式 分布式计算(集群) 单机计算
性能 基于内存计算,优化执行 纯 Python,计算较慢
并行化 自动并行 需手动优化
SQL 支持 Spark SQL 仅支持 DataFrame 操作
机器学习 MLlib,分布式训练 Scikit-learn,仅限小数据

🔥 如果数据 <10GB,推荐 Pandas;如果数据 >10GB,推荐 PySpark!

5. PySpark 示例

python 复制代码
from pyspark.sql import SparkSession

# 创建 Spark 会话
spark = SparkSession.builder.appName("Example").getOrCreate()

# 读取 CSV 数据
df = spark.read.csv("data.csv", header=True, inferSchema=True)

# 查询 & 处理数据
df.filter(df["age"] > 25).groupBy("city").count().show()

# 关闭 Spark
spark.stop()
相关推荐
jingli91 小时前
微信自动回复怎么设置?重复问题怎么自动回答——私域FAQ自动应答搭建全流程(关键词匹配+知识库+语义AI,2026实操版)
人工智能·自动化·用户运营
Ai_easygo1 小时前
AI下半场_09_CSDN版_Agent安全攻防
人工智能
速易达网络1 小时前
宇树机器人和Microduck仿真区别
人工智能
PNP Robotics1 小时前
【PNP具身解读】GPT6 Astra:具身智能新范式,大模型 + Franka机器人快速落地验证一、GPT6 Astra 背后的布局、数据与具身方向
人工智能·学习·机器学习·机器人
一木 之林1 小时前
手搓家庭服务器:二手装机、Docker部署、端口映射与frp内网穿透
服务器·人工智能·git·编辑器
咖啡星人k1 小时前
MCP 协议入门:从 tools/list 到一次真实调用
人工智能·mcp·ai工程
努力努力再努力wz1 小时前
【Redis进阶系列】:从主从复制到 Sentinel,一文建立故障检测、Leader 选举与 Failover 的完整心智模型
数据库·redis·缓存
YOLO数据集集合2 小时前
光伏板红外-可见光配对缺陷检测数据集 | 光伏板缺陷 红外可见光配准 多模态检测 无人机巡检 目标检测 YOLO格式9094期
人工智能·目标检测·计算机视觉·目标跟踪·红外·无人机视角·太阳能板
知几蜗牛2 小时前
Agent会互相调用了,但A2A 1.0真正解决的是协作边界
人工智能
掘金泥石流2 小时前
从 Palantir AI FDE 到我们的实践:企业交付如何变成产品?
人工智能·架构·agent