pyspark,你能以某种方式将 pyspark 的 SparkContext 传递给 java 对象吗

pyspark, can you somehow pass pyspark's SparkContext to a java object

因此,根据众所周知的 spark bug/design 限制 https://issues.apache.org/jira/browse/SPARK-2243,您不能拥有多个 SparkContext。现在,我正在做这种 python 和 Scala 的非常丑陋的混合,我有一个 Scala 方法,它需要一个 SparkContext 作为参数。我能否以某种方式在 py4j 中实例化此 Scala 对象,然后将其传递给 pyspark 的 SparkContext(在 pyspark shell 中导出为 sc)。我的理解是 sc 是 Scala 对象的薄包装,但我不知道如何将它转换为 java/scala class 并将其作为参数传递给我的 Scala方法。

您可以在 Scala 中调用 SparkContext.getOrCreate() 来获取 PySpark 创建的活动 SparkContext