pyspark 如何与 java 集成?

How pyspark integrates with java?

免责声明

我对python了解不多,所以问题描述"how it looks like",答案应该是"how it actual works"。

问题

Pyspark 允许 运行 python 在 spark 中编码。但是 python 是解释性语言,它的功能取决于环境(例如 32 或 64 位平台,您 运行 python 代码)。而 spark 运行s 在 jvm 上 运行 代码独立于环境。

那么python如何将"converted"编码成jvm字节码呢?还是jvm上不是运行?使用了什么技术? (CORBA?)我听说过 Jython 但它看起来像是 pysaprk 中没有使用的独立技术,是吗?

Spark 专门使用 Py4J 将 python 应用程序代码传递给 JVM 上的 运行。您可以在此处找到更多信息 https://www.py4j.org/

你可以在这里找到内部架构https://cwiki.apache.org/confluence/display/SPARK/PySpark+Internals