Application开发

本文为您介绍Application开发的配置项说明和操作步骤。

前提条件

已创建工作空间,详情请参见管理工作空间

操作步骤

  1. 进入开发页面。

    1. 登录E-MapReduce控制台

    2. 在左侧导航栏,选择EMR Serverless > Spark

    3. Spark页面,单击目标工作空间名称。

    4. EMR Serverless Spark页面,单击左侧导航栏中的数据开发

  2. 新建任务。

    1. 开发目录页签下,单击新建

    2. 在弹出的对话框中,输入名称,根据实际需求在Application中选择类型,然后单击确定

    3. 在右上角选择队列。

      添加队列的具体操作,请参见管理资源队列

    4. 在新建的任务编辑器中,编辑相关参数。

      JAR

      参数

      说明

      主jar资源

      运行Spark Application时必须的主要JAR包。

      • 工作空间资源:提前在资源上传页面上传的文件。

      • OSS资源:存储在阿里云OSS中的文件。

      引擎版本

      Spark的版本,详情请参见引擎版本介绍

      Main Class

      提交Spark任务时所指定的主类。

      运行参数

      任务运行过程中所需的配置项或传递给主类的自定义参数。多个参数使用空格分隔。

      超时时间

      此任务的最大完成时间,如果任务运行的时间超过此阈值,系统将自动停止任务运行。默认值为空,表示不设定超时限制。

      files资源

      在提交Spark Application任务时,通过--files参数指定的文件将在任务提交过程中被复制到Executor的工作目录中,以确保Spark任务在运行时能够访问这些文件。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      archives资源

      在提交Spark Application任务时,通过--archives参数指定的文件将在任务提交过程中被解压分发到 Executor上的归档文件。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      jars资源

      在提交Spark Application任务时,通过--jars参数指定所需的JAR依赖文件。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      spark.driver.cores

      Spark应用程序中驱动程序使用的CPU核心数。

      spark.driver.memory

      Spark应用程序中驱动程序可用的内存大小。

      spark.executor.cores

      Spark应用程序中每个执行器(Executor)使用的虚拟CPU核心数。

      spark.executor.memory

      Spark应用程序中每个执行器(Executor)可用的内存大小。

      spark.executor.instances

      Spark分配的执行器(Executor)数量。

      动态资源分配

      默认关闭。开启后,需要配置以下参数:

      • executors数量下限:默认为2。

      • executors数量上限:如果未设置spark.executor.instances,则默认值为10。

      更多内存配置

      • spark.driver.memoryOverhead:每个Driver可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.driver.memory)

      • spark.executor.memoryOverhead:每个Executor可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.executor.memory)

      • spark.memory.offHeap.size:Spark可用的堆外内存大小。默认值为1 GB。

        仅在spark.memory.offHeap.enabled设置为true时生效。默认情况下,当采用Fusion Engine时,该功能将处于启用状态,其非堆内存默认设置为1 GB。

      Spark配置

      填写Spark配置信息,默认以空格符分隔,例如,key value

      标签

      填写标签键值对,可以提升任务管理的便捷性和精确性。

      PySpark

      参数

      说明

      主Python资源

      运行Spark Application时必须的主要Python文件。

      • 工作空间资源:提前在资源上传页面上传的文件。

      • OSS资源:存储在阿里云OSS中的文件。

      引擎版本

      Spark的版本,详情请参见引擎版本介绍

      运行参数

      任务运行过程中所需的配置项或传递给主类的自定义参数。

      超时时间

      此任务的最大完成时间,如果任务运行的时间超过此阈值,系统将自动停止任务运行。默认值为空,表示不设定超时限制。

      运行环境

      任务运行所需的资源将根据所选环境进行预配置。

      files资源

      指定需要分发到集群中所有Executor节点上的文件列表。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      pyfiles资源

      在提交Spark Application任务时,通过--py-files参数指定的文件将作为Python依赖文件在任务提交过程中一并分发。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      archives资源

      在提交Spark Application任务时,通过--archives参数指定的文件将在任务提交过程中被解压分发到Executor上的归档文件。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      jars资源

      在提交Spark Application任务时,通过--jars参数指定所需的JAR依赖文件。

      在指定资源类型时,您可以根据需要选择工作空间资源OSS资源

      spark.driver.cores

      Spark应用程序中驱动程序使用的CPU核心数。

      spark.driver.memory

      Spark应用程序中驱动程序可用的内存大小。

      spark.executor.cores

      Spark应用程序中每个执行器(Executor)使用的虚拟CPU核心数。

      spark.executor.memory

      Spark应用程序中每个执行器(Executor)可用的内存大小。

      spark.executor.instances

      Spark分配的执行器(Executor)数量。

      动态资源分配

      默认关闭。开启后,需要配置以下参数:

      • executors数量下限:默认为2。

      • executors数量上限:如果未设置spark.executor.instances,则默认值为10。

      更多内存配置

      • spark.driver.memoryOverhead:每个Driver可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.driver.memory)

      • spark.executor.memoryOverhead:每个Executor可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.executor.memory)

      • spark.memory.offHeap.size:Spark可用的堆外内存大小。默认值为1 GB。

        仅在spark.memory.offHeap.enabled设置为true时生效。默认情况下,当采用Fusion Engine时,该功能将处于启用状态,其非堆内存默认设置为1 GB。

      Spark配置

      填写Spark配置信息,默认以空格符分隔,例如,key value

      标签

      填写标签键值对,可以提升任务管理的便捷性和精确性。

      SQL

      参数

      说明

      SQL文件

      提交任务时所需的文件。

      • 工作空间资源:提前在资源上传页面上传的文件。

      • OSS资源:存储在阿里云OSS中的文件。

      引擎版本

      Spark的版本,详情请参见引擎版本介绍

      超时时间

      此任务的最大完成时间,如果任务运行的时间超过此阈值,系统将自动停止任务运行。默认值为空,表示不设定超时限制。

      spark.driver.cores

      Spark应用程序中驱动程序使用的CPU核心数。

      spark.driver.memory

      Spark应用程序中驱动程序可用的内存大小。

      spark.executor.cores

      Spark应用程序中每个执行器(Executor)使用的虚拟CPU核心数。

      spark.executor.memory

      Spark应用程序中每个执行器(Executor)可用的内存大小。

      spark.executor.instances

      Spark分配的执行器(Executor)数量。

      动态资源分配

      默认关闭。开启后,需要配置以下参数:

      • executors数量下限:默认为2。

      • executors数量上限:如果未设置spark.executor.instances,则默认值为10。

      更多内存配置

      • spark.driver.memoryOverhead:每个Driver可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.driver.memory)

      • spark.executor.memoryOverhead:每个Executor可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.executor.memory)

      • spark.memory.offHeap.size:Spark可用的堆外内存大小。默认值为1 GB。

        仅在spark.memory.offHeap.enabled设置为true时生效。默认情况下,当采用Fusion Engine时,该功能将处于启用状态,其非堆内存默认设置为1 GB。

      Spark配置

      填写Spark配置信息,默认以空格符分隔,例如,key value

      标签

      填写标签键值对,可以提升任务管理的便捷性和精确性。

      Spark Submit

      参数

      说明

      引擎版本

      Spark的版本,详情请参见引擎版本介绍

      脚本

      填写您的Spark Submit脚本。

      例如,脚本内容如下。

      --class org.apache.spark.examples.SparkPi \
      --conf spark.executor.memory=2g \
      oss://<YourBucket>/spark-examples_2.12-3.3.1.jar

      超时时间

      此任务的最大完成时间,如果任务运行的时间超过此阈值,系统将自动停止任务运行。默认值为空,表示不设定超时限制。

      spark.driver.cores

      Spark应用程序中驱动程序使用的CPU核心数。

      spark.driver.memory

      Spark应用程序中驱动程序可用的内存大小。

      spark.executor.cores

      Spark应用程序中每个执行器(Executor)使用的虚拟CPU核心数。

      spark.executor.memory

      Spark应用程序中每个执行器(Executor)可用的内存大小。

      spark.executor.instances

      Spark分配的执行器(Executor)数量。

      动态资源分配

      默认关闭。开启后,需要配置以下参数:

      • executors数量下限:默认为2。

      • executors数量上限:如果未设置spark.executor.instances,则默认值为10。

      更多内存配置

      • spark.driver.memoryOverhead:每个Driver可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.driver.memory)

      • spark.executor.memoryOverhead:每个Executor可利用的非堆内存。如果未设置该参数,Spark会根据默认值自动分配,默认值为 max(384MB, 10% × spark.executor.memory)

      • spark.memory.offHeap.size:Spark可用的堆外内存大小。默认值为1 GB。

        仅在spark.memory.offHeap.enabled设置为true时生效。默认情况下,当采用Fusion Engine时,该功能将处于启用状态,其非堆内存默认设置为1 GB。

      Spark配置

      填写Spark配置信息,默认以空格符分隔,例如,key value

      标签

      填写标签键值对,可以提升任务管理的便捷性和精确性。

    5. (可选)在任务开发页面右侧,您可以单击版本信息页签,查看版本信息或进行版本对比。

  3. 运行并发布任务。

    1. 单击运行

      运行任务后,您可以在下方的运行记录区域,单击操作列的详情,跳转至任务总览页,查看该任务的详细信息。

    2. 单击右上角的发布

    3. 发布对话框中,可以输入发布信息,然后单击确定

相关文档