Spark的配置参数可以通过修改spark-defaults.conf文件或者通过在启动Spark时通过–conf参数来指定。以下是一些常用的Spark配置参数:
-
spark.master:用于指定Spark的master节点,可以是local、yarn、mesos、standalone等,默认为local。
-
spark.app.name:用于指定Spark应用的名称。
-
spark.executor.memory:用于指定每个executor的内存大小,默认为1g。
-
spark.executor.cores:用于指定每个executor的核心数。
-
spark.driver.memory:用于指定driver的内存大小,默认为1g。
-
spark.serializer:用于指定序列化器,可以是org.apache.spark.serializer.JavaSerializer、org.apache.spark.serializer.KryoSerializer等,默认为org.apache.spark.serializer.JavaSerializer。
-
spark.default.parallelism:用于指定默认并行度。
-
spark.shuffle.service.enabled:用于开启或关闭shuffle service。
-
spark.eventLog.enabled:用于开启或关闭事件日志。
-
spark.hadoop.fs.s3a.access.key:用于指定S3的访问密钥。
-
spark.hadoop.fs.s3a.secret.key:用于指定S3的密钥。
可以通过修改spark-defaults.conf文件中添加或修改以上配置参数,也可以在启动Spark时通过–conf参数来指定。例如:
spark-submit --master yarn --conf spark.executor.memory=2g --conf spark.executor.cores=2 --conf spark.app.name=my-spark-app example.jar
这样就可以在启动Spark应用时指定executor的内存大小为2g,executor的核心数为2,并且指定应用的名称为my-spark-app。