This question already has an answer here:
Calling Java/Scala function from a task
                                
                                    (1个答案)
                                
                        
                                3个月前关闭。
            
                    
免责声明

我对python不太了解,因此问题描述了“它的外观”,答案应该是“它的实际工作方式”。



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

那么python代码如何“转换”为jvm字节代码?还是没有在jvm上运行?使用什么技术? (CORBA?)我听说过Jython,但是它看起来像pysaprk中未使用的独立技术,对吗?

最佳答案

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

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

10-02 04:57
查看更多