数据湖分析(Data Lake Analytics,DLA)是无服务器(Serverless)化的云上交互式查询分析服务。它支持在不同数据源中存储的数据进行查询和分析。本文将介绍如何使用DMS的任务编排模式对DLA上的计算任务进行编排和调度。
需要一个阿里云的DLA实例(如果没有,请先创建)。同时需要在DLA实例中创建一个database(schema)以及在该database下创建两个table。创建脚本如下:
-- 创建
CREATE DATABASE IF NOT EXISTS `demo_schema`
WITH DBPROPERTIES (
LOCATION = 'oss://dbs-backup-1673826650152166-cn-beijing/dla_demo/',
catalog = 'oss',
tags = 'sourceType=OSS_JSON'
);
-- 创建table demo1和demo2
CREATE EXTERNAL TABLE IF NOT EXISTS demo1
(
id int,
v int
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '|'
STORED AS TEXTFILE
LOCATION 'oss://dbs-backup-1673826650152166-cn-beijing/dla_demo/';
CREATE EXTERNAL TABLE IF NOT EXISTS demo2
(
id int,
v int
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '|'
STORED AS TEXTFILE
LOCATION 'oss://dbs-backup-1673826650152166-cn-beijing/dla_demo/';
也可以通过DLA的向导创建database(schema)以及table,具体参见:DLA建表向导。
如果已经开通DMS,可以直接访问DMS控制台。
如果没有,请根据下面的步骤进行开通:
访问DMS应用,然后点击“立即购买”。
然后选择好付费模式、管控模式以及使用的实例数以后,点击立即购买(管控模式介绍)。DMS开通成功以后,可以开始后续的步骤。
DMS对接DLA分为两个步骤,新增数据库和编排任务流。下面的章节将一一介绍。
1.进入DMS控制台,点击左上角的新增实例/批量录入右边的“+”,然后点击新增实例
2.从新增实例界面中选择DLA-数据湖分析
3.然后在新增实例界面中输入DLA实例的相关信息:
4.点击测试链接按钮,验证输入的DLA信息是否正确
5.在编辑实例界面的高级信息中,编辑实例名称为DLA-测试实例,然后提交。
DLA实例加入以后,就可以编排一个任务流,并配置调度周期。
首先需要打开编排任务流的页面。点击顶部导航栏中的数据工厂,然后选择任务编排。
点击左侧导航栏中的开发空间,进入任务编排界面。
进入任务编排界面以后,点击任务编排右边的“+”,然后在新建任务流界面中,输入任务流名称:dla_demo_taskflow,然后确认。
在当前界面中,通过拖拽DLA任务创建SQL任务。然后在每个SQL任务的内容设置中编写SQL,同时将数据库选择为demo_schema(该数据库在DLA中已经创建)。
本文档中,配置两个SQL任务,一个用于准备数据,一个做聚合操作。数据准备的SQL任务内容设置如下:
insert into demo1 values(1, 1);
insert into demo1 values(1, 19);
insert into demo1 values(2, 12);
insert into demo1 values(3, 2);
insert into demo1 values(3, 4);
insert into demo1 values(4, 67);
聚合操作的SQL任务内容设置如下:
insert into demo2
select id, max(v) from demo1 group by id;
然后在节点名称中,把数据准备SQL的任务名改为Preparation,把聚合操作SQL的任务名改为Aggregation。
最后通过点击Preparation任务的下边框连接点,引出一个到达Aggregation任务的带箭头直线,关联Preparation任务和Aggregation任务。
编排好的任务流,可以通过试运行以及调度配置设置周期运行策略来运行。
点击当前界面左上角的试运行,运行编排好的任务流。
在左导航栏的运维中心中可以看到任务流的运行结果。
点击左导航栏的开发空间回到任务编排界面,在空白处点击鼠标,右侧出现调度配置界面。
然后在调配配置界面中开启调度,选择调度类型为周期调度,选择调度周期以及输入具体时间。
这样,周期性调度的任务流就完成了,到了具体时间时,该任务流就会被自动触发,运行结果可以在运维中心中查看。
本文档简要介绍了DMS任务编排如何对接DLA的步骤,包括开通DMS,添加DLA实例,以及创建、编排、运行、管理、调度任务流。使用DMS任务流在DLA上做周期性数据分析可获得如下好处:
关于DMS更多的详细信息和功能,请参考:DMS文档。
在文档使用中是否遇到以下问题
更多建议
匿名提交