1

我安装了 databricks-connect 6.6.0,它有一个 Spark 版本 2.4.6。到目前为止,我一直在使用 databricks 集群,但我正在尝试切换到使用本地 spark 会话进行单元测试。但是,每次我运行它时,它仍然会显示在集群 Spark UI 以及 xxxxxx:4040 上的本地 Spark UI 上。

我尝试过使用 SparkConf()、SparkContext() 和 SQLContext() 启动,但它们都做同样的事情。我也设置了正确的SPARK_HOME、HADOOP_HOME和JAVA_HOME,分别下载了winutils.exe,这些目录都没有空格。我还尝试使用 spark-submit 从控制台和终端运行它。

这是我尝试过的示例代码之一:

from pyspark.sql import SparkSession

spark = SparkSession.builder.master("local").appName("name").getOrCreate()
inp = spark.createDataFrame([('Person1',12),('Person2',14)],['person','age'])
op = inp.toPandas()

我正在使用:Windows 10、databricks-connect 6.6.0、Spark 2.4.6、JDK 1.8.0_265、Python 3.7、PyCharm 社区 2020.1.1

我是否必须覆盖默认/全局 spark 会话才能启动本地会话?我该怎么做?我可能遗漏了一些东西 - 代码本身运行良好,这只是本地与集群的问题。

TIA

4

1 回答 1

2

你不能并排运行它们。我建议有两个使用 Conda 的虚拟环境。一种用于databricks-connect 一种用于pyspark。然后根据需要在两者之间切换。

于 2020-11-08T08:02:04.897 回答