关于架构:当我们聊数据质量的时候我们在聊些什么

44次阅读

共计 3237 个字符,预计需要花费 9 分钟才能阅读完成。

0x01. 数据品质检核维度介绍

一个评估规定维度提供一种测量与治理信息和数据的形式。辨别规定维度有助于:

  • 将维度与业务需要相匹配,并且划分评估的先后顺序;
  • 理解从每一维度的评估中可能 / 不可能失去什么;
  • 在工夫和资源无限的状况下,更好地定义和治理我的项目打算中的口头程序。

数据品质检核次要分为以下规定维度:

  • 完整性(Completeness):用来形容信息的残缺水平。
  • 唯一性(Uniqueness):用来形容数据是否存在重复记录,没有实体多余呈现一次。
  • 有效性(Validity):用来形容模型或数据是否满足用户定义的条件。通常从命名、数据类型、长度、值域、取值范畴、内容标准等方面进行束缚。
  • 一致性(Consistency):用来形容同一信息主体在不同的数据集中信息属性是否雷同,各实体、属性是否合乎一致性束缚关系。
  • 准确性(Accuracy):用来形容数据是否与其对应的主观实体的特色相一致(须要一个确定的和可拜访的权威参考源)。
  • 及时性(Timeless):用来形容从业务产生到对应数据正确存储并可失常查看的工夫距离水平,也叫数据的延时时长,数据在及时性上应能尽可能贴合业务理论产生时点。
  • 可信性(credibility):用来形容数据产生是否合乎客观规律。

每一规定维度可能须要不同的度量办法、机会和流程。这就导致了实现检核评估所须要的工夫、金钱和人力资源会呈现出差别。数据数据品质的晋升不是欲速不达的,在分明理解评估每一维度所需工作的状况下,抉择那些以后较为迫切的检核维度和规定,从易到难、由浅入深的逐渐推动数据品质的全面治理与晋升。规定维度的初步评估后果是确定基线,其余评估则作为持续检测和信息改良的一部分,作为业务操作流程的一部分。

0x02. 完整性

数据层面完整性维度大类下可细分为以下维度小类:

  • 非空束缚:形容检核对象是否存在数据值为空的状况。如客户开户时,客户名称是必填项,不能呈现为空的状况。

1. 非空束缚

非空束缚比拟容易了解,简略的讲就是字段不能为空,查看形式也比拟容易,只须要设定须要查看的字段,通过 sql 查问列值不能为空即可。将为空的数据查问进去进行整改。
当然非空束缚能够通过设置非空束缚的形式限度数据无奈写入数据库,如果反对这种形式能够防止预先的数据非空查看。

0x03. 唯一性

数据层面唯一性维度大类下可细分为以下维度小类:

  • 唯一性束缚:形容同一主观实体在不同业务数据集中的信息,经整合后是惟一的,针对指标通常是繁多主键或联结主键,如证件类型 + 证件号码 + 姓名雷同,则其客户编号应惟一。

1. 唯一性束缚

举个简略的例子,唯一性束缚在技术上个别具备惟一的标识字段能够判断其唯一性,在业务上能够通过几个关联的业务属性对确定惟一业务实体。若在这种状况呈现数据反复的问题,即违反了唯一性束缚。这种状况的如果是繁多的业务主键,能够通过对主键分组去重的形式查看,如果是业务联结属性判断惟一实体的状况只能业务人员进行手动查看。

0x04. 有效性

数据层面有效性维度大类下可细分为以下维度小类:

  • 代码值域束缚:形容检核对象的代码值是否在对应的代码表内。如业务规定定义“性别”的取值应该是“1- 未知的性别”、“2- 男性”、“3- 女性”、“4- 未说明的性别”,如果呈现“A”、“B”这样的取值,则认为“性别”的代码值域存在问题;
  • 长度束缚:形容检核对象的长度是否满足长度束缚。如“金融机构编码”在《人民银行金融机构编码标准》中规定长度为 14 位,如果呈现非 14 位的值,则断定为不满足长度束缚,不是一个无效的“金融机构编码”;
  • 内容标准束缚:形容检核对象的值是否依照肯定的要求和标准进行数据的录入与存储。如“贷款账号”应仅含数字,如果呈现字母或其余非法字符,则不是一个无效的“贷款账号”,不满足内容标准束缚;
  • 取值范畴束缚:形容检核对象的取值是否在预约义的范畴内。如“授信额度”取值范畴应大于等于 0,如果呈现小于 0 的状况,则超出了取值范畴的束缚,不是一个无效的“授信额度”;

1. 代码值域束缚

形容检核对象的值是否依照肯定的要求和标准进行数据的录入与存储。
例 1: 依业务规定性别只有“0: 男”,”1: 女”,则性别字段只应呈现 0 或 1。
例 2: 货币代码 (CURCODE) 只应有 RMB 或是 USD 值。
数据品质中代码值域首先要指定企业级的对立编码表,而后依照对照关系进行 etl 转换,至于出报告只须要通过 sql 查问不再范畴内的数值就能够了。

2. 长度束缚

形容检核对象的长度是否满足长度束缚。
例如身份证号是 18 位。
长度束缚能够通过建表时指定字符长度去限度,如果业务零碎最后没有做限度,只能通过 sql 判断长度的形式获取异样值再进行解决。

3. 内容标准束缚

形容检核对象的值是否依照肯定的要求和标准进行数据的录入与存储。
例如:余额或者日期等个别都会依照固定类型存储,如果最后设计为字符型后续应依照对应类型调整。
首先这种状况最好一开始就建设好对立标准,依照业务含意去指定技术类型。如果最后做的不好,能够通过类型进行数据探查,对数据对立格式化。

4. 取值范畴束缚

形容检核对象的取值是否在预约义的范畴内。
例如:余额不能为正数,日期不能为正数等等。
如果业务初始没有做限度,只能通过 sql 去对数据过滤查问,对有问题数据集中 etl 解决。

0x05. 一致性

数据层面一致性维度大类下可细分为以下维度小类:

  • 等值一致性依赖束缚:形容检核对象之间数据取值的束缚规定。一个检核对象数据取值必须与另一个或多个检核对象在肯定规定下相等。
  • 存在一致性依赖束缚:形容检核对象之间数据值存在关系的束缚规定。一个检核对象的数据值必须在另一个检核对象满足某一条件时存在。
  • 逻辑一致性依赖束缚:形容检核对象之间数据值逻辑关系的束缚规定。一个检核对象上的数据值必须与另一个检核对象的数据值满足某种逻辑关系(如大于、小于等)。

1. 等值一致性依赖束缚

个别指外键关联的场景。
例如:保单表,理赔表的保单号存在保单主表,同一张表,两个字段之间的关联关系。

2. 存在一致性依赖束缚

次要是强调业务的关联性,一个状态产生了则某个值肯定会如何。
例如:投保状态 为已投保,则 投保日期 不应为空;

3. 逻辑一致性依赖束缚

次要强调的是字段间的相互束缚关系。
例如:投保开始工夫 小于等于 投保完结工夫

0x06. 准确性

数据层面准确性次要是指取值的准确性,形容该检核对象是否与其对应的主观实体的特色相一致。
例如:投保人的性别代码为 0- 女性,尽管满足代码值域束缚,但却不满足取值准确性束缚,因为该人为男性,其性别代码应为1- 男性
再如:国内保函业务的手续费应录入为 国内担保手续费支出 ,却录入成 国内担保手续费支出
准确性要求不仅数据的取值范畴和内容标准满足有效性的要求,其值也是主观真实世界的数据。由此可见,无效的数据未必是精确的,反之成立。
准确性通常须要业务人员或其余当事人手工核查。

看待这种状况,数据品质规定没方法间接对立解决,只能通过即便查问的形式对数据后果进行具体核查。

0x07. 及时性

及时性束缚:形容检核数据是否及时反映其对应的理论业务的时点状态。
例如:零碎中 贷款五级分类 的分类比理论中的提早几天变动;再如理财业务在理财零碎中是胜利状态,但在外围零碎中却因通信的起因而没有入账。
及时性因为多个零碎、通信等起因而造成,通常须要业务人员或零碎人员手工核查。
一般来说数据同步都是基于业务零碎的落表技术字段(比方:CREATE_DT),而真是业务产生的工夫可能与该字段存在工夫距离。能够通过简略的 sql 对两个工夫比拟,判断数据的及时性是否合乎需要。

0x08. 可信性

数据可信性束缚:形容再数据同步中每日 / 月增量数据是否合乎实践的经验值。
例如:保单数据的每日分区数据较前日个别有 10% 增长,忽然数据增长变为 200%,这种状况有可能时数据同步呈现问题。
再如:每月的营收总额个别都按肯定法则上涨,忽然数据稳定较大则个别都可能呈现问题。
可信性要求数据的总量稳定合乎根本客观规律,个别通过对 7,15,30 日数据进行比拟,如果呈现差距较大则进行具体的问题探查。

正文完
 0