学习笔记2 - 利用元数据管理数据质量

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: 大数据Clouder:利用元数据管理数据质量 元数据①定义:元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。

大数据Clouder:利用元数据管理数据质量

元数据
①定义:元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
元数据(Metadata)是描述其它数据的数据(data about other data),或者说是用于提供某种资源的有关信息的结构数据(structured data)。
②基本特点:
a)元数据一经建立,便可共享。
b)元数据首先是一种编码体系。
c)由于元数据也是数据,因此可以用类似数据的方法在数据库中进行存储和获取。
注意:用户在使用数据时可以首先查看其元数据以便能够获取自己所需的信息。
③分类:技术元数据,业务元数据,管理元数据。
④功能:描述,定位,管理,检索,评估和选择,交互,异构信息资源的集成和共享,控制限定检索的信息。
⑤作用:简单信息的查询,血缘图分析,协助数据仓库的数据处理,系统安全、日常运维,通过元数据进行数据质量管理。
注意:最根本的作用是让数据能高效应用,信息准确传承。

元数据的采集:SQL解析器(包括的功能模块:词法分析器,语法分析器,管理,元数据生成器,错误检测处理)。
注意:数据仓库与元数据库逻辑上是分离的。
元数据的存储:关系型数据库,符合CWM模型规范。存哪些元数据,存到哪个数据模块中。
注意:CWM,CommonWarehouseMetamodel,公共仓库元模型。
存储模型:直接将元模型转化为库表,即一对一存储。按照元元模型的方式,即通用存储。

元数据的功能层:提供基本功能,简化应用开发,方便维护管控。
元数据的应用层

DataIDE中元数据管理相关的功能模块:数据管理,运维中心。
①项目的元数据信息:IDE页面->数据管理->全局概览->总项目数,总表数,占用存储量,消耗计算量,项目血缘分布图、概述,项目占用存储Top,表占用存储Top,热门表。
②表的元数据信息:IDE页面->数据管理->数据表管理->点击表名称->表的详细信息。
③工作任务的元数据信息:IDE页面->运维中心->任务列表->周期任务、手动任务->任务的详细信息 。
④节点任务的元数据信息:
(1)IDE页面->运维中心->任务列表->周期任务、手动任务->点击名称->双击节点名称->节点的详细信息:属性,操作日志,代码 。
(2)IDE页面->运维中心->任务运维->周期实例、手动实例->点击实例名称->双击节点名称->节点的详细信息:属性,运行日志,操作日志,代码 。

管理数据质量:
对底层明细数据与上层汇总数据进行核对,看是否存在数据不一致的情况。
利用元数据定位数据质量问题点。
修正数据加工逻辑,解决数据质量问题。

1
2
3
4
5
6
7
11
12

对应的实验

实验环境:DataWorks->项目->进入工作区->IDE页面。
实验步骤:
1、数据准备上传到MC中:建表“ODS_CUST_xxx”,“DIM_xxx”->导入本地数据,上传数据到MaxCompute中。
注意:首行为标题,默认为是。
查询语句:
select * from ODS_CUST_xxx;
select count(*) from ODS_CUST_xxx;

2、数据加工流程:
(1)创建客户行为信息明细表“DW_CUST_INCOME_CALL_FLUX”,用于保存客户基本的行为信息,包括消费、通话、流量使用情况等等。
(2)创建客户行为信息年龄层级汇总表“ST_AGE_CUST_INCOME_CALL_FLUS”,用于各年龄层次维度对应的客户消费、通话、流量使用情况的汇总信息。
①建表
②新建任务,用于生成表->任务类型:工作流任务,名称:(1)表、(2)表,调度类型:手动调度。
③选择节点组件->虚节点,ODPS_SQL->在编辑页面写入sql,并配置好参数,保存后返回。注意:此时不需要点击运行。
④连接节点->保存->提交->测试运行->前往运维中心->查看跑出的数据。查询语句:
select * from DW_CUST_INCOME_CALL_FLUX;
select * from ST_AGE_CUST_INCOME_CALL_FLUX;
注意:正在测试跑数的程序,具体的跑数情况,可以跳转至运维中心进行查看。

3、捕获数据质量核查结果:
主要捕获底层数据与上层展示数据的一致性检查结果。我们抽取三个指标进行核查,应收费用(SHOULD_FEE)、忙时主叫时长(BUSY_INITIATIVE_CALL_DUR)、忙时下行流量(BUSY_DOWN_FLUX)。
①建表->创建数据核查结果表“RPT_METEDATE_DATE_CHECK”,用于最终的数据核查结果。
②新建任务,用于生成表
③选择节点组件
④连接节点->保存->提交->测试运行->前往运维中心->查看跑出的数据。查询语句:
select * from RPT_METEDATE_DATE_CHECK;
注意:因为部分元数据信息不是实时更新的,例如:血缘不是实时更新的,是每天定时更新。所以此步执行完之后,需等待元数据信息更新,待第二天元数据信息更新后,再进行下一步操作。

4、利用元数据定位数据质量问题点:
select * from RPT_METEDATE_DATE_CHECK where check_item_name = '应收费用';
字段diff_value值不为0,展现层的数据与底层的数据出现了差异。
①查询展示表与数据源表直接的血缘链路:IDE页面->数据管理->数据表管理->我管理的表->搜索展现层的数据表->血缘信息->字段血缘-> 重复操作,直到定位到数据源表。
注意:表名搜索是模糊匹配查询 。
②依次查看表中的应收费用是否一致:展示表ST_AGE_CUST_INCOME_CALL_FLUS、数据源表ODS_CUST_INCOME、仓库表DW_CUST_INCOME_CALL_FLUX、中间表TMP_ST_AGE_CUST_INCOME_CALL_FLUS_001。
③找出数据加工的逻辑问题。
④查看节点sql代码:运维中心->任务运维->测试案例->双击节点->代码。

可能的问题:
1)join关联:只会取主表、从表中均存在的关联字段数据进行处理,对于主表中存在,但是在从表中不存在的关联字段数据,会剔除掉。即数据表中某条记录为空值,导致关联表时这条记录没有关联到 。
2)left outer join关联:如果关联字段从表中出现重复记录,则会产生数据量变大的情况。
3)where语句控制。
5、修正数据加工逻辑,解决数据质量问题:
IDE页面->任务开发->点击搜索,查询程序名称:客户行为信息明细表,客户行为信息年龄层级汇总表->双击任务名称->双击节点->修改sql语句->保存->提交->分别进行,测试运行->前往运维中心->查看任务是否跑数成功->成功->查看跑出的数据:展示层数据与源表数据的应收费用的差异情况。
select CHECK_ITEM_NAME,

ROUND(DATA_VALUE,2) AS DATA_VALUE,
ROUND(SOURCE_DATA_VALUE,2) AS SOURCE_DATA_VALUE

from RPT_METEDATE_DATE_CHECK
where CHECK_ITEM_NAME = '应收费用';

目录
相关文章
|
5月前
|
数据管理 大数据
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第15章数据管理能力成熟度评估篇
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第15章数据管理能力成熟度评估篇
|
5月前
|
存储 数据采集 安全
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第12章元数据管理篇
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第12章元数据管理篇
|
5月前
|
数据采集 存储 数据管理
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 数据管理
数据治理专业认证CDMP学习笔记(思维导图与知识点)- 数据管理
|
存储 数据管理 大数据
电商项目之数仓的元数据管理讲解|学习笔记
快速学习电商项目之数仓的元数据管理讲解
90 0
电商项目之数仓的元数据管理讲解|学习笔记
|
存储 数据管理 开发者
元数据管理的可扩展性 | 学习笔记
快速学习元数据管理的可扩展性
112 0
元数据管理的可扩展性 | 学习笔记
|
存储 算法 安全
元数据管理的高可用性 | 学习笔记
快速学习元数据管理的高可用性
132 0
元数据管理的高可用性 | 学习笔记
|
存储 数据管理 数据挖掘
数据管理--文件管理规范示例|学习笔记
快速学习 数据管理--文件管理规范示例
102 0
数据管理--文件管理规范示例|学习笔记
|
数据管理 大数据 开发者
R 基本数据管理--如何处理缺失值、日期值得使用、数据类型转换|学习笔记
快速学习R 基本数据管理--如何处理缺失值、日期值得使用、数据类型转换
137 0
|
存储 数据管理 Docker
Docker 学习笔记-数据管理
Docker 学习笔记-数据管理
90 0
|
数据管理 大数据 开发者
R 基本数据管理--数据集合并、子集的提取以及随机抽样函数| 学习笔记
快速学习 R 基本数据管理--数据集合并、子集的提取以及随机抽样函数
125 0