Dataphin功能大图(三)研发:设计即研发,规范建模保障数据模型与代码的一致性

本文涉及的产品
智能数据建设与治理Dataphin,200数据处理单元
数据可视化DataV,5个大屏 1个月
可视分析地图(DataV-Atlas),3 个项目,100M 存储空间
简介: 在《Dataphin核心功能: 规划功能》一文中, 讲到过Dataphin的OneModel方法论将数据建设分为四层, 分别为主题域模型(建模), 概念模型, 逻辑模型和分析模型。本文将继续展开逻辑模型和分析模型的讲解。

作者:楚牧

前言

Dataphin核心功能: 规划功能一文中, 讲到过Dataphin的OneModel方法论将数据建设分为四层, 分别为主题域模型(建模), 概念模型, 逻辑模型和分析模型。前两个模型已在规划一文中介绍过, 本文将继续展开逻辑模型和分析模型的讲解。这四层都是属于Dataphin的智能研发,也称规范研发或逻辑化研发。除此之外, Dataphin还支持传统通用的各种研发方式, 如 SQL, MapReduce, Shell, Python 等,本文将重点解释智能研发。

20210922144246.jpg

数据分层

在介绍智能研发的逻辑模型和分析模型之前, 先简单说下另一种维度的数据分层。当前, 在数据中台领域, 通用的做法是根据数据的使用场景和生产方式, 将数据分为:

  1. ODS (Operational Data Source), 按照字面理解是操作数据来源, 通常的叫法是贴源数据层。ODS是从业务应用系统中同步过来的数据, 一般不对数据做任何清洗加工、镜像复制, 但是会保留多个版本,因为业务应用的数据一直在更新变化, ODS会保留部分中间过程版本数据。
  2. CDM (Common Data Model), 公共数据模型层, 数据的清洗加工, 建模都在这一层进行,智能研发也主要在这一层。
  3. ADS/ADM (Application Data Summary) 应用数据层, 面向具体业务场景的数据研发。

Dataphin中,规划到研发的流程一般是, 规划(板块划分->主题域建模->概念建模) -> 项目创建 -> ODS (数据上云/数据同步) -> CDM (逻辑建模->分析建模) -> ADS


逻辑模型

根据上一节的介绍, 现在假设 规划->项目创建->ODS 均已完成, 接下来就进入了逻辑建模


属性与约束

在概念建模中, 创建好实体, 配置好实体间的关系, 整个业务的大图就已经清晰的落地到数据中台。但是不同实体除了名字不同, 关系不一样之外, 还有哪些区别呢?例如,用户和会员有什么区别,这就是逻辑建模要来解决的问题。逻辑建模的核心工作是梳理实体的特征, 即给实体添加属性, 并明确属性的业务约束, 一个实体有很多属性(也叫特征), 这些属性可以用于区分实体。

属性按照类型, 可以分为:

  1. 标识属性, 即实体的某个具体实例的唯一标识。实体是一个抽象概念, 实体实例是具体事物。比如,商品鞋是一个实体。一双36码、白色、编码为6901234的鞋就是一个实例。一个实体可以有多个标识属性, 如商品ID, 商品编码
  2. 关联实体属性, 实体的某个属性本身可能也是一个实体。比如, 商品的卖家(货主)属性, 卖家是一个独立的实体
  3. 描述属性, 表述实体某一个维度的特征的一般属性, 实体中的定性属性, 一般是文本字符类型,如, 名称
  4. 度量属性, 某个维度数量程度的属性, 定量属性. 一般是数值类型, 如: 金额, 价格
  5. 时间属性, 描述实体某个行为的时间

根据实体的类型(业务对象或业务活动), 每个实体都有一些必须有的属性, 即关键属性:

  1. 业务对象至少有一个标识属性, 根据业务可以添加其他关键属性
  2. 业务活动必须有一个关联实体属性来标识活动的主体(发起人, 比如 订单活动中的买家), 一个或多个时间属性来明确活动时间。

实体丰富了属性之后还不能完全反映业务现实, 还需要给属性加上一些约束规则:

  1. 取值规则, 约束属性的取值范围, 即约束实体实例中该属性的具体内容的有效性
  2. 枚举值, 如 鞋子颜色只有黑色和白色两个
  3. 取值范围, 如 年龄一般是0~150
  4. 模式匹配, 如 身份证号码必须是15或者18位, 且最后一位才能有字母X, 其他必须是数字
  5. 唯一性, 除标识属性外, 其他属性也可能有唯一性要求
  6. 非空性, 不允许该属性出现空值
  7. 其他


实例化

定义好逻辑模型后, 映射数据到模型的过程就是模型的实例化, 浅白的说就是将物理的数据映射到逻辑模型。实例化的数据来源是ODS数据,少数情形下, ODS数据需要做一些额外处理, 将其按照一定的规则注册挂载到逻辑模型。Dataphin将根据映射自动生成计算代码和周期调度任务, 并基于属性约束生成数据质量校验规则。到这一步, 就完成了逻辑模型的构建。


分析模型

逻辑模型构建后之后, 基于逻辑模型可以构建分析模型, 即下图中的业务分析模型。分析模型的目标是快速生成业务分析中的指标,称为派生指标, 并且保障这些指标的可靠性和可维护性。通过把最终使用的指标拆解为四个基本组成部分,以最近30天按省份30岁以上男性下单金额为例:

  1. 统计周期, 业务发生的时间区段, 即例子中的 "最近30天"
  2. 原子指标, 分析指标不区分维度不加任何约束限制的基础抽象, 即例子中的 "下单金额", 原子指标是对实体的某个属性在所有实体实例上的整体刻画, 是一种统计性描述, 即原子指标一定是一个聚合表达式,如求和, 平均, 最大, 最小等
  3. 业务限定, 指标上的业务约束, 即例子中的 "30岁以上男性"
  4. 统计粒度, 分析的维度, 看业务的视角, 即例子中的 "省份"


以上描述可能还是让人无法准确明白分析模型是什么, 可以参照下图, 从传统SQL视角来理解:

分析建模的步骤是, 统计周期设置(系统内置了大部分常用统计周期)->原子指标/业务限定配置->派生指标配置, 所有配置完成后, 系统将自动生成计算代码(如上图)和周期调度任务。

Dataphin通过规范化、模块化的低代码配置式研发, 有效的保证了模型与代码的一致性。



关联阅读:

Dataphin产品核心功能大图(一)规划: 企业数据体系应该怎么规划

Dataphin产品核心功能大图(二)集成:如何将业务系统的数据抽取汇聚到数据中台


了解产品更多内容可以戳入:https://dp.alibaba.com/product/dataphin



数据中台是企业数智化的必经之路,阿里巴巴认为数据中台是集方法论、工具、组织于一体的,“快”、“准”、“全”、“统”、“通”的智能大数据体系。

目前正通过阿里云对外输出系列解决方案,包括通用数据中台解决方案零售数据中台解决方案金融数据中台解决方案互联网数据中台解决方案政务数据中台解决方案等细分场景。

其中阿里云数据中台产品矩阵是以Dataphin为基座,以Quick系列为业务场景化切入,包括:

官方站点:

数据中台官网 https://dp.alibaba.com

钉钉沟通群和微信公众号

钉钉群二维码.png

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
1月前
|
运维 数据处理 调度
Dataphin功能Tips系列(30)-限流配置
某大型电商平台在每天的凌晨时段需要进行大量的数据处理任务,比如订单处理、库存同步、用户行为分析等。此外,平台还需要定期进行历史数据的补数据工作,以确保数据完整性和一致性。在进行补数据时,如果需要补的历史时间周期比较长,这些批处理任务会消耗大量的计算资源,导致批处理任务(如订单处理、库存同步)响应变慢甚至超时失败,这是我们应该怎么保障每天的批处理任务(订单处理、库存同步)的按时产出?
|
1月前
Dataphin功能Tips系列(27)-排他编辑锁
在实际开发中,为了避免多人同时编辑同一份代码而导致的问题,通常会采用锁机制来保护代码。然而,普通的锁机制有时并不能完全阻止其他开发人员在编辑时抢占锁,这使得用户可互相覆盖锁定状态,在dataphin中如何解决这一问题?
Dataphin功能Tips系列(27)-排他编辑锁
|
2月前
|
消息中间件 Kafka 搜索推荐
|
2月前
|
调度 存储 数据库
|
1月前
|
数据处理 调度
Dataphin功能Tips系列(31)-自定义资源组
某零售企业最近在做促销活动,希望保证某些数据处理任务(订单处理、库存更新)任务能够快速按时完成,如何保证这些高优任务的调度资源不被其他任务占用,能按时执行?
|
1月前
Dataphin功能Tips系列(29)-计算任务版本对比/版本回滚
开发人员小张先前编写的一个脚本,在进行了修订之后,发现逻辑出现了偏差,但他已经不记得前一版本的具体内容了。在这种情况下,应该怎样通过版本对比来看出两版脚本之间的差别,并且回滚到之前的版本呢?
|
1月前
|
调度 Python
Dataphin功能Tips系列(28)-跨节点参数
某经销零售企业,需要每天定时查询供应商的某个服务,以确认产品目录是否有变更,如果有变更,则全量拉取最新目录数据(数据量比较大,拉取一次成本很高),如果无变更则继续沿用上一次拉取的数据,在dataphin如何实现?
|
1月前
|
数据处理 调度
Dataphin功能Tips系列(26)-事实逻辑表配置数据延迟
零售行业中,订单数据是每天晚上由pos系统同步至数据中台,但门店人员经常会没有及时将订单信息录入pos,也许隔天或是隔几天才录入,这会导致指标的不准确性,数据中台的开发人员往往需要进行批量补历史分区的数据,这时怎么才能减轻开发人员的工作,让系统能够自动补前几天分区中的事实逻辑表中的数据呢?
|
6月前
|
存储 数据采集 安全
瓴羊Dataphin数据安全能力再升级,内置分类分级模板、上线隐私计算模块
瓴羊Dataphin数据安全能力再升级,内置分类分级模板、上线隐私计算模块
202 0

热门文章

最新文章

相关产品

  • 智能数据建设与治理 Dataphin