sparkconf参数设置

在Spark中,可以通过 SparkConf 对象来设置运行Spark应用程序的一系列参数,包括应用程序名、运行模式、数据源等等。

下面是一些常用的 SparkConf 参数设置:

  • spark.app.name -- 应用程序名,在Spark的Web UI和日志中显示;
  • spark.master -- 运行模式,通常设置为 local[*] 表示在本地模式运行,也可以设置为 yarn mesos 等分布式模式;
  • spark.executor.memory -- 每个Executor的内存大小,默认为1g;
  • spark.serializer -- 序列化方式,默认使用Java序列化,可以设置为 Kryo 等其他序列化类库;
  • spark.sql.shuffle.partitions -- Spark SQL中shuffle操作的分区数,默认为200;
  • spark.default.parallelism -- 默认并行度,通常设置为CPU核心数的2-3倍。
  • 这些参数可以通过 SparkConf 对象的 set 方法来进行设置,例如:

    from pyspark import SparkConf
    conf = SparkConf()
    conf.set("spark.app.name", "MyApp")
    conf.set("spark.executor.memory", "2g")
    conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
    

    最后,可以将SparkConf对象传递给SparkSession.builder.config方法来创建SparkSession对象:

    from pyspark.sql import SparkSession
    spark = SparkSession.builder.config(conf=conf).getOrCreate()
                  Angryshark128
              Spark