数据建模
本文介绍数据建模的相关问题。
逻辑表质量规则都支持哪些云计算资源?
目前包含MaxCompute、Hive、ApsaraDB for RDS、DataHub Service、PostgreSQL、AnalyticDB PostgreSQL、Kafka。
逻辑表质量规则都包含哪些?
主要包含表规则、字段规则和自定义SQL规则。
表规则说明:
规则类型 | 说明 |
---|---|
表行数 | 取当前分区的表行数。 |
存储大小 | 取对应分区的物理存储量,与期望值进行比较,只要符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
主键唯一 | 对应分区,表主键字段值去重后的count数是否等于分区记录数,等于则规则通过,不等于则规则不通过。 |
多表记录数波动率 | 源表对应分区的表行数,同目标表的表行数进行比较,计算波动率。再与期望阈值进行比较,只要符合规则则通过。 波动率计算公式=【(源表当前分区的表行数-对比指定分区的表行数)/源表当前分区的表行数】*100%。 比较方式默认为绝对值。 |
数据完整率 | 表分区所选字段值全部非空的count数与表分区总记录数的比率与一个固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
数据唯一性 | 表分区所选字段值去重后的count数与表分区总记录数的比率与一个固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
字段规则说明:
配置项 | 说明 |
---|---|
最大值 | 对应分区,该字段的最大值与期望的固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
最小值 | 对应分区,该字段的最小值与期望的固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
平均值 | 对应分区,该字段的平均值与期望的固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
汇总值 | 对应分区,该字段的sum值与期望的固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
唯一值 | 对应分区,去重后的count数与一个期望固定数字进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
唯一率 | 对应分区,字段的唯一值个数与总行数的比率与一个固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
重复值 | 对应分区,总行数减去重后的个数,即字段重复值的个数。重复值个数与期望的固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
重复率 | 对应分区,重复值个数与总行数的比率与一个期望固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
空值数量 | 对应分区,该字段的空值数与期望固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
空值率 | 对应分区,字段空值的个数与行总数的比率与一个期望固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
离散值分组个数 | 对应分区,字段分组,各离散点count值与一个期望固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
离散值状态值 | 对应分区,字段分组,离散点总数与一个期望固定值进行比较,符合规则则通过。 比较方式包括:>、<=、>=、<=、=和!=。 |
字段值长度准确性校验 | 对应分区,字段值长度与期望的固定值进行比较,全部符合规则则通过。 比较方式默认为<=。 |
字段类型准确性校验 | 取表字段的字段类型元数据与期望的类型进行比较,符合规则则通过。 |
标准字典值校验 | 对应分区,字段值与对应数据字典的值编码进行比较,字段值全部存在于字典的值编码中的,则规则通过。 |
自定义SQL规则:
单表自定义SQL:除了表和字段不支持的规则外的其他自定义SQL规则返回值和期望值做对比。
说明Select结果仅支持返回一行一列的值。
多表自定义SQL:逻辑表和其他逻辑表的自定义SQL规则返回值进行运算和期望值做对比。(比如:本表SQL执行输出与关联表SQL执行输出进一步的计算逻辑支持${result_1}和$ {result_2}的四则运算,支持使用abs取绝对值的运算比如:(${result_1}+5*abs(${result_1}-${result_2}))/2)
逻辑表数据质量的强规则和弱规则有什么区别?
强规则:如实际结果不满足规则,则该单项数据质量为较差。
弱规则:常规规则,如实际结果不满足规则,则该单项数据质量为一般。