开发者学堂课程【一站式大数据开发治理平台 DataWorks 初级课程:DataWorks 数据模型介绍及实践】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/763/detail/13356
DatatWorks 数据模型介绍及实践
内容介绍:
一、课堂内容介绍与背景和介绍
二、为什么要数据建模
三、DatatWorks 数据建模介绍
四、DatatWorks 开发、治理模式的演变
五、演示与实操
一、课堂内容介绍与背景介绍
本节课主要介绍内容 DatatWorks 数据建模:一揽子数据管理模型解决方案,近期DatatWorks 完成了国内有用自主产权的专业产品提供商书宇科技所提供的数据模型管理软件深度集成,总所周知在今天的商业环境下,正确的数据指令策略,对于数据增值是非常重要的,据统计企业的数据一直以每年5%的数据增长,换言之,每年增长一到两倍,因此企业对于数据整合与治理的难度不断加大了,DatatWorks 一直以来都致力于成为用户更方便更快捷进行数据开发,数据治理的好帮手。
此次发布的数据建模正是对已有数据领域能力的补齐,为用户带来了在数据开发前即可实施术前治理的能力。
本次分享主要分为四个部分,首先会暴露传统数据建模的普遍痛点以阐明数据管理的重要性,其次介绍当前市面上常见的数据管理模型的普遍能力和 DatatWorks 数据建模的核心能力,特色能力,以及我们所能给用户带来的价值所能解决的问题。
再次会讲解关于本次 DatatWorks 数据建模的发布,如何补齐一向所主张的规范化数据开发的流程使其变得更加完善,最后通过视频 demo 的展示,如何通过 DatatWorks 从模型底层设计到落地管理模型的过程以便于理解术前治理的精髓。
二、为什么要数据建模
首先开始第一步分为什么要进行数据建模,先引用阿里巴巴大数据语录中的几句话,从这几句话里能得出结论:不管大到城市建筑,亦或是图书馆,小到个人桌面,规范合理的组织都是必不可少的,因为只有规范合理的的组织才能避免失误的交织出现,最终构成错综复杂的难题,而存储在计算引擎的数据模型也就是表,也不例外
从常见的数据中台,数据的具体实施项目规划来看,一般在业务与数据处理完成之后,模型处理是避不开的流程,具经验来看,常见的数据处理项目中存在数据处理的表有一千到五千张,也存在几十万到上百万的极端案例,因此进行示例图或关系网络图的绘制十分重要
大多数企业均通过 excel 进行绘制,今天在大多数数据企业模型中模型均是记录在excel 上的,具体操作界面如下:
这种方式仅在模型较少的情况下,确实是一种轻量化或者可以具体实施的选择,但是当企业飞速发展达到成千上百的规则的时候,这样的管理方式便会让数据管理人员十分痛苦。此时企业的数据模型便会和企业的增长与变更非常快,数据人员根本无暇顾忌,来维护修改 excel 中的内容,即便存在时间进行实施,可操作性也非常低并且会出现人为性的错误,而当管理者需要通过群体的视角来审视数据体系的全貌时得到效果,将是一推没有时效性错误率很高的信息
而另外一个痛点是企业数据落地标准十分困难,原因是:大多数情况下缺少一个有操作力的可操作性能强的数据工具,而因为缺少这个工具,在数据实地产出前的引标落标阶段就直接被跳过了,大多数企业秉持着先开发后治理的指导思想去构建自己的数据体系而直接导致了后续数据不可用的问题,总所周知如果企业没有定制自己的企业标准,那么开发人员之间对于数据的治理就会不同,从而构建出,不同定义,不同处理的数据模型,直接影响力后续数据产出的质量问题,导致许多数据预期的需求都实现不了,导致后期的团队都需要花费更多的时间和精力来进行研发数据
可以说企业的数据问题都是因为难以落地的数据标准或者标准落地不彻底形成的。
总结企业数据管理问题
1. 缺少统一视图管理模型 每个视图分散在不同的计算引擎中,数据管理人员是无法准确知道的。
2. 数据项目无法有效落标 引起了数据生成的质量问题,进而导致许多数据需求实施不了。
三、DatatWorks 数据建模介绍
(1)数据模型的介绍
在开始介绍 DatatWorks 的建模能力之前先简单介绍以下什么是数据模型,数据模型是数据组织和存储的方法、特征的抽象,强调从业务和数据处理的角度分析数据,如果没有数据模型,就很难看到现有的数据库结构,理解相关的概念。
数据模型包含逻辑模型,概念模型,物理模型
概念模型:描述世界的概念化结构 比如企业架构模型:企业有多个部门,每个部门下有n个员工有很多不同的形式,通过薪资来表示各个事务间的关系逻辑模型:概念模型的进一步细化。如员工模型
逻辑模型:是对概念数据的进一步细化,确保各项数据的描述,如员工模型包括身份证号、性别、多个属性
物理模型:特定的数据库,是基于特性物理模型,存在的模型,使之呈现在引擎中的样子
(2)数据建模方式
DatatWorks 的数据模型支持可以支持维度建模或者关系建模,没有更好,只有最适合。
1. 关系建模 包括 ER 建模和3NF 建模,包括以下优势与缺点
优势
支持多对多关系
高度结构化
相对容易扩张
缺点
1.不利于下钻
2.不利于对接 BI
3.物理设计常于业务不匹配
因此建模成本较高,对建模人员的要求同样非常高,这种方法论如同装载卡车,对装货运货都十分讲究,并且要求司机的技术十分高超同维度建模,主要以分析事务来构建模型,一般具有大规模复杂产业的事务性能,典型的代表为星型,模型和在特殊场景下适用的雪花模型
以下为相关优缺点。
优势
面向主题
适合多维分析
聚合场景
劣势
无法跨业务模块
囤积大量辅助表和垃圾表
如果数据巨大就可能出现表爆炸问题
维度建模如同一辆跑车,性能超好,人人都喜欢,但如果不小心蹭了一下,就可能花费巨额费用来进行维修。
总结
用户所关心建模方式的选择,应该从企业的实际场景来进行实施出发,根据经验总结,大多数企业都会同时存在这两种建模方式,底层模型用关系建模力求得到数据精简,大数据建模维度建模更适合,对大数据的集合,多一点针对问题的可操行性,DatatWorks 的数据模型,
是自由选择,灵活的工具,用户可对数据进行规划进行数据模型构建。如同烂程序员关心的代码,好程序员关心数据结构之间的关系,同样的道理在数据模型建立重要性同样如此,通过数据模型进行高成本低效量的使用
(3)数据模型生命周期
1. 业务调研是为了理解公司各个领域的不同点和互通点业务线可以分为那几个模块进行数据的需求分析
2. 概要数据
对为表和事实表的描述,公司推荐系统的推片是怎摸样的,基于那些数据实现的
3. 详细设计
流程梳理
4. 编码开发
物理建模设计
5. 系统测试 将转换完的语言,发布到执行阶段,进行产品的检测。
6. 上线交付
物理模型上线
7. 运行维护
定期维护是持续进行的,模型已经发布上线,成为是实在实在的表,针对可能出现的问题进行定期的维护和管理,具体流程如下图
(4)业内数据建模基本能力
为了更好的管理生命周期,市面上的大部分工具均提供了以下能力
支持数据脚本
模型设计能力
数据的导入导出
概念模型
版本
具体的能力展示如下图:
(5)差异化能力
智能引用标准
本地客户端加网页版可视化设计工具
生产模型差异比较
逆向提取,正向提交引擎模型
与 Dataworks 体系完美结合
(6)核心使用流程
模型导入
设计阶段
开发测试阶段
投产阶段
四、DatatWorks 开发、治理模式的演变
(1)宏观角度
DatatWorks 的数据生命周期
1. 数据搬上云
2. 生产数据
3. 使用数据
DatatWorks 的数据治理能力更多着眼于事中,事后处理
数据治理形态的补充,加强事前管理,进行统一的修正
(2)微观角度
规范化,专业化的数据开发
基于体系的角色模式
开发流程
1. 数据团队主管--定义标准
2. 数据建模主管--逻辑建模
3. 数据开发成员--提交模型
4. 进行检查审批发布
五、演示与实操
1.案例一
打开数据标准模板,进行标准建设
名称输入客户身份证号,英文缩写为数据名称,保存数据标准,进行导入数据标准,使用为批量数据操作方法,打开本地输入工具
检查导入是否完成,打开实时同步
建模流程
跳转到模型界面,进行数据标准设置
勾选英文缩写字段名,创建身份证号名称,保存模型到数据库,选择模型命名,打开模型管理库,进行属性状态更改,进行上线发布
进行刷新,则显示字段,点击提交,选择计算模型名称
注意对字段的删除与修改,慎重,提交完成,可在日志查看
进入任务发布页面,需要通知任务管理人员,检测完成进行发布,符合预期即可点击发布包
查看是否发布成功,点击执行结果
2.案例二
点击数据图,输入地址
填写项目名称,下一步新型模型提取
通过导航观看模型全貌,保存模型,进入模型管理界面
提交开发环节,显示删除环节
提交成功,点击发布,进行数据验证
选取表,进行执行,即可完成