文章大纲
Spark 框架主要是由 Scala 语言实现,同时也包含少量 Java 代码。Spark 面向用户的编程接口,也是 Scala。然而,在数据科学领域,Python 一直占据比较重要的地位,仍然有大量的数据工程师在使用各类 Python 数据处理和科学计算的库,例如 numpy、Pandas、scikit-learn 等。同时,Python 语言的入门门槛也显著低于 Scala。为此,Spark 推出了 PySpark,在 Spark 框架上提供一套 Python 的接口,方便广大数据科学家使用。本文主要从源码实现层面解析 PySpark 的实现原理,包括以下几个方面:
- pyspark 原理、源码解析与优劣势分析(1) ---- 架构与java接口
- pyspark 原理、源码解析与优劣势分析(2) ---- Executor 端进程间通信和序列化
- pyspark 原理、源码解析与优劣势分析(3) ---- 优劣势总结
01. PySpark 的多进程架构
PySpark 采用了 Python