DataWorks作为阿里云上广受欢迎的大数据开发调度服务,最近加入了对于AnalyticDB的支持,意味着所有的AnalyticDB客户可以获得任务开发、任务依赖关系管理、任务调度、任务运维等等全方位强大的能力,现在就给大家仔细介绍下如何使用DataWorks来调度AnalyticDB任务。

开通AnalyticDB

进入阿里云分析型数据库 MySQL版产品详情页,点击免费试用。最近上线了15天免费试用活动,需要首先填写申请表单,审批通过后即可享受免费试用AnalyticDB活动。进入购买页面,选择好地域、可用区、ECU类型、ECU数量和数据库名,点击立即购买,稍等几分钟时间就可以开通AnalyticDB实例。

开通DataWorks

开通完AnalyticDB服务后,紧接着要开通DataWorks。选择好region后点击下一步。

填写工作空间名称,注意模式要改成“标准模式”,创建工作空间。

AnalyticDB中表和数据准备

为了演示如何在DataWorks上调度AnalyticDB的任务,我们后面会用到一些测试数据,这里我们用著名的TPCH的测试数据集中的ORDERS表, 数据已经提前存入表中。
前面开通成功后,我们就可以在AnalyticDB中找到数据库,登陆数据库后,创建ORDERS表,如下:

CREATE TABLE ads_dla_test.orders (o_orderkey int COMMENT '',o_custkey int COMMENT '',o_orderstatus varchar COMMENT '',o_totalprice double COMMENT '',o_orderdate date COMMENT '',o_orderpriority varchar COMMENT '',o_clerk varchar COMMENT '',o_shippriority int COMMENT '',o_comment varchar COMMENT '',PRIMARY KEY (O_ORDERKEY,O_CUSTKEY)
)
PARTITION BY HASH KEY (O_ORDERKEY) PARTITION NUM 32
TABLEGROUP tpch_50x_group
OPTIONS (UPDATETYPE='realtime')
COMMENT ''CREATE TABLE ads_dla_test.finished_orders (o_orderkey int COMMENT '',o_totalprice double COMMENT '',PRIMARY KEY (O_ORDERKEY)
)
PARTITION BY HASH KEY (O_ORDERKEY) PARTITION NUM 32
TABLEGROUP tpch_50x_group
OPTIONS (UPDATETYPE='realtime')
COMMENT ''CREATE TABLE ads_dla_test.high_value_finished_orders (o_orderkey int COMMENT '',o_totalprice double COMMENT '',PRIMARY KEY (O_ORDERKEY)
)
PARTITION BY HASH KEY (O_ORDERKEY) PARTITION NUM 32
TABLEGROUP tpch_50x_group
OPTIONS (UPDATETYPE='realtime')
COMMENT ''

任务调度其中一个重要的功能是任务之间的依赖,为了演示这个功能,我们这里会在DataWorks里面创建两个AnalyticDB任务, 我们的表、任务之间的关系如下图:

  • 任务一: 我们从orders表清洗出已经完成的订单: o_orderstatus = 'F' , 并写入 finished_orders 表。
  • 任务二: 再从 finished_orders 表里面找出总价大于10000的订单: o_totalprice > 10000, 并写入 high_value_finished_orders 表。

在 DataWorks 上创建AnalyticDB任务

在开通了 DataWorks + AnalyticDB 的功能后,我们可以在DataWorks的数据开发IDE里面创建AnalyticDB的任务了,如下图:

我们把第一个任务命名为: finished_orders , 点击确定会进入一个SQL编辑的页面,要写AnalyticDB SQL一定要告诉DataWorks我们写的SQL运行在哪个服务上,这个在DataWorks里面被包装成了"数据源"的概念。

刚进来的时候没有数据源,点击新建数据源

填写必要的信息点击确定完成。

DataWorks为了安全的考虑,对可以连接的服务进行了安全控制,因此我们需要把我们要连的AnalyticDB数据库的地址+端口加到白名单里面去,这个配置是在DataWorks工作空间的配置里面:

具体配置如下(需要换成你实际的域名+端口):

做了这么多之后,我们终于可以在编辑页面看到AnalyticDB的数据源了,下面我们在 finished_orders的任务里面填入如下SQL, 并点击执行:

use dataworks_demo;
insert into finished_orders
select O_ORDERKEY, O_TOTALPRICE
from orders
where O_ORDERSTATUS = 'F';

如下图:

重复上述步骤,我们创建第二个任务: high_value_finished_orders

use dataworks_demo;
insert into high_value_finished_orders
select * from finished_orders
where O_TOTALPRICE > 10000;

配置任务依赖

单个任务单次运行没什么太大意思,任务调度的核心在于多个任务按照指定的依赖关系在指定的时间进行运行,下面我们让: task_finished_orders 在每天半夜2点开始运行:

high_value_finished_orders 在 finished_orders 成功运行之后再运行:

任务发布

任务配置好之后,就可以进行任务的发布、运维了。任务要发布首先必须提交:


提交之后,我们在待发布列表可以看到所有待发布的任务

选择我们刚刚提交的两个任务,我们就可以发布了。在发布列表页面可以查看我们刚刚的发布是否成功:

发布成功之后,我们就可以进入任务运维页面查看我们的任务,进行各种运维操作了。

总结

在这篇文章里面,我带大家一起体验了一下如何用DataWorks来开发、调度AnalyticDB的任务,有了这个能力之后大家可以更方便地进行每天任务的开发、运维了。

原文链接
本文为云栖社区原创内容,未经允许不得转载。

使用DataWorks来调度AnalyticDB任务相关推荐

  1. Data Lake Analytics: 使用DataWorks来调度DLA任务

    2019独角兽企业重金招聘Python工程师标准>>> DataWorks作为阿里云上广受欢迎的大数据开发调度服务,最近加入了对于Data Lake Analytics的支持,意味着 ...

  2. oracle 参数=gt;,解析gt参数

    python 函数参数的传递(参数带星号的说明) python中函数参数的传递是通过赋值来传递的.函数参数的使用又有俩个方面值得注意:1.函数参数是如何定义的 2.在调用函数的过程中参数是如何被解析 ...

  3. 双11实时物流订单实践

    简介:随着双11的开启,物流业也迎来了年度大考.2021年双11期间,递四方作为物流仓储服务方,布局仓库和分拣点超40+个,50w+平米作业场地,单日订单峰值达千万级别,海量购物订单由递四方配送到家, ...

  4. 浅谈MaxCompute资源规划管理及评估

    简介: 本文主要介绍如何进行MaxCompute存储资源和计算资源的评估及规划管理. 一.MaxCompute资源规划背景介绍 MaxCompute资源主要有两类:存储资源.计算资源(包含cpu和内存 ...

  5. 基于MaxCompute的数仓数据质量管理

    声明 本文中介绍的非功能性规范均为建议性规范,产品功能无强制,仅供指导. 参考文献 <大数据之路--阿里巴巴大数据实践>--阿里巴巴数据技术及产品部 著. 背景及目的 数据对一个企业来说已 ...

  6. 【大数据新手上路】“零基础”系列课程--MySQL 数据整库迁移到 MaxCompute

    随着公司业务的增多,云数据库 RDS 下的 MySQL 数据库的表越来越多,想要把它全部迁移到 MaxCompute 中进行计算分析,但又愁要配置太多次同步任务.如何能将大量的数据表一次性上传到 Ma ...

  7. 数仓建设(离线和实时)

    文档大纲: 一.数仓基本概念 1. 数据仓库架构 我们在谈数仓之前,为了让大家有直观的认识,先来谈数仓架构,"架构"是什么?这个问题从来就没有一个准确的答案.这里我们引用一段话:在 ...

  8. 什么是机器学习PAI

    机器学习PAI(Platform of Artificial Intelligence)是阿里云人工智能平台,提供一站式的机器学习解决方案.本文为您介绍什么是机器学习PAI. 什么是机器学习 机器学习 ...

  9. 50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 下

    文档大纲: 本文上半部分之前已经发过了,传送门:50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 上 此篇文章是整个文档的下半部分,将接着上半部分从第五章开始. 五.实时数仓建设核心 ...

最新文章

  1. 14岁清华本科新生免试直博!高校新生大数据陆续曝光,男女比例、年龄差距各异......
  2. python的全称_python名称空间介绍
  3. When.js 1.8.0 发布,Promises/A 的实现
  4. 深入探讨Container
  5. [HTB]“Heist”靶机渗透详细思路
  6. java的适配器的情形_Java设计模式之适配器模式(Adapter)
  7. ftp限制用户访问目录
  8. 如何制定个人理财计划_如何根据经济状况做个人投资理财计划?
  9. IEC61850——开山篇
  10. JavaScript代码模拟鼠标自动点击事件
  11. 计算机中桌面中不显示U盘图标,电脑桌面右下角不能显示u盘图标解决方法
  12. ROBOTSTUDIO学习
  13. 超微服务器安装Linux,超微服务器使用IPMI安装操作系统
  14. 小布老师oralce讲座笔记(六)
  15. 【h5白鹭引擎】如何快速开发一个小游戏
  16. matlab 工业相机 曝光时间_工业相机的曝光、曝光时间、快门、增益
  17. iphone html5音乐播放器,从界面到功能 五款iPhone音乐播放器年度横评
  18. java导出excel文件到服务器,javaexcel导出到远程服务器
  19. linux--Segfault详解
  20. 2k如何联网找不到服务器,NBA2K18无连接服务器怎么办 简单三步解决无法连接服务器问题...

热门文章

  1. 10个理由告诉你为何要学Java编程?
  2. wind 下装mysql,windows 下安装MySQL
  3. css鼠标变成小手_技巧篇:CSS高级技巧详解
  4. python turtle画房子详细解释_[宜配屋]听图阁
  5. mysql约束_Mysql约束条件
  6. 什么牌子的平板电脑好_平板电脑什么牌子好?带你一探年度最佳平板的奥秘
  7. leetcode 4 --- 寻找两个有序数组的中位数
  8. usb hid 调试软件_开源USB免驱固件升级软件分享
  9. python 多条件 选择 算法_浅析Python中的多条件排序实现
  10. 高校老师因发消息爱打“???”被学生投诉,被学校撤职后反手上述获赔13万...