PySpark - SparkConf



若要在本地/集群上运行 Spark 应用程序,需要设置一些配置和参数,这就是 SparkConf 发挥作用的地方。它提供配置以运行 Spark 应用程序。以下代码块包含了 PySpark 的 SparkConf 类的详细信息。

class pyspark.SparkConf (
   loadDefaults = True, 
   _jvm = None, 
   _jconf = None
)

最初,我们将使用 SparkConf() 创建一个 SparkConf 对象,这也会从 spark.* Java 系统属性中加载值。现在,可以使用 SparkConf 对象设置不同的参数,它们的优先级高于系统属性。

在 SparkConf 类中,有支持链接的 setter 方法。例如,可以编写 conf.setAppName(“PySpark App”).setMaster(“local”)。一旦将一个 SparkConf 对象传递给 Apache Spark,用户就无法修改它。

以下是 SparkConf 最常用的部分属性 −

  • set(key, value) − 设置配置属性。

  • setMaster(value) − 设置主 URL。

  • setAppName(value) − 设置应用程序名称。

  • get(key, defaultValue=None) − 获取键的配置值。

  • setSparkHome(value) − 设置工作节点上的 Spark 安装路径。

我们来考虑在 PySpark 程序中使用 SparkConf 的以下示例。在此示例中,我们将 spark 应用程序名称设置为 PySpark App,并将 spark 应用程序的主 URL 设置为 → spark://master:7077

以下代码块包括了这些行,当将其添加到 Python 文件中时,会为运行 PySpark 应用程序设置基本配置。

---------------------------------------------------------------------------------------
from pyspark import SparkConf, SparkContext
conf = SparkConf().setAppName("PySpark App").setMaster("spark://master:7077")
sc = SparkContext(conf=conf)
---------------------------------------------------------------------------------------
广告