更新时间:2026-05-22 GMT+08:00
分享

创建Spark引擎端点

操作场景

在提交Spark作业前,用户需要先创建Spark引擎端点,这是与AI DataLake引擎建立连接的第一步。Spark引擎端点相当于一个计算资源与计算资源的入口,通过这个端点,用户可以与AI DataLake引擎进行交互,提交各种数据处理和分析任务。

端点创建完成后,用户可以使用该端点创建和运行Spark作业,包括执行Spark SQL查询、运行Spark应用程序、进行数据清洗转换等操作。端点的创建过程通常需要用户配置选择端点类型、计算资源使用模式等参数,配置完成后系统会自动分配相应的计算资源,用户即可开始使用Spark引擎进行大规模数据处理工作。

本节操作介绍创建Spark引擎端点的操作步骤。

不同的端点类型配置的参数不同。

表1 端点类型和配置说明

端点类型

说明

相关链接

SparkSQL

适用于数据查询和分析的Spark SQL场景,通过编写SQL语句快速完成数据的筛选、聚合、计算等操作,满足数据分析师需要快速探索数据的业务需求。

配置SQL类型的端点

SparkJob

适用于复杂数据处理的Spark Job场景,适合执行大规模数据转换、机器学习模型训练、ETL作业等复杂的数据处理任务。

配置Job类型的端点

配置SQL类型的端点

  1. 登录AI DataLake管理控制台
  2. 在页面左上角切换至对应的工作空间。
  3. 在左侧导航栏选择“引擎端点 > 批处理引擎 Spark”进入端点列表页面。
  4. 单击页面右上角的“创建”,配置端点信息。
  1. 配置端点的基础信息。

    表2 端点的基础信息

    参数

    参数说明

    端点类型

    选择端点类型为SparkSQL

    引擎版本

    选择作业运行时所使用的Spark的版本。不同版本的Spark可能支持不同的特性、性能优化和API。

    端点名称

    端点名称创建后不可修改。

    端点名称是系统内部的唯一标识,在API调用、CLI命令中引用该端点,不可与已存在的端点重名。

    命名规则:

    • 名称只能包含小写字母、数字、中划线,且只能以字母开头,以字母或数字结尾。
    • 输入长度不能超过63个字符。

    例如:spark-endpoint-001、my-spark-job

    端点显示名称

    端点显示名称创建后可修改。

    端点显示名称用于用户界面展示,方便用户识别和记忆。

    命名规则:

    • 名称只能输入中文、英文、数字、中划线。
    • 输入长度不能超过63个字符。

    例如:生产环境Spark引擎、数据分析师专用端点

    添加描述

    填写描述信息,用于详细说明端点的用途、用途背景等信息,帮助其他用户理解该端点的创建目的和使用场景。

  1. 配置端点的“资源配置”类信息。

    表3 端点的资源配置

    参数

    参数说明

    资源使用模式

    当前Spark端点仅支持选择“按需弹性”的资源模式。

    “按需弹性”的资源模式使用的是弹性资源,无需提前购买,按实际使用量计费。

    适用于短期或偶发性的业务需求,如开发测试或临时任务。

    端点CPU使用最大值

    选择“按需弹性”的资源模式时,需要配置端点CPU使用最大值,即设置弹性资源的使用上限,防止突发流量导致资源无限扩展,导致费用突增。同时系统根据设置的CPU使用最大值可以进行合理的资源调度和分配。

  2. 配置端点的“集群配置”信息。

    • Driver
      表4 Driver配置

      参数

      参数说明

      spark.driver.cores

      driver CPU核数,用于指定Spark应用程序中driver进程可使用的vCPU数量。

      spark.driver.memory

      driver内存。用于指定Spark应用程序driver进程可使用的内存量。

      完整的driver内存=spark.driver.memory + spark.driver.memoryOverhead

      spark.driver.memoryOverhead

      每个driver可使用的堆外内存量。

    • Executer
      表5 Executer配置

      参数

      参数说明

      spark.executor.cores

      executor CPU核数,用于指定每个executor进程可使用的vCPU数量。

      spark.executor.memory

      executor内存。用于指定每个executor进程可使用的内存量。

      完整的Executor内存=spark.executor.memory + spark.executor.memoryOverhead

      spark.executor.memoryOverhead

      Spark应用程序中每个executor的堆外内存量。

      Executor数量(Min-Max)

      分配的executor个数。建议至少分配1个,确保Spark有较好的性能。

      表6 端点资源配置

      参数

      参数说明

      集群数量(Min-Max)

      端点保持运行的集群数量范围。

      • Min:最小集群数量。当启用自动停止集群功能时,系统将确保至少维持指定数量的集群运行。

        设置为0时,端点将仅在有请求时创建集群,响应延迟可能增加。

        生产环境建议至少设置为1,确保有集群随时等待任务执行。

      • Max:端点可以创建的最大集群数量。当并发SQL数量超过单集群处理能力时,系统将自动扩展集群以处理请求,请根据业务并发量合理设置集群的最大值。
        • 最大值必须大于或等于最小值,且最大值不能小于2。
        • 最大值越大,扩展能力越强,但成本也越高

      单集群并发SQL数

      单个集群能够同时处理的SQL查询最大数量。超过SQL查询最大数量将扩展新的集群,如果集群数量超过配置的最大集群数量,那么新的请求将排队。

      设置过低会导致资源利用率不足,设置过高可能导致SQL查询执行缓慢。

      内存充足的集群可以支持更高的并发数。

      端点最大并发SQL数量

      整个端点所有集群合计能够同时处理的SQL查询最大数量。超过此数量的请求将被拒绝,即请求失败。

      • 该值应大于等于单集群并发SQL数。
      • 设置过小会限制业务并发能力,设置过大会增加成本。

        配置建议:端点最大并发SQL数 ≥ 单集群并发SQL数 × 集群数量(最大值)。

      自动停止集群

      是否自动停止该集群以释放资源并节省成本。

      • 勾选后,即启用自动停止集群功能,您可以设置无SQL运行时间,超过设定时间会自动停止集群(Min个集群不会自动停止)。
      • 取消勾选,即禁用自动停止集群功能,集群将始终保持运行状态,即使没有任务执行。

      生产环境如果要求低延迟,可以禁用自动停止集群功能,如果是测试环境推荐启用自动停止集群功能,避免资源空闲,提升资源利用效率优化资源成本。

      集群老化时间

      设置集群最长运行时间,超时后待集群中 SQL 运行完成后自动销毁。

  3. 配置Spark参数。

    以“key=value”的形式设置提交Spark作业的属性。

    • 键(Key):输入 Spark 作业所需的配置参数名称,例如 spark.sql.adaptive.enabled、spark.executor.memory 等。
    • 值(Value):为对应的键设置参数值,例如:4294967296。内存的默认单位为byte。

  4. 配置端点的“存储配置”信息。

    表7 存储配置信息

    参数

    参数说明

    选择OBS桶

    通过下拉菜单选择已有的OBS桶。用于存储作业日志和临时数据等信息。

    若未配置,可单击“新建 OBS 桶”进行创建。

    委托名

    配置用于读写作业event log、日志和临时数据等信息所使用的委托(即权限委托,如 IAM 委托)。

    通过下拉菜单选择已有的委托。若未配置,可单击“新建委托”进行创建。

  5. 完成上述信息的配置后,单击“立即创建”,系统按照配置要求开始创建端点。

    端点创建完成后,可在列表中查看相关信息,端点状态变为“运行中”后即可提交作业到该端点中运行。

配置Job类型的端点

  1. 登录AI DataLake管理控制台
  2. 在页面左上角切换至对应的工作空间。
  3. 在左侧导航栏选择“引擎端点 > 批处理引擎 Spark”进入端点列表页面。
  4. 单击页面右上角的“创建”,配置端点信息。
  5. 配置端点的基础信息。

    表8 端点的基础信息

    参数

    参数说明

    端点类型

    选择端点类型为SparkJob

    端点名称

    端点名称创建后不可修改。

    端点名称是系统内部的唯一标识,在API调用、CLI命令中引用该端点,

    命名规则:

    • 名称只能包含小写字母、数字、中划线,且只能以字母开头,以字母或数字结尾。
    • 输入长度不能超过63个字符。

    例如:spark-endpoint-001、my-spark-job

    端点显示名称

    端点显示名称创建后可修改。

    端点显示名称用于用户界面展示,方便用户识别和记忆。

    命名规则:

    • 名称支持输入中文、英文、数字和下划线。
    • 输入长度不能超过63个字符。

    例如:生产环境Spark引擎、数据分析师专用端点

    添加描述

    填写描述信息,用于详细说明端点的用途、用途背景等信息,帮助其他用户理解该端点的创建目的和使用场景。

  6. 配置端点的“资源配置”类信息。

    表9 批处理引擎Spark端点配置-资源配置

    参数

    参数说明

    资源使用模式

    当前Spark端点仅支持选择“按需弹性”的资源模式。

    “按需弹性”的资源模式使用的是弹性资源,无需提前购买,按实际使用量计费,无业务运行不产生费用。

    适用于短期或偶发性的业务需求,如开发测试或临时任务。

    端点CPU使用最大值

    选择“按需弹性”的资源模式时需要配置端点CPU使用最大值,即设置弹性资源的使用上限,防止突发流量导致资源无限扩展,耗尽集群算力。同时系统根据设置的CPU使用最大值可以进行合理的资源调度和分配。

  7. 配置端点的“调度配置”信息。

    表10 端点调度配置

    参数

    参数说明

    端点最大并发作业数量

    端点能够同时处理的作业最大数量。超过此数量的请求将被拒绝,即请求失败。

    作业调度策略

    • 随机(RANDOM

      根据随机选择的方式选择作业进行处理。每次调度时,随机选择一个作业执行。

    • 先进先出(FIFO

      指作业按照到达的顺序排队等待处理。最早到达的作业最先被处理,然后是第二个到达的作业,依此类推。

    FIFO允许并发时间

    当设置调度策略为FIFO,还需要设置允许作业并发提交时间窗口,提交时间在同一时间窗口内的作业随机抢占资源,不同时间窗口间的作业通过先进先出分配。

  8. 配置Spark参数。

    以“key=value”的形式设置提交Spark作业的属性。

    • 键(Key):输入Spark作业所需的配置参数名称,例如spark.sql.adaptive.enabled、spark.executor.memory等。
    • 值(Value):为对应的键设置参数值,例如true、4g等。

  9. 配置端点的“存储配置”信息。

    表11 存储配置信息

    参数

    参数说明

    选择OBS桶

    通过下拉菜单选择已有的OBS桶。用于存储作业日志和临时数据等信息。

    若未配置,可单击“新建 OBS 桶”进行创建。

    委托名

    配置用于读写作业event log、日志和临时数据等信息所使用的委托(即权限委托,如 IAM 委托)。

    通过下拉菜单选择已有的委托。若未配置,可单击“新建委托”进行创建,具体操作请参考创建自定义委托

  10. 配置作业委托

    使用Spark引擎执行作业时,需要您先在IAM页面创建相关委托,并在此处添加新建的委托信息。具体操作请参考创建自定义委托

    常见新建委托场景:允许AI DataLake读写OBS将日志转储、允许AI DataLake在访问DEW获取数据访问凭证、允许访问LakeFormation获取元数据等场景。

  11. 完成上述信息的配置后,单击“立即创建”,系统按照配置要求开始创建端点。

    端点创建完成后,可在列表中查看相关信息,端点状态变为“运行中”后即可提交作业到该端点中运行。

后续操作

使用Spark端点提交作业。

相关文档