CDH Spark SQL节点

Spark SQL可实现分布式SQL查询引擎处理结构化数据,提高作业的执行效率。DataWorksCDH Spark SQL节点可进行CDH Spark SQL任务的开发和周期性调度,以及与其他作业的集成操作。本文为您介绍如何配置及使用CDH Spark SQL节点。

前提条件

  • 已创建阿里云CDH集群,并绑定至DataWorks工作空间。操作详情请参见新版数据开发:绑定CDH计算资源

    重要

    已在CDH集群安装Spark组件,并在绑定集群时配置Spark相关信息。

  • (可选,RAM账号需要)进行任务开发的RAM账号已被添加至对应工作空间中,并具有开发空间管理员(权限较大,谨慎添加)角色权限,添加成员的操作详情请参见为工作空间添加空间成员

    说明

    如果您使用的是主账号,则可忽略该添加操作。

  • 已在DataWorks配置Hive数据源并通过连通性测试,详情请参见数据源管理

新建节点

新建入口参考:创建节点

开发节点

SQL编辑区域开发任务代码,您可在代码中使用${变量名}的方式定义变量,并在节点编辑页面右侧调度配置调度参数中为该变量赋值。实现调度场景下代码的动态传参,调度参数使用详情,请参考调度参数支持格式,示例如下。

CREATE TABLE IF NOT EXISTS test_spark.test_lineage_table_f1 (`id` BIGINT, `name` STRING)
PARTITIONED BY (`ds` STRING);
CREATE TABLE IF NOT EXISTS test_spark.test_lineage_table_t2 AS SELECT * FROM test_spark.test_lineage_table_f1;
INSERT INTO test_spark.test_lineage_table_t2 SELECT id,${var} FROM test_spark.test_lineage_table_f1;
说明
  • 示例在test_spark数据库中创建test_lineage_table_f1test_lineage_table_t2表,并且从test_lineage_table_f1表向test_lineage_table_t2表复制数据,本示例仅为参考,实际使用时请替换为您自己的数据库环境。

  • 代码中的${var}参数赋值为字段name

调试节点

  1. 调试配置计算资源中,选择配置计算资源资源组

    1. 计算资源选择您在DataWorks上注册的CDH集群名称。

    2. 资源组选择与数据源测试连通性成功的调度资源组。详情请参见网络连通方案

  2. 在节点编辑页面上方工具栏,单击运行任务。

后续步骤

  • 节点调度:若项目目录下的节点需要周期性调度执行,您需要在节点右侧的调度配置中设置调度策略,配置相关的调度属性。

  • 节点发布:若任务需要发布至生产环境执行,请单击界面image图标唤起发布流程,通过该流程将任务发布至生产环境。项目目录下的节点只有在发布至生产环境后,才会进行周期性调度。

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