图片来源:阿里巴巴 OneData
1.模型
规范化模型分层、数据流向和主题划分,从而降低研发成本,增强指标复用性,并提高业务的支撑能力。
2.规范
规范是数仓建设的保障。为了避免出现指标重复建设和数据字段难以理解的情况
(1) 词根
词根是维度和指标管理的基础,划分为普通词根与专有词根,提高词根的易用性和关联性。
(2) 表命名规范
通用规范
表命名规则
表名称 = 所处分层 + 业务主题 + 子主题 + 表含义 + 更新频率 + [分表:_0、_10]
(3) 指标命名规范
结合指标的特性以及词根管理规范,将指标进行结构化处理。
A. 基础指标词根,即所有指标必须包含以下基础词根:
基础指标词根 | 英文全称 | Hive数据类型 | MySQL数据类型 | 长度 | 精度 | 词根 | 样例 |
---|---|---|---|---|---|---|---|
数量 | count | Bigint | Bigint | 10 | 0 | cnt | |
金额类 | amout | Decimal | Decimal | 20 | 4 | amt | |
比率/占比 | ratio | Decimal | Decimal | 10 | 4 | ratio | 0.9818 |
B.日期修饰词,用于修饰业务发生的时间区间。
日期类型 | 全称 | 词根 | 备注 |
---|---|---|---|
日 | daily | d | |
周 | weekly | w | |
月 | monthy | m | |
季度 | quarterly | q | Q1 ~ Q4 |
C.聚合修饰词,对结果进行聚集操作。
聚合类型 | 全称 | 词根 | 备注 |
---|---|---|---|
平均 | average | avg | |
周累计 | wtd | wtd |
E.基础指标,单一的业务修饰词 + 基础指标词根构建基础指标 ,例如:交易金额 - trade_amt
F.派生指标,多修饰词+基础指标词根构建派生指标。派生指标继承基础指标的特性,例如:新增门店数量-new_store_cnt
(4) 清洗规范
确认了字段命名和指标命名之后,根据指标与字段的部分特性,我们整理出了整个数仓可预知的24条清洗规范:
数据类型 | 数据类别 | Hive类型 | MySQL类型 | 长度 | 精度 | 词根 | 格式说明 | 备注 |
---|---|---|---|---|---|---|---|---|
日期类型 | 字符日期类 | string | varchar | 10 | date | YYYY-MM-DD | 日期清洗为相应的格式 | |
数据类型 | 数量类 | bigint | bigint | 10 | 0 | cnt | 活跃门店 |
数仓建设保证数据质量以及数据的使用,对数据资产管理和统一数据出口之前:
图片来源:阿里巴巴 OneData
开发流程
6. 标准化规范化数据流向
避免大量的烟囱式开发、重复生成明细表或轻度汇总表、分层引用等不规范性及数据链路混乱
标准化数据流向图
寄语:一旦开始数据治理,不要半途而废
https://www.zhihu.com/answer/2551758354 原文