干货 | 数据治理平台_数据类项目执行_数据中台建设_数据质量DQC
The following article is from KD陋室杂谈 Author KD陋室杂谈
标准文件
在2B和2G行业尤其是2G行业,国家、行业、地方都发布了大量的标准文件,在业务和技术层面都进行了相关约束,并且指导新建业务系统的开发。标准文件知识库涵盖几个方面:a.国标、行标、地标等标准的在线查看 b.相关标准的在线全文检索 c.标准具体内容的结构化解析。
数据元(模型)
对于不同行业来说技术标准中的命名以及模型是目前大家都比较关注的,也是在做数据中台类项目以及数据治理项目比较耗时的地方,在金融领域已经比较稳定的主题模型在其他行业尚未形成统一,所以对于做2B和2G市场的企业如何能沉淀出特定行业的数据元标准甚至是主题模型,对于行业理解及后续同类项目交付就至关重要。具体包括:实体分类、实体名称名称、中文名称、英文名称、数据类型、引用标准等。
DQC(数据质量稽核)&数据清洗方案
数据治理的关键点是提升数据治理,所以不同行业及各个行业通用的数据质量清洗方案及数据质量稽核的沉淀就尤为重要,比如身份证号18位校验(15转18)、手机号为11位(如有国际电话需加国家代码)、日期格式、邮箱格式等。
脚本自动开发
在数据类项目中,数据mapping确认以后就是具体的开发了,由于数据处理方式的共性,可以高度提炼成特定类型的数据处理,比如交易流水一般采用追加的方式,每日新增数据append进来即可。状态类的历史拉链表形式等。此过程中的步骤都可以通过自动化程序来实现,同时借助于上面沉淀的具体标准内容,进一步规范化脚本开发。
指标库
对于一个行业的理解的体现是在行业指标体系的建立,行业常用指标是否覆盖全,指标加工规则是否有歧义是非常重要的两个考核项。
需求调研阶段
概要设计阶段
详细设计阶段
其中《源系统技术侧调研填报模板V1.0》、《源系统业务侧调研模板V1.0》、《需求调研模板》、《需求追踪矩阵模板V1.0》、《需求规格说明书》、
《网络架构图》、《数据流程图》、《实时数据标准接入方案》、《字段命名自动化模板V1.0》、《数据接入模板V1.0》、《工作流配置模板V1.0》、《数据元标准》、《Mapping关系模板V1.0》、《数据加载算法V1.0》、
《数据质量稽核规则库》、《数据质量报告》、《主数据表》、《主数据数据流程图》、《数据密级清单》、《加密存储清单》、《脱敏清单》、《数据生命周期配置清单V1.0》、《数据生命周期管理逻辑架构图》、《原子指标库》、《数据资源目录》、《数据数据交换配置清单》都以模板提供,进一步规范化开发。《数据资源目录管理标准》、《数据共享交换管理标准》、《数据开放共享数据权限配置清单》提供思路根据各自项目不同进行具体细化。后续的平台部署安装、日常运维以及培训过程中的系统使用、系统运维也会提供具体要求内容。
第三章:数据中台建设全过程指引
自动化程序生成–1.解放生产力,提高效率 2.开发规范化
自动化检查程序–1.发现数据问题,出具质量报告(唯一性、空值等通用问题) 2.行业知识检查(行业版内置,不同行业关注的重要数据问题,并且会不断完善知识库)
标准文件梳理–1.代码表整理 2.数据元标准整理--数据仓库内所需行业标准输入落地
数据仓库建设梳理–1.领域知识库构建 2.数据处理流程标准化–核心是主题库,解决项目上数据仓库做什么
标准文件梳理–1.共享交换 2.资源目录–解决数据共享使用问题
指标体系梳理–1.沉淀行业业务核心指标项 2.为下一步业务创新打基础
完善交付流程及行业知识库–业务流程图、网络架构图、业务系统台账等,行业知识梳理完善以后形成行业版知识(抽离通用版)
标准知识库用起来,放大功效–仓库模型设计、标准化、脚本开发、DQC、指标体系自动化构建
先解决目前项目上建设效率及处理规范化问题(各类批量处理),然后逐步完善要建成什么样的问题(标准及主题库建设),最后实现全流程自动化构建的问题。
后续将针对各步骤逐个讲解。
第四章:DQC企业设计
数据检查项如下:
大类 | 细类 | 实现逻辑 |
---|---|---|
数据标准化检查 | 所有comment不为空 | 库中所有表名、列名都不允许为空 |
字段中英文标准化检查 | 同一个中文对应不同英文,同一个英文对应不同的中文 | |
字段类型精度检查 | 同一个英文对应不同的字段类型检查以及字段精度 | |
数据元与标准词库检查 | 所有库中表名都需要包含在标准词库中 | |
值域检查 | 1.代码表检查(比如引用相关标准的值,男、女、未知等) 2.取值范围(如数值-10~10,或是枚举值范围:新建、改造等) | |
表命名检查 | 1.表名命名符合整体要求(以XX开头),具体参见XXX 2.表名应该在标准词库中 | |
工作流命名检查 | 工作流命名符合整体要求,具体参见XXX | |
脚本命名检查 | 工作流命名符合整体要求,具体参见XXX | |
数据接入 | 条数 | 包括实时与批量,数据接入每日(或每个接入周期)增量条数与源库对照 |
接入波动性检查 | 有部分库是前置库的方式非直接业务系统,需关注波动性,可能是业务系统数据下发的程序出问题了 | |
抽样数据一致性检查 | 抽样部分数据全字段比对,数据精度是否有问题,比如截断、串行、保留小数不一致等 | |
全量数据一致性检查 | 全部数据导出文件,两边数据md5比对,(如果有null这种需批量替换) | |
数据处理 | 每日增量/波动性检查 | 增量数据及波动性检查,包括SRC到ODS再到DW |
数据最新更新时间检查 | 配置业务数据更新字段,检查对应有依赖关系数据的业务日期是否一致,防治数据遗漏 | |
拉链表 | 1.重复链检查 con_str是否有重复 2.断链、交叉链检查 | |
数据唯一性检查 | 1.逻辑主键检查 2.重点关注多来源表数据是否有重复 | |
核心字段空置率检查 | 配置需检查核心表及字段,检查对应空置情况 | |
脚本执行 | 检查脚本是否执行 | |
脚本对应算法检查 | 检查脚本对应的算法 |
表结构设计
检查事项编码表 | ||
检查编码 | 检查类别 | 备注 |
0 | 通用检查 | |
1 | 拉链检查 | |
2 | 值域-代码 | |
3 | 值域范围 | |
4 | 唯一性 | |
5 | 空值 | |
6 | 格式 | |
7 | 数据接入 | |
99 | 自定义 |
历史拉链配置表 | |||||||
ID | 库 | 表 | 逻辑主键 | 检查等级 | 检查编码 | 是否启用 | 备注 |
1 | dw | XX_info | ID | 1 | 1 | 1:重复检查 2:拉链全检查 |
值域配置表--代码 | |||||||||
ID | 库 | 表 | 字段 | 标准库 | 表 | 字段 | 检查编码 | 是否启用 | 备注 |
2 |
值域配置表--范围 | ||||||||
ID | 库 | 表 | 字段 | 最小值 | 最大值 | 检查编码 | 是否启用 | 备注 |
3 |
字段级共性配置表 | |||||||
ID | 库 | 表 | 字段 | 检查项 | 检查编码 | 是否启用 | 备注 |
4 | 唯一性 | ||||||
5 | 空值 | ||||||
长度值 | 6 | 长度 | |||||
正则 | 7 | 格式 |
数据接入配置表 | ||||||||
ID | 库 | 表 | 源连接配置 | 源表 | 检查等级 | 检查编码 | 是否启用 | 备注 |
1 | 7 | 数量 | ||||||
2 | 波动性 | |||||||
3 | 抽样导出文件对比 | |||||||
4 | 全量导出文件对比 |
检查SQL记录表 | |||||
ID | 检查编码 | 细项编码 | 检查SQL | 是否启用 | 备注 |
检查日志汇总表 | |||||||
ID | 检查编码 | 业务日期 | 成功标志 | 检查开始时间 | 检查结束时间 | 是否启用 | 备注 |
检查日志明细表 | ||||||||||
ID | 检查编码 | 细项编码 | 错误条数 | 检查SQL编码 | 错误抽样 | 业务日期 | 检查开始时间 | 检查结束时间 | 是否启用 | 备注 |
今天的分享就到这里,干货满满,谢谢大家!
⬇️回复“hw”,
可下载华为大数据专场|实时|离线|数仓完整高清ppt。
往期推荐
看完本文有收获?请转发分享给更多人
文章不错?点个【在看】吧! 👇