免责声明
我对python了解不多,所以问题描述了"它看起来像什么样子",答案应该是"它是如何实际工作的"。
问题
Pyspark
允许在spark
中运行python代码。但是python
是解释性语言,它的功能取决于环境(例如,运行python代码的32位或64位平台(。虽然spark
运行在jvm上运行,但运行代码依赖于环境。
那么python
代码是如何"转换"成jvm字节码的呢?或者它没有在 jvm 上运行?使用什么技术?(科尔巴?我听说过Jython
但它看起来像是pysaprk
中没有使用的独立技术,是吗?
Spark 专门使用 Py4J 来传递 python 应用程序代码以在 JVM 上运行。您可以在此处找到更多信息 https://www.py4j.org/
您可以在此处找到内部架构 https://cwiki.apache.org/confluence/display/SPARK/PySpark+Internals