新闻资讯

如何通过数据模型设计生成数仓开发脚本(DML)

众所周知在数据建模工具中设计的ER图可以直接产生DDL脚本并执行到数据库生成数据库schema,称为正向工程.


另一方面,在数仓设计开发过程中常常使用DML,DML是Data Manipulation Language的缩写,意思是数据操作语言,是指在SQL语言中,负责对数据库对象运行数据访问工作的指令集,以INSERT、UPDATE、DELETE三种指令为核心,分别代表插入、更新与删除,是开发以数据为中心的应用程序必定会使用到的指令。


在数仓开发过程中,就是要把数据像整理衣柜一样分层治理好,比较经典的就是三层维度模型。我们通常先设计数仓模型(明细层和汇总层),一般做法是将源端(OLTP)或ODS贴源层的数据模型先复制一份,基于数仓需求通过对多张表的合并,加工,转换来设计数仓模型.


之后再基于源端或ODS贴源层的数据模型和数仓模型的对应关系,包括维度表和事实表的加载逻辑、各业务系统的维度表和事实表的加载逻辑、各业务整体维度表以及基于事实表产生对应的维度指标和度量值。来开发DML脚本.


最后将DML脚本导入到ETL job里面.

数据模型.jpg



这种方法费时费力,存在大量重复性工作,不断在源端模型,数仓模型,ETL之间切换,效率极低. 


有没有方法只关注模型设计,直接在源端模型上做数仓模型设计,选取或拖拽宽表,然后直接生成DML脚本呢?


通过数据模型设计装载逻辑


在数据模型设计工具中使用源和目标系统的加工逻辑,加速创建源到目标的元数据驱动的映射. 拖放方法和自动映射功能替代了传统的手工方法,同时可以管理事前的数据血缘管理

数据模型.jpg

1. 创建数仓目标实体,进入装载逻辑

数据模型.jpg

2. 选择需要拉通的源端或ODS贴源层的表到设计视图

数据模型.jpg

3. 在运算逻辑编辑器中撰写更复杂的运算加工逻辑

数据模型.jpg

4. 生成DML,并执行到测试库

数据模型.jpg

Datablau Data Modeler简介


DDM(Datablau Data Modeler)是国内首创的专业建模工具,是数据治理体系的重要组成部分。数据模型是“所有系统、文档和流程中包含的所有数据的语境。是生数据的知识。”换句话说,如果没有数据模型,组织IT系统中收集和存储的所有数据都会失去意义,也就没有业务价值。


Datablau简介


北京数语科技有限公司(以下简称“数语科技”)成立于2016年,是专注于数据治理领域的国内自主知识产权的专业软件产品提供商,主要业务是数据治理软件产品的研发与销售。数语科技的创始团队全部来自CA erwin,天然具有世界级水准的软件产品开发能力。


创始人兼CEO王琤:曾任职erwin全球研发总监,拥有超过十年以上数据建模和数据管理的从业经验。


CTO朱金宝:曾任职erwin首席架构师,先后服务多家全球知名企业,并曾全程参与中国建设银行数据治理项目,目前全面负责Datablau软件平台的研发工作和关键项目的实施工作。


数语科技根据DAMA理论和中国国情独立研发Datablau新一代数据治理平台,平台由Datablau DDM数据建模产品和Datablau DAM数据资产管理平台两大部分组成,全部拥有软件著作权和知识产权,一站式全面满足中国企业的数据治理需求。其中数据建模产品DDM是Datablau填补国内空白的重量级产品,帮助中国客户摆脱国外产品的垄断现状。2018年,Datablau数据治理平台通过了中国信息通信研究院严格苛刻的产品评测并获得的“最佳大数据产品”奖。


更多渠道了解我们

官网:www.datablau.cn

关注我们,及时了解数据治理干货

24.jpg

推荐阅读 查看更多