使用 Dataworks 实现 AnalyticDB PostgreSQL版上的 ETL 作业调度

本文涉及的产品
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: DataWorks作为阿里云上广受欢迎的大数据开发调度服务,最近加入了对于AnalyticDB PostgreSQL版(原HybridDB for PostgreSQL,简称ADB PG版)的支持,意味着所有ADB PG版的客户可以获得任务开发、任务依赖关系管理、任务调度、任务运维.

DataWorks作为阿里云上广受欢迎的大数据开发调度服务,最近加入了对于AnalyticDB PostgreSQL(原HybridDB for PostgreSQL,简称ADB PG版)的支持,意味着所有ADB PG版的客户可以获得任务开发、任务依赖关系管理、任务调度、任务运维等等全方位强大的能力,进一步增强ADB PG版的ETL能力,今天就给大家介绍一下如何使用DataWorks来调度ADB PG版的脚本任务。

ADB PG数据准备

为了演示如何在DataWorks上调度ADB PG版的任务,我们后面会用到一些测试数据,这里我们用著名的TPCH的测试数据集, 这仅仅是用来测试。数据已经导入ADB PG版,具体导入步骤,可以参考ADB PG版的导入文档。

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

任务一: 我们从orders表清洗出已经完成的订单: o_orderstatus = 'F' , 并写入 finished_orders 表

任务二: 再从 finished_orders 表里面找出总价大于10000的订单: o_totalprice > 10000, 并写入 high_value_finished_orders 表

在DataWorks创建ADB PG版任务

在开通 DataWorks+ADB PG版 的调用功能后,我们可以在DataWorks数据开发IDE中创建AADB PG版任务,如下图:

244f7863f7bbbd4266c955d80808bc2945f80f59

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

f62e70e265870b05fd33cf905bde7811ea1ffcee

刚进来时候没有数据源,需要点击“新建数据源”

ffcc3dfd482b8fe59af6309a9c314c66e0c67428

选择“连接串模式”

69d56dbfa3a1eb2daceedaeed42d55d7ec8d1322

填写必要的信息后点击“完成”。

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

05bff6e25c9839b3656723451ea527f8c9c26c11

具体配置如下

b4160244930980e695ff2f52144423efdd926433

** 这里需要注意一下,工作空间配置只有工作空间管理员才有权限

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

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

如下图

3e0bd690a7e7e7aa3022b8f182ec9688a86f2b94

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

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

配置任务依赖

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

751e5b70d45894bd65b442c8fa58b888e5512947

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

584aa42ecfc4e740fddad1e75b608e1125a5aead

如果自动解析不到,可以手动指定上游依赖节点

bfc80cf8ecdff68db5fce5c1a601a00fb97bf8bf

任务发布

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

d37672ae2e75a5d609b39cf10a5c560def450b52

在发布列表页面可以查看我们刚刚的发布是否成功:

085472f4192f119398a345bbc08c46b66273b1a7

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

700a5e83d9b0b6805b21441ad235384c8c06ca2b

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
一站式大数据开发治理平台DataWorks初级课程
DataWorks 从 2009 年开始,十ー年里一直支持阿里巴巴集团内部数据中台的建设,2019 年双 11 稳定支撑每日千万级的任务调度。每天阿里巴巴内部有数万名数据和算法工程师正在使用DataWorks,承了阿里巴巴 99%的据业务构建。本课程主要介绍了阿里巴巴大数据技术发展历程与 DataWorks 几大模块的基本能力。 课程目标  通过讲师的详细讲解与实际演示,学员可以一边学习一边进行实际操作,可以深入了解DataWorks各大模块的使用方式和具体功能,让学员对DataWorks数据集成、开发、分析、运维、安全、治理等方面有深刻的了解,加深对阿里云大数据产品体系的理解与认识。 适合人群  企业数据仓库开发人员  大数据平台开发人员  数据分析师  大数据运维人员  对于大数据平台、数据中台产品感兴趣的开发者
目录
相关文章
|
4月前
|
运维 DataWorks 安全
DataWorks产品使用合集之任务日志中显示等待gateway调度资源,该如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
存储 运维 Kubernetes
实时数仓Hologres提升问题之调度性能如何解决
Hologres可以支持的最大节点规模是多少?
47 1
|
4月前
|
SQL DataWorks 安全
DataWorks产品使用合集之如何实现分钟级调度
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
SQL DataWorks 安全
DataWorks产品使用合集之调度资源组与集成资源内部的实例如何进行共用
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
分布式计算 DataWorks 安全
DataWorks产品使用合集之怎么配置跨业务流程的调度依赖
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
数据采集 DataWorks 监控
DataWorks产品使用合集之如何修改调度时区的地域
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
5月前
|
Web App开发 DataWorks 安全
DataWorks产品使用合集之配置每季的第一天作为调度参数,该怎么实现
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
5月前
|
SQL DataWorks 安全
DataWorks产品使用合集之是否支持调度StarRocks的SQL任务
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
分布式计算 DataWorks 安全
DataWorks产品使用合集之调度任务时怎么指定时间函数格式
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
数据采集 DataWorks 监控
DataWorks产品使用合集之如何实现跨工作空间的依赖调度
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。

热门文章

最新文章

  • 1
    DataWorks操作报错合集之DataWorks任务异常 报错: GET_GROUP_SLOT_EXCEPTION 该怎么处理
    112
  • 2
    DataWorks操作报错合集之DataWorksUDF 报错:evaluate for user defined function xxx cannot be loaded from any resources,该怎么处理
    109
  • 3
    DataWorks操作报错合集之在DataWorks中,任务流在调度时间到达时停止运行,是什么原因导致的
    106
  • 4
    DataWorks操作报错合集之DataWorks ODPS数据同步后,timesramp遇到时区问题,解决方法是什么
    95
  • 5
    DataWorks操作报错合集之DataWorks配置参数在开发环境进行调度,参数解析不出来,收到了 "Table does not exist" 的错误,该怎么处理
    97
  • 6
    DataWorks操作报错合集之DataWorks中udf开发完后,本地和在MaxCompute的工作区可以执行函数查询,但是在datawork里报错FAILED: ODPS-0130071:[2,5],是什么原因
    111
  • 7
    DataWorks操作报错合集之DataWorks提交失败: 提交节点的源码内容到TSP(代码库)失败:"skynet_packageid is null,该怎么解决
    119
  • 8
    DataWorks操作报错合集之DataWorks在同步mysql时报错Code:[Framework-02],mysql里面有个json类型字段,是什么原因导致的
    154
  • 9
    DataWorks操作报错合集之DataWorks集成实例绑定到同一个vpc下面,也添加了RDS的IP白名单报错:数据源配置有误,请检查,该怎么处理
    88
  • 10
    DataWorks操作报错合集之在 DataWorks 中运行了一个 Hologres 表的任务并完成了执行,但是在 Hologres 表中没有看到数据,该怎么解决
    126
  • 相关产品

  • 云原生数据仓库 AnalyticDB PostgreSQL版
  • 云数据库 RDS PostgreSQL 版