通过DataWorks管理作业

Lindorm计算引擎兼容CDH(Cloudera's Distribution Including Apache Hadoop),支持通过大数据开发治理平台DataWorks开发、管理、调度、运维分布式计算作业。作业类型包括交互式SQL查询、SQL作业、JAR作业、Python作业等。本文介绍如何通过DataWorks对Lindorm计算引擎的各类作业进行开发和调度运维。

前提条件

操作流

image

绑定引擎

通过以下步骤,完成Lindorm计算引擎到DataWorks工作空间的绑定及相关CDH配置。

  1. 进入工作空间管理中心。如何进入,请参见进入管理中心

  2. 在左侧导航栏,选择开源集群>CDH集群

  3. CDH集群配置页面,单击立即新增

  4. 新增CDH集群配置对话框中,配置以下参数。

    参数

    说明

    CDH集群版本

    CDH集群版本号。请选择CDH 6.3.2

    版本选择(Hive)

    Hive的版本号。请选择2.1.1

    HiveServer2

    HiveServer2地址。请填写Lindorm计算引擎的JDBC地址。连接地址的获取方式,请参见查看计算引擎连接地址

    Metastore

    Hive Metastore地址。请填写Lindorm计算引擎的Hive Metastore地址。连接地址的获取方式,请参见查看计算引擎连接地址

    配置文件core-site.xmlhdfs-site.xmlmapred-site.xmlyarn-site.xml

    配置文件。全部上传空文件即可。

    添加工作空间

    添加指定工作空间。请选择当前工作空间。

    认证类型

    请选择无认证方式

  5. 将CDH集群绑定至工作空间。如何绑定,请参见绑定工作空间

  6. 新增CDH实例对话框中,配置以下参数。

    参数

    说明

    访问模式

    请选择快捷模式

    选择集群

    请选择已创建的CDH集群。

    认证类型

    请选择无认证方式

    账号

    请填写lindorm

    独享调度资源组

    请选择已创建的调度资源组。

    测试连通性

    测试独享调度资源组到Lindorm计算引擎的网络连通性。请单击测试连通性按钮。

  7. 单击确定

临时查询

通过临时查询可以排查SQL语句是否正确。

  1. 进入数据开发模块。如何进入,请参见进入数据开发

  2. 新建临时查询文件夹。如何新建,请参见新建文件夹

  3. 右键单击文件夹名称,选择新建节点>CDH Hive,进入SQL编辑页面。

  4. (可选)参数配置。编写参数配置语句,例如SET spark.executor.cores=2;。详细参数说明,请参见作业配置说明

    说明

    参数配置语句必须写在SQL语句前。

  5. 在SQL编辑页面,编写SQL语句完成任务调试和运行。

任务流编排(JDBC作业)

通过以下步骤可以完成开发任务的编排。

  1. 创建周期业务流程。如何创建,请参见创建周期业务流程

  2. 拖拽CDH Hive节点至业务流程面板。image..png

  3. 双击调度节点,进入SQL编辑页面。

  4. 在右侧导航栏,单击属性,并完成资源组的配置。详细说明,请参见配置资源属性

  5. (可选)配置多节点任务流。拖拽多个CDH Hive节点至业务流程面板,并通过节点连线的方式,配置上下游的调度依赖关系。详细配置,请参见配置调度参数

  6. SQL作业开发。在SQL编辑页面,编写SQL语句完成任务运行。

发布周期性作业(Python作业或JAR作业

  1. 创建周期业务流程。如何创建,请参见创建周期业务流程

  2. 拖拽Shell节点至业务流程面板。

  3. 双击调度节点,进入SQL编辑页面。

  4. 在SQL编辑页面输入以下代码完成作业配置。

    • Python作业模板

      curl --location --request POST  http://ld-bp1z3506imz2f****-proxy-ldps-pub.lindorm.aliyuncs.com:10099/api/v1/lindorm/jobs/xxxxxx --header "Content-Type:application/json" --data '{
      "owner":"root",
      "name":"LindormSQL",
      "mainResourceKind":"jar",
      "mainResource":"oss://path/launcher.py",
      "mainArgs":["arg1","arg2"],
      "conf":{
          "spark.hadoop.fs.oss.endpoint":"",
          "spark.hadoop.fs.oss.accessKeyId":"",
          "spark.hadoop.fs.oss.accessKeySecret":"",
          "spark.hadoop.fs.oss.impl":"org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem",
          "spark.submit.pyFiles" : "oss://path/your_project.zip",
          "spark.archives" : "oss://path/pyspark_conda_env.tar.gz",
          "spark.sql.shuffle.partitions" : "20"
      }
      }'
    • JAR作业模板

      curl --location --request POST  http://ld-bp1z3506imz2f****-proxy-ldps-pub.lindorm.aliyuncs.com:10099/api/v1/lindorm/jobs/xxxxxx  --header "Content-Type:application/json" --data '{
      "owner":"root",
      "name":"LindormSQL",
      "mainResourceKind":"jar",
      "mainClass":"your_project_main_class",
      "mainResource":"oss://path/your_project.jar",
      "mainArgs":[],
      "conf":{
          "spark.hadoop.fs.oss.endpoint":"",
          "spark.hadoop.fs.oss.accessKeyId":"",
          "spark.hadoop.fs.oss.accessKeySecret":"",
          "spark.hadoop.fs.oss.impl":"org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem",
          }
      }'

      其中,http://ld-bp1z3506imz2f****-proxy-ldps-pub.lindorm.aliyuncs.com:10099为控制台获取的计算引擎的JAR地址。如何获取,请参见查看计算引擎连接地址。其他参数说明,请参见Python作业参数说明JRA作业参数说明

  5. 在右侧导航栏,单击属性,并完成资源组的配置。详细说明,请参见配置资源属性

  6. 提交作业。如何提交,请参见提交业务流程

  7. 发布周期性任务。如何发布,请参见发布任务

数据地图

通过以下步骤,可以将Lindorm计算引擎中的表同步至DataWorks,从而方便地管理数据表。

  1. 数据采集。如何进行数据采集,请参见CDH Hive数据抽样采集器

  2. 在左侧导航栏单击全部数据,触发表的检索,验证元数据是否同步成功。

    说明

    如果您想要进一步进行数据治理,请参见数据地图