开发者学堂课程【DataWorks一站式大数据开发治理平台精品课程:MaxCompute+DataWorks 最佳实践】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/81/detail/1249
MaxCompute+DataWorks 最佳实践(一)
1、首先用账号和密码登录阿里云的官网,在产品分类大数据类型下面找到dataworks。
2、点击帮助文档,可以在左侧的导航栏里面,在使用教程有一个 workshop,本节课所有的内容都可以在 workshop 上面看到。看的 workshop 的一个简介,会演示6个步骤,第一个步骤是今天实验的一个基本的环境准备的工作,环境准备好之后,就进入到数据的加工,首先是数据采集,有个数据的加工流程,加工好之后会对数据进行一个质量的监控配置,配置好监控的质量监控之后,会对之前加工的数据进行一个可视化的展现,这个地方会用到阿里云的另外一个产品叫做 quick BI,可视化展现之后,还会给演示一个 dataworks 的数据服务的功能,也就是可以在数据开发的类目下面找到数据服务,它主要是可以自动快速的生成API服务。
3、进入到环境准备的工作,环境准备要登录到阿里云官网里面,找到大数据计算服务 maxcompute 去开通基础的计算服务,立即购买,直接点按量付费就可以,因为实验数据都是放在了华东二的区域,所以选择华东二上海的区域,点击立即购买,这个账号已经买过了,所以直接前往控制台进行使用就好。
4、进入到 dataworks 控制台之后,可以看到常用的工作空间,为了实验重新创建一个新的工作空间,点击之后创建工作空间,首先选择 region 是华东二,基本信息,工作空间名称,可以根据实际情况来填写就模式 dataworks 可以分为简单模式和标准模式,二者的区别在于简单模式,它只有单一环境,开发和生产是放在一起的,而标准模式是将开发环境和生产环境相隔离开。实验就去选择一个标准模式。
5、选好了之后就点击下一步,dataworks 服务默认勾选上了,计算引擎今天选择maxcompute,选择按量付费,点击下一步,下一步之后来填写实例名称,跟项目名称保持一致就可以了,可以看到它分为开发环境和生产环境,开发环境它的后缀名称有一个 dv 的标志,把它填写好之后,再去点击创建工作空间就可以了。
6、在公共云文档里面,点击环境准备这一步已经做好了,接下来做数据采集的工作。数据来源于一个网站的数据,它分为两个部分,一张表里面是放的是网站的浏览日志,另外一个表里面放的数据是访问网站的用户的基本信息,本次做的实验任务就是把这两个表的数据进行一个整合,最后做一个用户的画像出来,创建成功之后,在工作空间列表里面找到工作空间,进入到数据集成的模式中。可以看到这就是dataworks 的一个操作的页面非常简洁,现在是在数据集成环境下选择了项目空间。
7、为了数据集成,首先第一步是要去创建数据源,这两张表分别一个是存在了 oss 数据源,一个 rds 数据源,所以要去新建两种数据源,首先建立 oss 数据源,因为这两张表已经是放置好的,所以直接按照规定好的内容将它填写就好了。实际在开发中是应用到表的具体信息去填写,适用环境开发和生产都要勾选。把基本的信息填完以后,测试一下,测试连通成功,数据源就创建完成了。
8、再去创建 rds 数据源,rds 数据源直接选择 mysql,填写名称,测试连通性,连通成功。
9、数据源添加好了之后,创建业务流程,业务流程是在 datastudio 数据开发模块下完成
的,可以看到这是数据开发的一个界面,左边可以看到的业务流程。
10、右键新建业务流程,添加一个名称,dataworks workshop。
11、新建的业务流程面板已经展现了,左边可以配置各种数据集成和数据开发的节点,首先配置一个虚节点和两个数据同步的节点,虚节点它没有实际的意义,它的作用主要是相当于一个总开关来启动整个的任务调度功能,再拖着两个数据同步的节点,分别是叫做 oss 的数据同步节点和rds的数据同步节点,这两个节点都创建好之后,先把它的流程把它构建起来,从虚节点出发,同时来进行 oss 和 rds 的数据同步,基本上配置好之后,去配置数据同步的节点的内容。把虚节点的内容配置,因为它没有任何的操作执行,所以给它配置调度任务的执行。
12、可以看到它分为基础属性,时间属性,比如包括生成时间的日期时间调度,周期这些。第三点是调度依赖,调度依赖主要是去帮它定义出节点的上下游的依赖的内容,因为它是一个虚节点,所以它上游的输入,就把它默认使用工作空间跟节点就好,它自动解析出了父节点的名称是 root,那配置好之后,其它现在暂不配置,点击保存。保存成功之后退出,虚节点就已经配置好了。
13、接下来要去配置数据同步的任务,在配置数据同步节点之前,要去新建两张表格。目的是存储 oss 和 rds 两个数据源里面的认知数据,点击新建表,起名叫做oss,可以看到进入到这张表格的配置内容,首先有一个基本属性,这里面需要填的是它的英文中文名字,直接复制过来,基本属性填好之后,它有个物理模型的设计,就是它的分区,还有的生命周期。
14、第三个是它的表结构的设计,也就是表里面包括哪些字段,字段的内容是什么?为了快速直接采用 ddl 编写代码的形式,生成表结构,直接把建表语句复制过来,生成表结构,确认。
建表语句:
创建 oss 日志对应目标表
CREATE TABLE IF NOT EXISTS ods_ raw log d (
col STRING
)
PARTITIONED BY (
dt STRING
);
15、解析成功之后,可以看到表结构的内容直接就匹配上来了。
16、填写好之后,要把这张表分别提交到开发环境和生产环境,这样最后表的内容才能够会被调度起来,确认。
17、这张表建立好了,建立好了之后再去建立另外一张表,是同步 rds 数据的表格,方法是跟这张表格方式都是一样的,首先把它的表名复制,用 rds 的模式来输入建表语句,建表语句可以看到字段都已经解析成功了,那分别提交到开发环境和生产环境。提交之后这两张表格就创建好了。
创建 oss 日志对应目标表
CREATE TABLE IF NOT EXISTS ods_ raw log d (
col STRING
)
PARTITIONED BY (
dt STRING
);
18、创建好之后,就来配置数据同步的节点,双击 oss 数据同步节点,可以看到里面让选择数据的来源以及数据的去向,那数据来源是直接选择 oss,它会自动选好刚刚创建的数据库以及数据的前缀,这张表的内容是一个txt文档的格式,文本类型 text,列分割符选择文档里面没有的一个出现,把它分割开,可以看到数据预览,那竖线会把数据表里面的内容分割成分隔开,确认。
19、数据的去向的是 maxcomputer,也就是 odps,表格是选择刚刚创建的表格,可以看到它自动把源头表和目标表的字段相关联起来了。接下来是最后的通道配置,主要就是为了保证作业的传输速率,最大并发数控制,同步的速度也限制一下。配置好之后点击保存,保存成功之后,这个数据表格就同步好了。
20、同步好之后,再去配置 Rds 的数据同步节点,同步节点跟刚刚方法是一样的,直接选择表格,数据源选择 mysql,表格选择 ods_user, info_d,数据的去向也还是的 odps,表选择 ods_user, info_d 。数据先预览看一下。数据来源里面包含了用户的访问的它个人的信息。
21、数据来源和去向都定义好之后,会自动的映射出来,映射可以自动配置,也可以把它删掉,自己去选择同名,同行或者是自动排版,配置好之后点击保存,这两个数据同步节点的内容就都配置好了。