开发者学堂课程【场景实践 - 使用 MaxCompute 进行数据质量核查:阿里云相关产品介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/520/detail/7041
阿里云相关产品介绍
内容介绍:
一、MaxCompute 简介
二、数据开发 Data IDE 简介
三、数据开发(DatalDE)常见场景
四、DatalDE 操作界面
五、DatalDE-总体使用流程
六、DatalDE 开发操作
一、MaxCompute 简介
大数据计算服务(MaxCompute,原ODPS)由阿里云自主研发,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,应用于数据分析、挖掘、商业智能等领域。阿里巴巴的数据业务都运行在ODPS上。 MaxCompute主要有如下相关的特点:
1、分布式
⑴采用分布式集群架构
⑵跨集群技术突破
⑶机群规模可以根据需要灵活扩展
2、安全
⑴自动存储容错机制
⑵所有计算在沙箱中运行
⑶保障数据高安全性、高可靠性 阿里本身就是使用自己的这套产品,它的系统里会涉及到产品订购、个人账户信息、交易流水存款等等。
所以说安全性这一块,阿里也下了苦工作。
3、易用
⑴标准 API 的方式提供服务
⑵高并发高吞吐量数据上传下载
⑶全面支持基于 SQL 的数据处理 也就是说,以前用过任何一种数据库,如果使用SQL,那这个产品拿过来基本上都可以上手,而且还提供一些标准化的app接口。
比如,可以根据自己的需求,通过api的接口写一些数据库函数管理授权。
4、管理与授权
⑴支持多用户管理协同分析数据
⑵支持多种方式对用户权限管理
⑶配置灵活的数据访问控制策略
MaxCompute 支持多用户协调分析数据,可以灵活的配置数据访问控制策略,比如提供管理员、开发人员、测试人员、维护人员等角色,这些角色会MaxCompute不同的模块。MaxCompute 还可以提供一些访客的角色。
二、数据开发 Data IDE 简介
大数据开发集成环境(Data IDE),提供可视化开发界面、离线任务调度运维、快速数据集成、多人协同工作等功能,为您提供一个高效、安全的离线数据开发环境。并且拥有强大的Open API为数据应用开发者提供良好的再创作生态。
比如说,用户在平常的使用过程中,会频繁的判断当前的日期是否是每周的周一。这时我们就可以自己写一个函数,并且通过api的环境来实现这个函数,后续每次我们在做这个判断的时候,都直接调用这个函数就行。
1、数据开发: 可视化的业务流程设计器
代码类型编码和调试 自动补全代码 代码格式化 代码版本管理 多人协同开发等功能。
2、数据管理:
涵盖全链路数据血缘 数据计量 影响分析 支持元数据 异构数据 业务元数据 数据生命周期 数据资产 数据权限等管理。
3、作业调度: 多时间维度的离线任务调度 在线运维 监控报警 支持超过百万级的离线调度任务量
三、数据开发(DatalDE)常见场景
1、将业务系统产生的数据轻松上云,构建大型数据仓库和BI应用,利用ODPS强大的海量存储与数据处理能力。
2、基于数据开发快速使用和分析数据,将大数据加工结果导出后直接应用于业务系统,实现数据化运营。
3、针对作业调度与运维复杂性,数据开发提供统一友好的调度系统和可视化调度运维界面,解决运维管理不便等问题。 整体的数据加工流程一般如下:
数据产生→数据收集与存储→数据分析与处理→数据提取→数据展现与分享
这个流程图五个大模块,而中间三个模块框起来,写着数据开发。也就是说,方块内这三个模块是通过 DatalDE 来实现的。另外两个模块则是阿里云的其他工作模块来实现。
比如说数据产生这个模块,业务系统每天都会产生大量数据,这些数据都存在业务系统对应的数据库里面。
当然阿里云也有自己的一套库,叫 RDS。
数据产生了之后,我们需要把这些数据收集到 MaxCompute 中来存储起来,做后续的分析。
使用 DatalDE 任务开发模块里面的数据同步这个组件将数据从阿里云的RDS库同步到 MaxCompute 当中,然后后面做数据分析处理。
数据分析处理这块模块,可以使用DatalDE的任务开发中 ODPS 来进行处理,分析与处理后的结果数据同步至业务系统,可以供后续的业务人员使用。
最后,数据展现与分享,可以通过报表、地理信息系统等多种展现方式来展示,可以把相关的数据分享给大家。
四、DatalDE 操作界面
MaxCompute 除了提供 MaxCompute Studio 客户端、odpscmd 客户端进行开发外,还提供另外一种更为方便的操作界面 DatalDE,DatalDE 包含可视化的工作流界面及周期性任务调度、监控报警等,一方面降低用户使用 ODPS 的使用成本,一方面可以使用 ODPS 强大的大数据处理能力构建大数据云数仓。 MaxCompute Studio 客户端、odpscmd 客户端,这两种客户端更多的是一种命令行的操作方式,使用起来可能不太方便。
虽然 DatalDE 提供可视化的工作流程界面,还有一些周期性的任务调度、监控报警等,但是它也不是完美的。
比如,要将本地数据导入 MaxCompute 当中,如果数据文件大于10兆,DatalDE 就实现不了。
这时,就通过 odpscmd 客户端使用 tonor 命令来实现数据加载。
五、DatalDE-总体使用流程
这个流程图是使用 DatalDE 的总体流程,就是怎么来用 DatalDE。
1、开通数加:
进入官网,开通数加平台。
2、创建项目空间:
绑定已有的 ODPS project ; 新建 ODPS project
3、添加成员:
组织管理员创建RAM子账号并分配项目管理员角色; 项目管理员添加新成员并分配角色。
4、创建表:
项目基本属性配置; 数据源配置;
计算引擎配置流程控制;
5、工作流开发:
分别在两个项目空间建ODPS表。
6、工作流测试:
新建周期性工作流; 配置数据同步任务; 配置ODPSSQL任务。
7、发布工作流:
测试工作流。
8、项目配置:
创建发布包发布工作流。
六、DatalDE 开发操作
通过 DatelDE 来实现数据质量监控,首先使用 PC 登录阿里云网页,在控制台里,选择大数据开发套件功能模块,选择对应的项目,进行开发操作。DatelDE 主要包括数据集成、数据开发、数据管理、运维中心、项目管理、机器学习平台等功能模块,此次数据质量核查主要涉及数据开发、运维中 心两大模块。 DatelDE 是通过一个 web 页面来进行访问的,并且 DatelDE 产品会不定期进行更新,但整体框架不会有太大的变动,可能会在某个工作模块下新增一些小的工作点,新增一些菜单,或者调整一下页面布局等。
1、数据开发页面是根据业务需求,设计数据计算流程,并实现为多个相互依赖的任务,供调度系统自动执行的主要操作页面。
⑴任务开发,包含周期属性和依赖关系,是数据计算的主要载体,支持多种类型的任务和节点适应不同场景。
⑵脚本开发是对周期任务的补充,通常用于辅助数据开发过程,主要用于实现非周期的临时数据处理,如临时表的增删改等,因此不包含周期属性和依赖关系。
比如,建表、查数据这些可以用脚本开发,其余的需要周期性调度的,或者加工逻辑比较复杂的,需要多个步骤进行数据来处理的的考虑用任务开发。
在任务开发里面,有个功能套件叫调度配置,就是把已完成的任务配置成周期性跑售的任务。这个周期可以是日、月、周、小时、分钟。
⑶在大数据开发套件中,当一个任务被成功提交后,底层的调度系统从第二天开始,将会每天按照该任务的时间属性生成实例,并根据上游依赖的实例运行结果和时间点运行。23:30之后提交成功的任务从第三天开始才会生成实例。
2、运维中心是日常运维的主要工具,可对已提交的工作流及其节点任务进行管理与维护,同时也可针对节点来添加监控报警。主要分为运维概览、任务管理、任务运维和监控报警四个模块。
也就是你在预约中心里面,可以查看已经配好的任务,查看这个任务的一些跑路情况,看看这个任务是否出错,出错以后进行一些重调,或者是修改代码。可以也可以追跑一些数据,在配置相关告警的时候,可以指对指定人员进行相关的告警。