作者:禅与计算机程序设计艺术
1.简介
PySpark 是 Apache Spark 的 Python API,可以用 Python 进行分布式数据处理,它在内存中利用了 Apache Hadoop YARN 资源调度框架对数据进行并行处理。PySpark 可以直接使用 Hadoop 文件系统、HDFS 来存储数据,也可以通过 S3、GCS、ADLS 等云存储平台保存数据。因此,在不同的数据源之间移动数据时,只需要复制一次数据就可以完成处理。PySpark 主要用于批处理、流处理和机器学习等多种应用场景,且与 Scala 和 Java 等语言兼容。
2.基本概念
在 PySpark 中,主要涉及以下几个概念:
1)SparkContext:
SparkContext 是 PySpark 的入口点,可以通过它访问集群上所有可用资源。用户可以在该对象上调用相关方法来创建 RDD(Resilient Distributed Datasets,弹性数据集),或从外部数据源导入数据。
2)RDD:
RDD(Resilient Distributed Datasets,弹性数据集)是 PySpark 数据模型,是分布式数据的不可变集合,元素可以并行计算。每个 RDD 由一个可选的分区列表组成,每个分区代表一个节点