【实验】阿里云大数据助理工程师认证(ACA)- ACA认证配套实验-04-DataIDE基本操作

一、 实验概述

DataWorks(数据工场,原大数据开发套件DataIDE)是阿里云数加重要的PaaS平台产品,提供数据集成、数据开发、数据管理、数据治理、数据分享等全方位的产品服务,一站式开发管理的界面,帮助企业专注于数据价值的挖掘和探索。

DataWorks基于MaxCompute作为核心的计算、存储引擎,提供了海量数据的离线加工分析、数据挖掘的能力。

通过DataWorks,可对数据进行传输、转换、集成的操作,从不同的数据存储引入数据,对数据进行转化和开发,最后将数据输送到其他数据系统。
二、实验目的
通过创建项目、同步数据、编写SQL程序、配置调度任务、运维监控等环节,实现完整的数据处理流程。

三、 实验场景
模拟Mysql数据库为生产系统,实现从生产系统抽取数据到MaxCompute中,进行数据自动化分析处理。

第 1 章:实验准备

1.1 申请阿里云资源

在弹出的左侧栏中,点击 创建资源 按钮,开始创建实验资源。
资源创建过程需要1-3分钟。完成实验资源的创建后,用户可以通过 实验资源 查看实验中所需的资源信息,例如:阿里云账号等。

1.2 资源环境准备

登录云中沙箱,进入实验,点击“实验资源”,查看所需具体资源。

本实验需开通资源为MaxCompute和RDS。
在这里插入图片描述
点击“创建资源”,即可进入实验环境。(由于实验环境一旦开始创建则进入计时阶段,建议学员先基本了解实验具体的步骤、目的,真正开始做实验时再进行创建)
在这里插入图片描述
创建资源需要几分钟时间,请耐心等候……
说明:

企业别名:即主账号ID;

子用户名称和子用户密码:登录实验环境以及配置MaxCompute 数据源时需要;

AKID和AK Secret:系统为本用户分配的登录验证密钥信息,在配置客户端及数据源时应用;

控制台url:登录实验环境的地址;

1.3 进入实验环境

步骤一:登录管理控制台

资源开通后,点击左侧菜单栏中“控制台url”链接,进入用户登录页面。
在这里插入图片描述
输入资源提供的“子用户名称”和“子用户密码”登录。
登陆成功后,进入管理控制台页面:
步骤二:打开“DataWorks”

展开左侧菜单,点击“产品与服务”,在“大数据(数加)”产品列表中,点击“DataWorks”。
在这里插入图片描述
步骤三:创建项目

创建项目需要管理员权限,沙箱实验环境默认创建完项目:
在这里插入图片描述
步骤四:进入数据开发

选中项目,点击“进入数据开发”,则进入“数据开发”环境。
在这里插入图片描述

第 2 章:实验内容

2.2 数据同步

本小节实验目的:实现从MySQL数据源同步数据到MaxCompute中。

在DataWorks中,通常使用数据集成功能,将您的系统中产生的业务数据定期导入到工作区,通过SQL任务的计算后,再将计算结果定期导出到您指定的数据源中,以便进一步展示或运行使用。
在这里插入图片描述
2.1.1 新建RDS数据库
1)创建实例

云中沙箱实验环境已创建完成RDS数据库实例。登录管理控制台,在“产品与服务”列表中,选择“云数据库RDS版”。
在这里插入图片描述
选择地域,查看实例。(地域选择请查看实验资源中开通的地域。)
在这里插入图片描述
点击实例后面的“管理”,进入管理页面。
在这里插入图片描述
2)创建数据库

打开左侧菜单栏中的“数据库管理”菜单,点击“创建数据库”。
在这里插入图片描述
输入数据库名称,选择字符集,然后点击创建。
在这里插入图片描述
点击“刷新”按钮,查看状态。数据库创建成功后,状态显示“运行中”。
3)创建账号

打开左侧菜单栏的“账号管理”,点击“创建账号”,跳转到账号创建页面。
在这里插入图片描述
账号类型选择“普通账号”,设置账号密码,并给授权数据库,然后点击确定。
在这里插入图片描述
账号创建成功后,用户账号状态显示“激活”。
在这里插入图片描述
4)登录数据库

点击页面上方的“登录数据库”按钮,跳转到数据库登录页面。
在这里插入图片描述
输入账号密码,点击登录。
在这里插入图片描述
登录成功后,默认显示如下页面。即可进行相关数据库操作。
在这里插入图片描述
2.1.2 数据上传到RDS
1)新建表

登录RDS库,在顶部“SQL操作”菜单中,打开“SQL窗口”。
在这里插入图片描述
创建表t_dml_data,用于模拟存储业务系统的生产数据。

输入SQL建表语句,点击“执行”,成功后刷新左侧列表,窗口可显示刚建的表。
在这里插入图片描述
建表语句如下:

create table IF NOT EXISTS t_dml_data ( detail_id bigint, sale_date datetime, province VARCHAR (20), city VARCHAR (20), product_id bigint, cnt bigint, amt double, PRIMARY KEY (detail_id) );
2)上传本地数据

在顶部“数据方案”菜单栏中,选择“导入”。
在这里插入图片描述
点击“新增任务”,选择数据文件类型、数据表名称、数据文件等信息,然后点击“开始”,执行数据导入任务。
在这里插入图片描述
如下图,导入任务完成后,会显示数据导入详情。
在这里插入图片描述
关闭详情,可看到该任务。
在这里插入图片描述
点击左侧列表中的刷新按钮,可看到表,右键选择“打开表”,可看到表中的数据信息。
在这里插入图片描述
2.1.3 ODPS中添加RDS数据源
打开数据开发页面,点击“DataWorks”图标, 在下拉列表中选择“数据集成”。
在这里插入图片描述
点击左侧菜单中的 “数据源”,然后点击右上角的 “新增数据源”,如下图所示
在这里插入图片描述
弹出 “新增数据源”对话框,选择关系型数据库MySQL。
在这里插入图片描述
在”新增MySQL数据源”弹出框中填写相关配置项;

◆ 数据源名称:自定义

◆ RDS实例ID: 查看实验资源中的“实例”信息

◆ RDS实例主账号ID: 查看实验资源中的“企业别名”信息

◆ 数据库名:前面章节创建的数据库名称

◆ 用户名:登录数据库的用户名

◆ 密码:登录数据库的密码
在这里插入图片描述
点击“测试连通性”,数据库连接测试成功后,点击“完成”。如下图所示:
在这里插入图片描述
数据源自动添加到数据源列表中。
在这里插入图片描述
2.1.4 同步RDS数据到ODPS
1)新建业务流程

打开数据开发页面。展开左侧菜单,点击“数据开发”,然后新建“业务流程”。
在这里插入图片描述
弹出“新建业务流程”对话框,输入业务名称。
在这里插入图片描述
2)新建数据同步节点

在数据集成中点击“离线同步”。
在这里插入图片描述
弹出“新建节点”对话框,输入节点名称,点击“提交”。
在这里插入图片描述
3)双击节点,进行数据同步设置。

①选择数据源

设置数据来源,选择MySQL库,rds_lab数据源,t_dml_data表。

设置数据去向,选择ODPS库,odps_first数据源,点击一键生成目标表。

填写目标表的分区信息。本示例中,分区为变量${sdate}
在这里插入图片描述
一键生成目标表,注意修改SQL语句的表名,然后点击“新建表”。
在这里插入图片描述
②字段映射

源表和目标表进行字段映射。选择“同名映射”。
在这里插入图片描述
③设置通道控制信息。
在这里插入图片描述
④调度配置

在右侧“参数配置”中给变量赋值:sdate=2017,设置调度周期和时间。
在这里插入图片描述
在“调度依赖中”,点击“使用工作空间根节点”,点击“保存”。
在这里插入图片描述
4)同步数据

设置完成后,“提交”业务流程。
在这里插入图片描述
选择要提交的“节点名称”,填写“备注”,然后点击“提交”。
在这里插入图片描述
提交成功后,显示如图所示信息:
在这里插入图片描述
点击“运行”,执行数据同步任务
在这里插入图片描述
当数据同步完成后,节点状态图表变成如下图所示:
在这里插入图片描述
5)查看同步结果

展开左侧菜单,点击“公共表”,搜索表名,点击“数据预览”可预览表的数据。
在这里插入图片描述

2.3 新建ODPS SQL

本小节目的是创建目标表t_dml_result,用于存储数据分析后产生的结果。

进入数据开发页面,点击“临时查询”,右键新建节点ODPS SQL;
在这里插入图片描述
输入节点名称,点击“提交”。
在这里插入图片描述
双击节点,输入建表语句,点击“运行”。
在这里插入图片描述
建表语句如下:

create table IF NOT EXISTS t_dml_result ( province string, product_id bigint, cnt bigint ) partitioned by (sale_date string);
创建表成功后,展开左侧菜单,点击“公共表”,搜索表名,查看表信息:
在这里插入图片描述

2.4 新建业务流程

1)新建业务流程

进入数据开发页面,展开左侧菜单,点击“数据开发”,选择“新建业务流程”;
在这里插入图片描述
输入业务名称,如图所示:
在这里插入图片描述
2) 新建虚拟节点

打开业务流程,在“通用”中点击“虚拟节点”,输入节点名后点击“提交”。
在这里插入图片描述
3) 新建数据节点

在“MaxCompute”中,点击“ODPS SQL”,输入节点名称后点击“提交”。
在这里插入图片描述
在这里插入图片描述
4) 编辑数据节点

双击数据节点,编辑SQL语句, 点击“保存”。
在这里插入图片描述
本SQL实现按省份和产品维度,对每天的销售量进行汇总。代码如下:

INSERT OVERWRITE TABLE t_dml_result PARTITION(sale_date) SELECT province ,product_id ,SUM(cnt) AS cnt ,’ s d a t e a s s a l e d a t e F R O M t d m l d a t a W H E R E d s = 201 7 A N D S U B S T R ( s a l e d a t e , 1 , 10 ) = {sdate}'as sale_date FROM t_dml_data WHERE ds = '2017' AND SUBSTR(sale_date,1,10) = ' {sdate}’ GROUP BY product_id ,province;
打开右侧“调度配置”,点击参数配置,设置参数:sdate=$[yyyy-mm-dd-1],点击“保存”。
在这里插入图片描述
5) 设置依赖关系

双击虚拟节点,展开右侧的“调度配置”,在“调度依赖”中选择依赖的上游节点,本示例中点击“使用工作空间根节点”。
在这里插入图片描述
节点间通过拖拽连线形成上下游依赖关系。
在这里插入图片描述
6)设置调度属性

双击数据节点,点击右侧“调度配置”,设置“时间属性”。此处可以配置调度的生效日期,调度周期,运行时间,是否依赖上一周期等,然后点击“保存”。
在这里插入图片描述
本示例的任务是对每天的销售量进行汇总,故而设置成调度每天运行一次。

在跨周期依赖中,可以设置自依赖。本示例选择“不依赖上一周期”,即无论上一周期任务是否完成,本周期都会正常运行。

7) 提交业务流程

设置完成后,点击“提交”业务流程。
在这里插入图片描述
弹出提交选项卡,选择需要提交的节点,输入备注信息,然后点击“提交”。
在这里插入图片描述
8) 测试业务流程

点击“运行”业务流程,如果有报错,需要对代码进行调试。
在这里插入图片描述
运行成功后如图所示:右键单击节点,可查看节点运行日志。
在这里插入图片描述
运行日志如图所示:
在这里插入图片描述

2.5 任务运维

2.4.1 打开运维中心
运维中心是对任务和实例展示/操作的地方。有两种方式可进入运维中心。

方式一:在数据开发页面,点击上方的“前往运维”按钮进入运维中心。
在这里插入图片描述
方式二:点击左上角的“DataWorks”图标,在下拉列表中选择“运维中心”。
在这里插入图片描述
运维中心包括运维大屏、任务列表、任务运维和智能监控四大模块。
在这里插入图片描述
2.4.2 任务列表
任务列表分周期任务和手动任务。

周期任务:调度系统按照调度配置自动定时执行的任务。

手动任务:新建任务时,调度类型选择手动任务后,提交到调度系统的任务。

选择左侧菜单栏中的“周期任务”,查看已提交的周期任务。选中任务,点击鼠标右键,可执行相应操作。

如下图所示,展开子节点
在这里插入图片描述
点击“查看更多详情”,即可弹出任务属性、运行日志、操作日志、代码等。
在这里插入图片描述
详情说明:

属性:此节点的属性介绍,包括调度类型、状态、时间等信息。

运行日志:此节点在运行后或运行中的日志信息。

操作日志:对节点的操作日志,包括节点变更、补数据等操作的记录。

代码:节点编辑的代码。
在这里插入图片描述
选择“补数据”,即可对当前节点补历史数据,可选择包含本节点、包含本节点和下游节点。
在这里插入图片描述
注意:源表t_dml_data中数据时间为2015年5月,此处的业务日期请选择该时间段方可运行出结果。如图所示,设置业务日期为2015-05-01至2015-05-03.然后点击“确定”,则会按天生成3个实例。

在这里插入图片描述
在这里插入图片描述
说明:实例越多,消耗资源越多,花费时间越长,建议实验中此处周期选择短一点。在实际生产环境中,依项目具体情况而定。

2.4.3 任务运维
补数据实例创建成功后,在“任务运维”列表下的“补数据实例”中可查看。

补数据实例是对周期任务进行补数据时产生的实例,可对补数据任务实例进行运维管理,如查看运行状态,对任务实例进行终止、重跑、解冻等操作。
在这里插入图片描述
任务正在运行时,点击刷新按钮可刷新任务运行状态。直到所有实例都运行成功。

实例状态说明:运行成功image.png 、未运行image.png 、运行失败image.png 、正在运行image.png 、等待image.png 、冻结image.png
在这里插入图片描述
任意点击某个实例,右侧显示节点信息。
右键单击节点,可查看更多操作。

操作说明:

展开父节点/子节点:当一个工作流有3个节点及以上时,运维中心展示任务时会自动隐藏节点,用户可通过展开父子层级,来看到更多的节点依赖关系,层级越大,展示越全面。

查看运行日志:进入运维日志界面,可以在运维日志中看到logview等信息。

查看代码:查看当前节点的代码。

编辑节点:单击后可进入节点编辑页面,对节点内容进行修改。

查看血缘:查看此节点的血缘关系图。

终止运行:如果实例在运行中,可单击终止运行,停止任务,只对本次实例有效。

重跑:重新调度此实例。

重跑下游:当前节点的下游重跑实例,如果存在多个下游实例,将会全部重跑。

置成功:将当前节点状态改为成功。

暂停(冻结):将当前节点置为暂停(冻结)状态,并停止调度。当节点状态为暂停时,在节点名称后会出现 图标。

恢复(解冻): 将暂停(冻结)的节点恢复调度。
在这里插入图片描述
如图所示,点击“查看运行日志”:
在这里插入图片描述
2.4.4 智能监控
智能监控是DataWorks(数据工场)任务运行的监控及分析系统。根据监控规则和任务运行情况,智能监控决策是否报警、何时报警、如何报警以及给谁报警。

下面将演示如何在规则管理页面自定义报警规则。

1) 单击“规则管理”页面右侧的“新建自定义规则”。
在这里插入图片描述
2) 在新建自定义规则弹窗内,输入规则名称、规则对象、触发方式、报警行为等参数,并单击确认生成规则。

各配置项说明如下:

对象类型:控制监控的粒度,可以选择以基线、项目或任务节点作为监控对象。

触发条件:可设置为完成、未完成、出错或超时。

最小报警间隔:两次报警之间的时间间隔。

最大报警次数:报警的最大次数,超过这个次数后无论监控对象状态如何,都不再产生报警。

接收人:报警的对象,可设置为责任人、值班表或其他接收人。

免打扰时间:在该时间段内不会发送报警
在这里插入图片描述
3)完成上述设置后,单击规则管理页面,点击详情可查看规则的具体内容
在这里插入图片描述
触发条件说明:

出错:任务一旦出错,则报警给设置的报警对象。同时推送详细的任务出错信息。

完成:一旦设置的对象上所有的任务完成,则会发送报警。

未完成:例如设置某条基线在10:00完成,则10点只要基线上有一个任务没有完成,则会发送报警,同时推送没有完成的任务列表给您。

超时:一旦设置的对象上有被监控的任务在指定时间内未完成,则会发送报警。

4)查询报警信息

点击左侧菜单列表的“报警信息”,通过规则ID/名称或报警时间、接收人,可搜索查询到具体的报警信息。
在这里插入图片描述

2.6 数据管理

数据管理模块可进行组织内全局数据视图的查看、分权管理、元数据信息详情、数据生命周期管理、数据表/资源/函数权限管理审批等操作。

点击左上方图标DataWorks,切换到 数据管理页面。
在这里插入图片描述
数据表管理模块对数据表进行分类,并为各分类提供不同的表信息以及表操作管理功能,以便管理自己的数据表。

如下图所示,点击“我管理的表”,即可查看实验中生成的表。
在这里插入图片描述
在数据表管理中,可对表进行生命周期设置、表管理(包括修改表的类目、描述、字段、分区等)、表隐藏/取消隐藏和表删除等操作。

如下图所示,查看表的字段信息:
在这里插入图片描述
如下图所示,查看表的分区信息:
在这里插入图片描述
如下图所示,预览表中数据:

第 3 章:思考与讨论

3.1 思考与讨论

在实际场景中,作为生产系统,数据是源源不断产生的。

那么在本实验中,要把新产生的数据从RDS同步到ODPS进行大数据处理,需如何改进呢?

参考答案如下:

1、“IDE同步”业务流程配置调度信息;

2、源表数据抽取时,根据时间设置“数据过滤”条件;

3、目标表的分区,由常量改为变量;

4、“IDE开发”中where条件加分区,避免全表扫描。

4.1 课后任务

1、创建一个按天调度的同步任务;

2、将ODPS中生成的结果表同步到RDS中。

猜你喜欢

转载自blog.csdn.net/wyn_365/article/details/107283345
今日推荐