
# 在DataArts Studio开发DLI Spark作业
华为云数据治理中心DataArts Studio提供了一站式数据治理平台，可以实现与DLI服务的对接，从而提供统一的数据集成、数据开发服务，方便企业对全部数据进行管控。
本节操作介绍在DataArts Studio的数据开发模块开发DLI Spark作业的操作步骤。
#### 操作流程
1. 获取Spark作业的演示JAR包，并在DataArts Studio控制台的数据开发模块中关联到此JAR包。
2. 在DataArts Studio控制台创建数据开发模块作业，通过DLI Spark节点提交Spark作业。
 
#### 环境准备
- **DLI资源环境准备**
  - **配置DLI作业桶**
    使用DLI服务前需配置DLI作业桶，该桶用于存储DLI作业运行过程中产生的临时数据，例如：作业日志、作业结果。
    具体操作请参考：[配置DLI作业桶](https://support.huaweicloud.com/usermanual-dli/dli_01_0536.html)。
    
  
  - **准备Jar包并上传OBS桶**
    本示例使用的Spark作业代码来自maven库（下载地址：<https://repo.maven.apache.org/maven2/org/apache/spark/spark-examples_2.10/1.1.1/spark-examples_2.10-1.1.1.jar>），此Spark作业是计算π的近似值。
    获取Spark作业代码JAR包后，将JAR包上传到OBS桶中，本例存储路径为"obs://dlfexample/spark-examples_2.10-1.1.1.jar"。
    
  
  - **创建弹性资源池并添加通用队列**
    弹性资源池为DLI作业运行提供所需的计算资源（CPU和内存），用于灵活应对业务对计算资源变化的需求。
    创建弹性资源池后，您可以在弹性资源池中创建通用队列用于提交Spark作业，队列关联到具体的作业和数据处理任务，是资源池中资源被实际使用和分配的基本单元，即队列是执行作业所需的具体的计算资源。
    具体操作请参考：[创建弹性资源池并添加队列](https://support.huaweicloud.com/usermanual-dli/dli_01_0505.html)。
    
   
- **DataArts Studio资源环境准备**
  - **购买** **DataArts Studio实例**
    在使用DataArts Studio提交DLI作业前，需要先购买DataArts Studio实例。
    具体操作请参考[购买DataArts Studio基础包](https://support.huaweicloud.com/usermanual-dataartsstudio/dataartsstudio_01_0115.html)。
    
  
  - **进入** **DataArts Studio实例** **空间**
    1. 购买完成DataArts Studio实例后，单击"进入控制台"。
       图1进入DataArts Studio实例控制台   
       ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002314925518.png "点击放大") 
    
    2. 单击"空间管理"，进入数据开发页面。 购买DataArts Studio实例的用户，系统将默认为其创建一个默认的工作空间"default"，并赋予该用户为管理员角色。您可以使用默认的工作空间，也可以参考本章节的内容创建一个新的工作空间。
       如需创建新的空间请参考[创建并管理工作空间](https://support.huaweicloud.com/usermanual-dataartsstudio/dataartsstudio_01_0116.html)。
       图2进入DataArts Studio实例空间   
       ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002314765694.png "点击放大")
       图3进入DataArts Studio数据开发页面   
       ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002348844413.png "点击放大") 
     
   
 
#### 步骤1：获取Spark作业代码
1. 获取Spark作业代码JAR包后，将JAR包上传到OBS桶中，存储路径为"obs://dlfexample/spark-examples_2.10-1.1.1.jar"。
2. 在DataArts Studio控制台首页，选择对应工作空间的"数据开发"模块，进入数据开发页面。
3. 在数据开发主界面的左侧导航栏，选择"配置管理 \> 资源管理"。
4. 单击"新建资源"，在数据开发模块中创建一个资源关联到[1]的JAR包，资源名称为"spark-example"。
   
   图4创建资源   
   ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002348724609.png "点击放大")
   
   
 
#### 步骤2：提交Spark作业
用户需要在数据开发模块中创建一个作业，通过作业的DLI Spark节点提交Spark作业。
1. 创建一个数据开发批处理作业，右键单击目录，单击"新建作业"，作业名称为"job_DLI_Spark"。 
   图5创建作业   
   ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002314925522.png "点击放大")
   
   
2. 然后进入作业开发页面，拖动DLI Spark节点到画布并单击，配置节点的属性。 
   图6配置节点属性   
   ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002348844417.png "点击放大")
   关键属性说明：
   - DLI队列：DLI中创建的DLI队列。
   
   - 作业运行资源：DLI Spark节点运行时，限制最大可以使用的CPU、内存资源。
   
   - 作业主类：DLI Spark节点的主类，本例的主类是"org.apache.spark.examples.SparkPi"。
   
   - Spark程序资源包：[4]中创建的资源。
   
   
   
   
3. 作业编排完成后，单击![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002314925526.png)，测试运行作业。
   
   图7作业日志（仅参考）   
   ![](https://support.huaweicloud.com/usermanual-dli/zh-cn_image_0000002314765702.png)
   
   
4. 如果日志运行正常，保存作业并提交版本。
 
