ADB Spark节点

更新时间:2025-03-11 08:32:18

DataWorksADB Spark节点可进行AnalyticDB Spark任务的开发和周期性调度,以及与其他作业的集成操作。本文为您介绍使用ADB Spark节点进行任务开发的主要流程。

背景信息

ADB SparkAnalyticDB服务中专为运行Apache Spark大规模数据处理任务设计的计算引擎,支持实时数据分析、复杂查询和机器学习应用。它通过多语言支持(如Java、Scala、Python)简化开发流程,并能自动扩展以优化性能和成本。用户可通过上传相关Jar.py文件配置任务,适用于需高效处理海量数据并实现实时洞察的各类行业,助力企业从数据中获取有价值的信息并推动业务发展。

前提条件

AnalyticDB for MySQL前提条件:

  • 已创建与工作空间同一地域下的AnalyticDB for MySQL企业版、湖仓版或基础版集群,详情请参见创建集群

  • 已在AnalyticDB for MySQL集群中配置Job型资源组,详情请参见新建Job型资源组

    说明

    通过DataWorks开发Spark应用时,需创建Job型资源组。

  • 如需ADB Spark节点中使用OSS存储,须确保OSS存储与AnalyticDB for MySQL集群处于相同地域。

DataWorks前提条件:

  • 已有勾选参加数据开发(DataStudio)(新版)公测的工作空间,并已完成资源组的绑定,详情请参见创建工作空间

  • 资源组需要绑定与AnalyticDB for MySQL集群同一个VPC,并在AnalyticDB for MySQL集群中配置资源组IP地址白名单,详情请参见设置白名单

  • 您需将创建的AnalyticDB for MySQL集群实例添加到DataWorks作为计算资源,计算资源类型为AnalyticDB for Spark,并通过资源组测试连通性,详情请参见绑定计算资源(参加新版数据开发公测)

  • 已开发创建项目目录,详情请参见项目目录

  • 已创建ADB Spark节点,详情请参见创建周期任务

步骤一:开发ADB Spark节点

ADB Spark节点里面,您可根据语言类型的不同,使用示例代码准备的示例Jarspark-examples_2.12-3.2.0.jar或者spark_oss.py文件对节点内容进行相应配置。节点内容开发详情请参见通过Spark-Submit命令行工具开发Spark应用

ADB Spark节点内容配置说明(Java/Scala语言类型)
ADB Spark节点内容配置说明(Python语言类型)

准备待执行文件(Jar)

您需将示例Jar包上传至OSS中,以供后续在节点配置中执行该Jar包文件。

  1. 准备示例Jar包。

    您可直接下载spark-examples_2.12-3.2.0.jar该示例Jar包,用于后续ADB Spark节点使用。

  2. 将示例代码上传到OSS。

    1. 登录OSS管理控制台单击左侧导航栏的Bucket列表

    2. 进入Bucket列表页面,单击创建Bucket,在创建 Bucket详情页面选择与AnalyticDB for MySQL集群相同的地域创建Bucket。

      说明

      本文示例使用的Bucketdw-1127

    3. 创建外部存储目录。

      完成创建后,单击进入Bucket,在文件列表页面单击新建目录,创建数据库外部存储目录,配置目录名db_home

    4. 请将您所创建的示例代码spark-examples_2.12-3.2.0.jar文件上传至db_home目录下,详情参见控制台上传文件

配置ADB Spark节点

您可参照以下参数配置信息,配置ADB Spark节点内容。

语言类型

参数名称

参数描述

Java/Scala

Jar资源

Jar包资源在OSS上的存储路径。示例值如:oss://dw-1127/db_home/spark-examples_2.12-3.2.0.jar

Main Class

为您实际编译的JAR包中的任务主Class。示例代码中的主类名称为org.apache.spark.examples.SparkPi

参数

填写您所需传入代码的参数信息。您可将该参数配置为动态参数${var}

说明

示例中的动态参数${var}可设置为1000

配置项

您可在此配置spark程序运行参数,详情请参见Spark应用配置参数说明。示例如下:

spark.driver.resourceSpec:medium

准备待执行文件(Python)

您需按照以下操作步骤,完成测试数据文件、示例代码上传到OSS,以供后续在节点配置中执行该示例代码读取测试数据文件信息。

  1. 准备测试数据。

    新建一个data.txt文件,在文件中添加以下内容。

    Hello,Dataworks
    Hello,OSS
  2. 编写示例代码。

    您需新建一个spark_oss.py文件,在spark_oss.py文件中添加以下内容。

    import sys
    
    from pyspark.sql import SparkSession
    
    # 初始Spark
    spark = SparkSession.builder.appName('OSS Example').getOrCreate()
    # 读取指定的文件,文件路径由args传入的参数值来指定
    textFile = spark.sparkContext.textFile(sys.argv[1])
    # 计算文件行数并打印
    print("File total lines: " + str(textFile.count()))
    # 打印文件的第一行内容
    print("First line is: " + textFile.first())
    
  3. 上传测试数据及示例代码到OSS。

    1. 登录OSS管理控制台单击左侧导航栏的Bucket列表

    2. 进入Bucket列表页面,单击创建Bucket,在创建 Bucket详情页面选择与AnalyticDB for MySQL集群相同的地域创建Bucket。

      说明

      本文示例使用的Bucketdw-1127

    3. 创建外部存储目录。

      完成创建后,单击进入Bucket,在文件列表页面单击新建目录,创建数据库外部存储目录,配置目录名db_home

    4. 请将您所创建的测试数据data.txt文件、示例代码spark_oss.py文件上传至db_home目录下,详情参见控制台上传文件

配置ADB Spark节点

您可参照以下参数配置信息,配置ADB Spark节点内容。

语言类型

参数名称

参数描述

Python

主程序包

填写您所需执行的示例代码文件存储位置,示例值如oss://dw-1127/db_home/spark_oss.py

参数

填写您所需传入的参数信息。示例信息为读写的测试数据文件存储位置,示例值如oss://dw-1127/db_home/data.txt

配置项

您可在此配置spark程序运行参数,详情请参见Spark应用配置参数说明。示例如下:

spark.driver.resourceSpec:medium

步骤二:调试ADB Spark节点

  1. 配置ADB Spark调试属性。

    您可在节点右侧调试配置中配置计算资源ADB计算资源组调度资源组计算CU信息,具体参数信息如下。

    参数类型

    参数名称

    描述

    参数类型

    参数名称

    描述

    计算资源

    计算资源

    选择您所绑定的AnalyticDB for Spark计算资源。

    ADB计算资源组

    选择您在AnalyticDB for MySQL集群中创建的Job型资源组。详情请参见资源组介绍

    DataWorks配置

    资源组

    选择您绑定AnalyticDB for Spark计算资源时已通过测试连通性的资源组。

    计算CU

    当前节点使用默认CU值,无需修改CU。

  2. 调试运行ADB Spark节点。

    执行节点任务,您需单击保存运行节点任务。

步骤三:调度ADB Spark节点

  1. 配置ADB Spark节点调度属性。

    如需定期执行节点任务,请根据业务需求在节点右侧调度配置调度策略中配置以下参数信息,更多参数配置,详情请参见调度配置

    参数名称

    描述

    参数名称

    描述

    计算资源

    选择您所绑定的AnalyticDB for Spark计算资源。

    ADB计算资源组

    选择您在AnalyticDB for MySQL集群中创建的Job型资源组。详情请参见资源组介绍

    资源组

    选择您绑定AnalyticDB for Spark计算资源时已通过测试连通性的资源组。

    计算CU

    当前节点使用默认CU值,无需修改CU。

  2. 发布ADB Spark节点。

    节点任务配置完成后,需对节点进行发布。详情请参见节点/工作流发布

后续步骤

任务发布后,您可以在运维中心查看周期任务的运行情况。详情请参见运维中心入门

  • 本页导读 (1)
  • 背景信息
  • 前提条件
  • 步骤一:开发ADB Spark节点
  • 步骤二:调试ADB Spark节点
  • 步骤三:调度ADB Spark节点
  • 后续步骤