开发者学堂课程【DataWorks 一站式大数据开发治理平台精品课程:1.一站式大数据开发治理平台 DataWorks 入门】与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/81/detail/1227
1.一站式大数据开发治理平台 DataWorks 入门(二)
三、DataWorks 核心能力
1、数据集成
DataWorks 数据集成-数据上下云的枢纽
提供复杂网络环境下、丰富的异构数据源和端之间、具备长链路数据加速,支持同步异步数据传输转换的数据传输桥梁。
(1)关系型数据库
SQL Server、 PostegreSQL、达梦、DRDS、MySQL、Oracle、RDS for PPAS、DB2
(2)MPP
AnalyticDB for Mysql、AnalyticDB for PostgreSQL
(3)大数据存储
MaxCompute 、HDFS、 HIVE
(4)非结构化存储
OSS、FTP、多媒体文件
(5)NoSql
HBase、OTS、MongoDB
如果要在云上实现大数据,第一步要做的就是要把的数据同步到云上,所以数据集成几乎是所有企业在云上做大数据的第一步,那DataWorks的数据集成,它支持实时同步,离线同步,整库迁移,整库迁移可以把线下的MaxCompute数据库批量同步到云上,这样会非常好的提高数据上云时的效率,可以看到支持非常多的数据源,关系型数据库,大数据存储,非结构化存储,都可以做比较好的支持,包括实时同步相关的也可以支持,在做数据集成的产品时,其实对于大部分企业,上云时最核心的还是跟网络相关打通的问题。DataWorks通过产品的能力能够让大家非常好的在复杂的网络环境下,这些异构的数据源,包括同步速度的设置,都可以让大家能够非常好的完成整体的上云和下云的体验,这个是数据集成板块核心的能力。
2.数据开发
数据源通过不管是实时还是离线的数据会到不同的计算引擎,DataWorks 针对不同的计算引擎会发现有不同的 studio,比如实时数据开发的 StreamStudio 以及的离线开发 DataStudio 以及交互数据操作 holostudio,通过这些 studio 处理时,可以再通过数据服务,以各种共享和API的形式给大屏,报表,画像系统做数据的支撑。这个就是对 DataWork 全链路数据开发平台的流程。
(1)DataWorks 离线数据开发-Data Studio
Data Studio 支持阿里云 MaxCompute 和 E-MapReduce 两种大数据引擎的离线数仓开发,可构建复杂的业务流程和调度依赖,提供开发、生产环境隔离的研发模式。多引擎混合的编排,比如因为 DataWorks 的离线数据开发,它不仅仅支持跨引擎的调度以外,它还支持跨云的调度依赖。因为之前内部跑过一个 demo,就是在一个非常极端影响的情况下,比如一个上海区域的 MaxCompute,以及一个北京的emrhive,有一个日本的是aws的节点,以及甚至深圳的mysql节点,这些都可以串联在一起,通过强大的离线数据开发的能力,把所有的节点进行混合的编排,完成一站式数据的开发,这个都可以在离线数据开发Data Studio里面去做实现。
- 业务流程混合编排
可视化拖拽式多引擎任务混合编排。
- 智能SQL编辑器
Al加持的SQL编辑器,智能提示,SQL算子,结构可视化展示。
- 全面的引擎能力封装
支持计算引擎的任务、表、资源、函数管理,让您无需接触复杂的引擎命令行。
- 自定义节点
提供自定义节点插件化机制,支持您扩展计算任务类型,自主接入自定义计算服务。
(2)DataWorks 实时数据开发-Stream Studio
Stream Studio 基于阿里云实时计算引擎(基于Flink )构建,通过可视化拖拽您就可以轻松实现实时计算作业开发。
- DAG 开发模式
通过可视化拖拽,不会写 SQL 也能实现实时计算作业开发。
- Flink SQL 开发模式
也可以通过 SQL 开发实时计算作业。
- DAG 与 Flink SQL 互转
图文互转,查看SQL的算子结构。
- 作业智能诊断
实时任务问题排查“轻而易举"。
(3)DataWorks 交互式分析
MaxCompute 交互式分析( Hologres )是一款兼容 PostgreSQL 协议的实时交互式分析产品。在阿里应用的也非常的多,与大数据生态无缝打通,轻松使用现有BI工具对数据进行多维分析透视和业务探索。
- 极速响应
PB级数据亚秒级查询响应。
- 高性能
高并发实时写入与查询,亿级TPS写入速度,写入即可查。
- 低成本
存储计算分离架构,动态升降配和扩缩容;支持 MaxCompute 查询加速。你的数据只要存在于 MaxComput 中即可,可以通过 Hologres 加速查询,在 MaxCompute里的数据不需要通过离线的方式把任务建立之后,跑一天,一小时这样的数据产出,通过 Hologres 可以做 MaxCompute 加速的直接查询。在 DataWorks 里也能通过 Holo studio 去实现 Holo 相关的任务的开发。
- 安全可靠
基于多副本技术,分布式高可用架构,保证用户数据绝对安全。
(4)机器学习PAI
机器学习PAI提供机器学习可视化开发工具 PAI-STUDIO,云端交互式开发工具PAI-DSW,模型在线服务 PAI-EAS 三个产品,为传统机器学习和深度学习提供了从数据处理、模型训练、服务部署到预测的一站式服务。
PAI-STUDIO 与 PAI-DSW 通过打通底层数据,为用户提供两种机器学习模型开发环境。同时PAI-STUDIO以及PAI-DSW的模型都可以一键部署到PAI-EAS ,通过Restful API的形式与用户自身业务打通。可以在阿里云官网搜索机器学习PAI进行了解。
(5)DataWorks 任务调度
提供日千万级大规模周期性任务调度服务,支持顺序/循环/分支/跨地域依赖、节点上下文传参。
- 业界领先的任务调度系统
- 分钟/小时/天/周/月周期调度
- 顺序/循环/分支判断流程控制
- 跨地域/跨周期任务依赖
- 节点上下文传参
任务调度其实是 STUDIO 中非常核心的一个板块,就是能提供每日千万级的大规模的周期性任务的调度,如果把阿里巴巴的 DataWorks 调度图摊开时,会发现密密麻麻非常多,所以对在业绩中是一个比较领先的任务的调度系统,可以支持分钟。小时或者天月周,周期的调度,同时还会支持顺序循环分支的流程的判断,这些功能能够让所设计的流程图具备更高的可读性和可解释性。比如如果只在一个任务中把所有的复杂的逻辑都嵌套在里面,当有一天另一个人过来看时,他可能会需要花比较多的时间理解和看懂代码,但是通过各种各样,比如顺序循环分支的节点把逻辑做很好的拆分,就可以让另一个人在接手所开发任务时,具备比较强的可读性,这样让工作效率以及对接效率,共享效率会更加的高,这个是DataWorks的调度系统。
(6)DataWorks 运维中心
提供图形化任务运维管理,支持千万级任务依赖图( DAG )逐级展现,通过一种可视化的形式,一个人就可以管理和运维成百,上千个任务,极大降低了运维成本。
1.实时任务运维
实时同步任务管理
流计算任务管理
2.周期性任务运维
周期任务管理
周期实例管理
补数据实例管理
测试实例管理,
3.触发式任务运维
手动任务管理
手动实例管理
4.移动运维
提供钉钉小程序
支持常用任务运维操作
方便出差、夜间随手运维任务
比如半夜接到告警,需要起床开电脑处理,通过移动运维,可以在钉钉上通过小程序的形式,就可以比较快速的去做告警以及任务的一个处理,这个是比较好的一个移动应用的功能。
1.数据治理
(1)基于 DataWorks 的数据治理体系
数 据 研 发 规 范 |
数据资产盘点 |
数 据 管 理 制 度 |
|||||
数据 监控 保障 |
数据 质量 控制 |
数据 安全 管理 |
数据 共享 服务 |
数据 成本 管理 |
|||
找数据 |
看数据 |
||||||
数据治理委员会 |
企业数据治理需要“组织+制度+平台”来保障
数据治理的体系跟数据中台一样,不能说它仅仅是一个产品,还是基于产品能够实现数据治理的应用,会发现除了产品本身以外,整个数据治理的组织,制度,也是非常重要的。
1.数据治理体系-组织建设
在做数据治理时从组织设计上,可以有哪些板块和内容做更好的管理,比如设计各种各样不同的小组,保证数据治理有效的落地性。
数据治理委员会 |
||||
数据规范小组 |
数据模型设计评审小组 |
数据质量小组 |
数据稳定性小组 |
数据安全小组 |
(3)数据治理体系-制度设计
数据研发规范,数据模型/指标规范,数据安全规范,数据质量规范。
数据仓库研发规范: https://help . aliyun.com/document detail/1 15496.html
数据模型架构规范: https://help. aliyun.com/document detail/1 17432.html
数据质量保障原则: https://help aliyun.com/document detail/1 16880.html
(4)DataWorks 数据治理平台核心要素
1.数据发现:基础元数据的规则定义、自动采集、批量获取、增量更新支持资产类目、组织架构、标签等衍生属性自定义。首先要做到数据的发现,不管是MaxCompute 的引擎,还是 emr-hive,oss,当数据发现后,通过比如源数据自动解析的形式,能够解释这些源数据,当这些数据具备可解释时,会形成整张的一个数据资产的闭图,基于这张数据资产的地图,会有非常多围绕着数据资产地图所提供的核心能力与功能。
2.数据探查:一键洞察相关统计量及分布情况。
3.数据资产地图:全局资产搜索、类目检索、资产详情检视集中展示元数据分析、数据探查、数据质量、数据安全、智能监控、资源优化概况。
4.元数据解析:智能解析数据血缘、数据热度、数据产出等复杂元数据。
5.数据安全:敏感数据智能识别及脱敏,风险,预警与审计。主要的4个板块,比如数据安全、数据质量、智能监控以及的资源优化相关内容,都是紧紧围绕着数据治理相关展开的,比如企业有非常多的数据,其实是比较敏感的,比如身份证号,如何能够通过产品化的能力去告诉数据审计或者数据安全的同学,身份证字段有哪些人在什么时候以什么形式访问了几次,这些情况能够告诉他,能够非常快速的去进行数据安全的保障,甚至敏感的信息,是否能够实现它不可见,但可用,通过这样的形式也能够保证整体的数据安全的情况,这里面有很多比较详细的内容。
6.数据质量:异构存储数据质量自动检测与校验。数据质量也是一样,当在产出数据时,是否有空值或者0值,实际上是不应该的,比如好多天都是一个总和的数据,今天突然变成空值或者0值,或者突然产生脏数据,数据质量怎么通过产品的形式做比较好的保证。
7.智能监控:海量计算任务智能监控与业务基线预警。智能监控对于企业,能够提升企业运维的效率,当任务一多时,比如可以想象任务是一棵大树,有非常多的分支以及分枝的树叶等等,开枝散叶会有非常复杂的一个数状图,这有一个树枝,今天需要总额的数据,总和的数据可能是依赖于不同树枝的产出结果才做数据的产出,这样就需要有智能监控的功能做提前的预警和预估,比如总额的数据是必须要在今天晚上9点产生的,上游依赖的某一个数据的产出,它理论上应该中午10点做产出的,按照以往的历史经验,会有一套算法是有分析,比如10点产出。今天如果设置了一个智能监控,来监控这个数据的产出,它就会自动监控到本应该中午10点产生的任务,它在今天10点才做产生,这就非常有可能会影响到,任务数据产出是否能够在今天晚上21点做产出,当配置之后,就能够非常好的监控到那个任务,如果延迟了,就可以去找下任务的owner告诉他,甚至也可以自己查看这个任务到底是什么情况,它可能是报错,还是因为资源的不足等等各种各样的情况导致延时的产出或者任务的失败,就能够比较好的保证自己的数据能够有稳定的产出,不用把整个数据产出链路上的任务都进行管理,只需要针对自己的任务设置时间就可以,后台会给做一个智能算法的监控。
8.资源优化:存储/计算资源优化、诊断与分析。治理平台核心的资源优化的板块。当数据越来越多时,数据来源越来越多,数据越来越多时,肯定会面临着资源优化的需求,比如产生了一万张表,通过资源优化模块的分析发现,一万张表可能里面有十张,一百张,一千张的表,它其实产生的数据是重复的,那么在这个表中把它删除,或者做其他的归档的处理,能够让整个重复的资源和成本下降上去。比如一个人拷一个总和的表,发现另一个人也创建了一个表,计算逻辑一样,两个产出的总额的指标也是一样的,那对于计算资源来说浪费了,可以通过资源优化形式把重复跑的计算任务给识别出来,让管理员看这两个任务产出的都一样,是否有必要把其中一个任务暂停或者删除,那么这样也能够非常好的节省计算的资源。
9.通过这4个模块,可以比较好的满足企业在数据治理中核心的问题。
4、数据服务
DataWorks 数据服务解决从数仓到应用的"最后一公里”就是通过数据服务API的形式,大家可以零代码的实现和构建整个数据分享,在保证安全的情况下进行不同部门或者不同业务,不同应用的数据服务的共享,也可以支撑各种各样的应用,比如大屏报表或者数据交换平台或者API市场相关的内容,所以数据服务的模块,能够比较好的解决应用的最后一公里的问题。