Spark Conf自定义参数列表

Serverless Spark支持多个内置特有参数,您可以查阅这些参数的名称、描述及其使用场景,以便灵活配置任务运行环境并优化任务执行。

参数名

参数描述

适用场景

spark.emr.serverless.user.defined.jars

将上传的JAR包添加至Serverless SparkDriverExecutorClassPath中。

  • 支持的引擎版本:

    • esr-4.x:esr-4.1.0及之后版本。

    • esr-3.x:esr-3.1.0及之后版本。

    • esr-2.x:esr-2.5.0及之后版本。

  • 上传方式:

    • esr-4.2.0、esr-3.2.0esr-2.6.0及之后版本:

      • 上传至Serverless Spark文件管理,详情请参见管理文件

        您可以在托管文件目录页签,单击目标文件操作列中的复制地址,以获取指定存储空间的地址。

      • 上传至阿里云OSS,上传操作参见简单上传

        路径格式为oss://path/to/file1.jar,oss://path/to/file2.jar

    • esr-4.2.0、esr-3.2.0esr-2.6.0之前版本:仅支持上传至阿里云OSS,上传操作参见简单上传

      路径格式为oss://path/to/file1.jar,oss://path/to/file2.jar

通过Spark-Submit工具、批任务以及Airflow Serverless Spark Operator提交Spark任务时,或在创建会话资源时,可将存储于OSS上的自定义JAR包添加至Spark DriverExecutor。

spark.emr.serverless.fusion

设置由KyuubiLivy启动的会话或批处理任务是否启用Fusion。取值如下:

  • false(默认):关闭。

  • true:开启。

支持通过任务或会话的Spark配置参数来决定是否启用Fusion。

spark.emr.serverless.environmentId

运行环境ID,用于配置计算资源使用的运行环境。

通过AirflowSpark-Submit工具提交Serverless Spark任务时,可以指定运行环境,默认安装第三方依赖库。

spark.emr.serverless.network.service.name

网络连接名称,用于配置计算资源以实现与其他VPC内数据源的网络互通。

在提交Serverless Spark任务时,可以添加网络连接,以支持访问其他虚拟私有云(VPC)下的数据源。

spark.emr.serverless.excludedModules

移除Serverless Spark自带的lib。

  • esr-2.7.0、esr-3.3.0esr-4.3.0及之后版本,支持移除paimon,hudi,iceberg,delta,celeborn,dlf,fusion,jindo,odps,mysql,doctor

  • esr-2.8.0 、esr-3.4.0 和 esr-4.4.0及之后版本新增支持移除kafka

通常用于用户需要使用自定义JAR包的场景。通过Serverless Spark控制台、Spark-Submit工具、批任务、Airflow  Serverless Spark Operator、Kyuubi、Livy提交Spark任务,或创建会话资源时,应移除Serverless Spark自带的库。

spark.emr.serverless.kyuubi.engine.queue

工作空间队列名称,用于配置Kyuubi启动的Spark Application所在的队列。

支持在Kyuubi配置栏中进行设置,或在JDBC URL连接时指定。

spark.emr.serverless.templateId

用于指定Spark Application的默认配置模板ID,通过引用预定义的工作空间模板,简化任务提交时的参数配置。

模板ID可以在运维中心 > 配置管理 > Spark 配置模板页面获取。例如,TPL-2b3859f8c0c8439faddc22f223c8****

仅支持Spark-Submit工具。

spark.emr.serverless.livy.config.mode

用于控制通过Livy Gateway提交Spark任务时,是否使用Livy Gateway配置的 spark-defaults.conf文件中的配置信息。

  • 未设置该参数(默认行为) 提交Spark任务时会自动加载spark-defaults.conf文件中的配置信息,并将其应用到任务中。

  • 设置为 ignore

    如果将该参数设置为ignore,则提交Spark任务时会忽略 spark-defaults.conf 文件中的配置信息。此时,任务仅使用您显式指定的配置参数或默认的Spark配置。

当您需要完全自定义Spark任务的配置,可以将该参数设置为ignore。如果希望保留Livy Gateway的默认配置行为,则无需设置该参数。

spark.emr.serverless.tag.xxxx

Livy提交的批任务标签,通过spark.emr.serverless.tag.<key> <value>的方式给任务打标签。

通过使用该参数,可为Livy Gateway提交的Spark任务添加标签,以便在后续的任务历史中通过标签对任务进行筛选。