You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们
导航

EMR HSQL

最近更新时间2022.09.26 20:48:40

首次发布时间2021.08.13 15:07:14

1 概述

使用EMR HSQL 语句,从源表中获取待加工数据,加工完成后写入目标表。EMR 支持 Hive 和 Spark 两种执行引擎。

下面将向您介绍 EMR HSQL 任务配置的详细说明。

2 使用前提

若仅开通 Dataleap产品 湖仓一体 的服务,不支持绑定 EMR 引擎。

3 任务配置说明

3.1 新建任务

任务配置步骤如下:

  1. 登录 DataLeap租户控制台

  2. 概览 界面,显示加入的项目中,点击 数据开发 进入对应项目。

  3. 任务开发 界面,左侧导航栏中,点击 新建任务 按钮,进入 新建任务 页面。

  4. 选择任务类型:

    1. 分类:数据开发

    2. 绑定引擎:EMR

    3. 关联实例:显示项目绑定时的引擎实例信息。

    4. 选择任务:离线数据 EMR HSQL

  5. 填写任务基本信息:

    1. 任务名称:输入任务的名称,只允许字符.、字母、数字、下划线、连字符、[]、【】、()、()以及中文字符,且需要在127个字符以内。

    2. 保存至: 选择任务存放的目标文件夹目录。

  6. 点击 确认 按钮,成功创建任务。

3.2 编辑任务

任务创建成功后,进入代码编辑器界面,以 HSQL 语句示例代码如下:

//方式1静态分区,场景:根据数据到来的频率,新数据的到来时间确定,分区的值是确定的。
insert overwrite table 目标db.目标表名 partition (date = "${date}")
select
name,
age
from
源库名.源表名
where
`date` = '${DATE-1}'
//方式2动态分区,谨慎使用,根据已有数据进行动态分区,分区的值是非确定的。
insert overwrite table 目标db.目标表名 partition (p_date,app)
select
user_id,
date as p_date,
app_name as app//分区字段
from
源库名.源表名
where
`date` = '${DATE-1}'

3.3 智能代码编辑器

智能代码编辑器具备以下能力:

功能说明
Text Editor具备 Editor 基础能力、列编辑、代码格式化、代码解析等,辅助提升开发效率。
智能联想及补全开发过程中,支持智能联想库、表、字段、函数、SQL 关键词等。
实时语法检查开发过程触发智能语法检查。
语法解析完成SQL编写后,可以点击解析按钮,检查代码是否存在语法错误以及是否具备引用库表的读写权限。
语法高亮在关键字、函数、参数、字段、字符串等信息中,高亮提醒,提高整体代码的可阅读性。
跳转定义鼠标移动至表名,支持快捷键跳转到数据地图表详情页,Mac按住Command,Windows按住 Control 。
字段展开编写 Select * 查询语句时,使用光标选中 * 号后,会立即有灯泡符号的提示,点击灯泡将自动列出引用表字段 。

代码列编辑

  • 通常需要在 DDL 语言中批量对数据类型,注释,列增加前缀、后缀进行编辑。

  • Mac 按住 ⇧ + ⌥ + Click ,Windows 按住 Shift + Alt + Click

局部代码调试分析

  • 支持多段 SQL 调试运行。

  • 选中某一个分段代码,即可对其运行、格式化、解析等操作。

编辑器右下角的全屏图标alt点击图标,支持全屏代码开发。

3.4 导航栏功能区解析

注意

任务被模板使用后,格式化、表管理、执行引擎选择功能将不支持使用。

功能名称描述
格式化依据在 个性化设置 中的SQL格式化风格的设置,格式化书写的代码,使其语法结构看起来简洁明了。
解析解析检查书写的 SQL 代码的语法和语义正确性,运行前检查语法错误信息,防止运行出错。

任务模板

您可以选择是否通过 任务模板 方式,便捷快速的复用代码模板逻辑,在弹窗中选择 EMR HSQL 任务模板,并选择相应的版本号,输入替换的参数即可完成复用。

注意

  • 使用任务模板时,界面编辑器不支持再次编辑,若当前任务模板代码,不符合您当前业务场景逻辑,您可通过修改或新建任务模板,形成新版本的任务模板,来实现不同业务场景的复用。

  • 修改模板时,需注意其他任务引用情况,操作说明详见:任务模板

表管理若数据需要存入的表尚未创建,则编写完 SQL 语句后,点击 表管理 > 快速建表 ,可基于解析代码快速填充建表页面。
执行引擎目前支持 Spark、Hive。

3.5 任务产出数据登记

对于系统无法通过解析获取产出信息的任务,EMR 引擎支持手动登记其产出信息,以便后续维护任务数据血缘关系。
如果任务含有 Hive 表或者 HDFS 目录的写入操作,强烈建议填写。您填写的内容即为任务产出,支持填写多个。其他任务的依赖推荐会根据此处填写的 Hive 表或者 HDFS 目录进行推荐。
具体登记内容包括:

  • HDFS:该任务会写数据到 HDFS 目录,请填写 HDFS 路径名,路径名可以使用变量。

  • Hive:该任务会写数据到 Hive 表,请填写Hive 库、表名、分区名,分区内容可以使用变量。

  • 其他:该任务不写数据到 Hive 表或 HDFS 目录。

3.6 调度设置

右侧导航栏中,进入 调度配置 界面,您可以在此设置 调度属性、依赖 等信息,详细参数设置详见:调度设置

3.7 查询控制台

3.7.1 调试任务

代码逻辑和参数配置完成后,您可以在界面进行调试操作。
编辑器上方,点击 保存 按钮后,再点击 调试 按钮,开始运行任务。

3.7.2 调试记录

调试任务开始运行后,可在下方查看调试记录,您也可以查看任务的历史运行记录,包括状态、业务日期、开始时间、结束时间、耗时、提交人等。点击操作列的 查看 按钮,可以查看以下详情内容:

  • 数据结果:运行代码查询结果。

  • 概览:查看运行结果的代码。

  • 日志:查看运行详情,可下载日志。

3.7.3 查询结果Excel展示

一段代码执行完成后,会展现查询结果,在整个结果页中用了类似 Excel 功能,无需跑多段代码就可对数据进行操作和分析,以增强代码逻辑的改进。
功能描述如下:

功能说明
单列字段搜索对单个字段进行模糊和精确查找。
升降序排列数据排序功能。
隐藏列只显示需要操作的列数据。
复制该行鼠标移动到想要复制的具体某条数据,点击 复制该行,即完成复制整行操作。
复制该列鼠标移动到想要复制的具体某条数据,点击 复制该列,即完成复制整列操作。
复制选中鼠标圈选需要复制的数据,点击 复制选中,即完成复制选中的数据。
全局搜索在整个工作表中查找数据。

下载

  • 项目控制台 > 配置信息 > 数据安全设置 > 查询结果勾选 允许下载 时,才支持下载结果页数据。

  • 因结果页界面预览数据上限为 1000,以及项目数据安全设置均存在限制,查询结果显示数据可能小于实际数据量。建议按如下处理方式:
    a. 前往 项目控制台,调整项目数据安全设置上限,上限 1 万行。

    b. 查询结果区域点击 下载 按钮,下载完整数据至本地查看。

操作详见:新建项目

3.7.4 查询优化建议

点击 概览 ,可以查看错误关键信息,无需通过翻阅日志查找。

4 提交任务

调试任务成功后,点击上方工具栏中的 提交上线 按钮,在 提交上线 对话框中,选择 回溯数据、监控设置、提交设置 等参数。 提交上线参数设置,详见:数据开发流程引导---离线任务提交发布