一. 数据完整性
完整性是指数据的记录和信息是否完整,是否存在缺失的情况。数据的缺失主要包括记录的缺失和记录中某个字段信息的缺失,两者都会造成统计结果不准确,所以说完整性是数据质量最基础的保障。
记录的缺失:比如交易中每天支付订单数都在100万笔左右,如果某天支付订单数突然下降
到1万笔,那么很可能就是记录缺失了。
记录中某个字段信息的缺失:对于记录中某个字段信息的缺失,比如订单的商品ID、卖家ID都是必然存在的,这些字段的空值个数肯定是0,一旦大于0就必然违背了完整性约束。
具体参考如下:
1.主要对象编码和注册编码规则
1.1必填规则
主要对象编码和注册编码字段等关联字段字段值不能为空,为空时不入主表,需中止任务进行,遵循强规则。
1.2唯一性约束
在主表中主要对象编码和注册编码必须保持唯一, 即每个主要对象编码和注册编码只能对应一个记录,字段不能重复出现,遵循强规则。
1.3引用完整性约束
如果主要对象编码和注册编码是与其他表格关联的外部键,需要设置引用完整性约束,确保在更新或删除记录时不会破坏数据的完整性,遵循强规则。
2.必填字段规则
2.1必填规则
规定某些字段必须填写,为空则视为问题数据,遵循强规则。
3.非必填字段规则
3.1非必填规则
规定某些字段可为空,但最好尽量填写。
3.2统计规则
非必填填字段需要统计其每个字段有值的比例,用于分析数据的完整度。
4.数据采集规则
4.1采集前后数量对比规则
在数据采集工作完成后,需要对采集到的数据条数进行核对,确保采集到的数据条数与各个数据源中的数据条数之和一致。
举例:
假设测站基础信息包含水雨情和物联网两个数据源,水雨情中有1000条记录,物联网中有2000条记录,那么整个测站基础信息表应该有3000条记录。在完成数据采集后,需要对采集到的数据条数进行计数,以确保采集到的数据完整、准确并且没有遗漏。
4.2数据类型和格式的一致性规则
不同的数据源可能采用不同的数据类型和格式,例如日期格式、数字格式等。在数据采集过程中,需要对不同数据源的数据类型和格式进行兼容性处理,确保数据一致性。
4.3数据精度和粒度的一致性规则
不同数据源的精度和粒度也会不同,例如时间粒度、测量精度等。在数据采集和整合过程中,需要考虑这些差异并进行处理,以确保数据一致性和可比性。
举例:
对于一个气象站,它通过不同的传感器采集气温、湿度、风速等多项气象数据。但是不同传感器的精度可能不同,例如某一传感器的温度测量精度为0.1℃,而另一传感器的温度测量精度只有0.5℃。在对这些数据进行整合时,需要考虑到这些差异并进行处理,例如可以对低精度的数据进行插值处理,提高数据的精确度。
另外一个例子是时间粒度的不同。例如在一个交通流量监测系统中,不同的监测点可能会记录不同时间粒度的数据,例如某一监测点每分钟记录一次车流量,而另一监测点则每10分钟才记录一次车流量。在对这些数据进行整合时,需要将不同时间粒度的数据转换成相同的时间粒度,以方便后续的数据分析和比较。例如可以将每分钟记录的数据进行聚合,计算出每10分钟的总车流量。
综上所述,数据精度和粒度的不同会对数据的可比性和一致性造成影响,因此在数据采集和整合过程中需要进行相应的处理,以确保数据的一致性和可比性。
4.4采集周期规则
4.4.1定时采集
按照固定的时间间隔进行数据采集,例如每小时、每天、每周等。这种规则适用于需要实时或定期监测的情况,如气象数据、水位数据等。
4.4.2事件触发采集
根据特定事件的发生进行数据采集,例如传感器检测到某个阈值的变化或触发条件满足时进行数据采集。这种规则适用于需要对特定事件做出及时响应的情况,如地震监测、火灾报警等。
4.4.3条件触发采集
根据事先设定的条件进行数据采集,例如在某些特定环境条件下或特定操作完成后进行数据采集。这种规则适用于特定条件下的监测任务,如温度、湿度、压力等。
4.4.5自适应采集
根据数据变化的速率或重要性动态调整采集周期。例如,在数据变化较慢或不太重要时延长采集周期,而在数据变化迅速或较为重要时缩短采集周期。这种规则可以根据实际需求和资源情况进行灵活调整。
二.数据规范性
规范性指的是数据是否符合预定的语法规则和定义。在数据采集和处理过程中,可以通过以下方式对数据进行规范性判断。
1.编码格式和编码长度
根据国家标准或其他参考文件中定义的规范,对数据的编码格式和编码长度进行强规则校验。当进行编码格式和编码长度的规范性判断时,可以采取以下具体的措施:
1.1统一编码格式
在不同系统之间进行数据交换时,应该使用相同的编码格式,例如UTF-8、GB2312等。这样可以避免因编码不一致而出现乱码等问题。
1.2使用正则表达式进行格式匹配
针对需要符合特定格式的字段,可以使用正则表达式对数据进行校验。例如,对于日期格式(如YYYY-MM-DD),可以使用正则表达式"\d{4}-\d{2}-\d{2}"来进行匹配,确保数据符合规定的格式。
1.3检查编码长度
对于需要限制编码长度的字段,可以通过比较字段值的长度与预定的最大长度进行判断。例如,如果某个字段的最大长度为10,可以检查数据的长度是否超过了10个字符,如果超过则认为数据不符合规范。
1.4考虑特殊字符和空格
在进行编码格式和编码长度的校验时,还应考虑特殊字符和空格的影响。特殊字符和空格可能会导致编码格式不符合要求,或者在计算编码长度时引入额外的字符。因此,在判断编码格式和编码长度时,应注意去除特殊字符和空格,确保数据的准确性。
总结:需要根据具体的国家标准或其他参考文件中定义的规范,选择适当的方法进行编码格式和编码长度的校验。这样可以确保数据符合预定的格式和长度要求,提高数据的规范性和一致性。
2.字典值
当进行字典值判断时,可以采取以下具体的措施:
2.1预定义字典值
首先根据相关的国家标准或规定,确定特定字段的预定义字典值。
例如:
(1)水文站点类型:根据水利部门的标准或规定,可以定义水文站点的类型,如河道站、湖泊站、水库站等。
测站级别:根据水利部门的标准或规定,可以定义测站的级别,如国家级、省级、地市级等。
(2)水位警戒值:根据水利部门的标准或规定,可以定义水位的警戒值,如红色预警、橙色预警、黄色预警等。
(3)水流量等级:根据水利部门的标准或规定,可以定义水流量的等级,如小流量、中流量、大流量等。
(4)水质类别:根据水利部门的标准或规定,可以定义水质的类别,如I类水、II类水、III类水等。
2.2统计或标记异常值
对于需要从预定义字典值中选择的字段,可以进行弱规则判断。具体做法是,将数据与预定义字典值进行比对,如果数据在字典值范围内,则认为数据符合规范;如果数据不在字典值范围内,则认为数据不符合规范。如果数据不符合预定义的字典值范围,可以进行统计或标记,以便后续处理。可以记录不符合字典值的数据数量,或者在数据中添加特定的标记,以示区分。
2.3考虑大小写和格式
在进行字典值判断时,还应考虑大小写和格式的影响。有些情况下,字典值可能要求严格匹配大小写,而有些情况下可能不区分大小写。因此,在判断字典值时,应注意进行大小写转换或比较,确保数据的准确性。
总结:需要根据具体的国家标准或规定,选择适当的字典值判断方法。这样可以确保数据符合预定义的字典值要求,提高数据的规范性和一致性。
3.数值类型对象
当对数值类型的字段进行精度判断时,可以采取以下具体方法来确保数据的精度符合要求:
3.1确定精度要求
首先根据相关管理部门的要求或业务需求,确定该数值字段需要的精度要求。例如,经度字段可能需要精确3位整数8位小数位,纬度则是精确2位整数8位小数位;如果数据的精度不符合要求,可以进行相应的处理。例如,对于经度字段,可以截断或四舍五入小数部分,以满足预定的精度要求。
3.2数据格式验证
对于字段的数值数据,可以使用正则表达式或其他方法验证其格式是否符合要求。例如,经纬度字段应为数字类型,并且小数位数不能超过预定要求。
3.3范围检查
除了精度要求外,还需要对数值字段的范围进行检查,确保其在合理范围内。例如,经度的范围应在-180到+180之间。如果数据的精度超出了预定的范围,可以进行标记或特殊处理。例如,可以将超出精度要求的数据标记为异常值,以便后续的数据分析和处理。
总结:需要根据具体的要求和业务场景来确定数值字段的精度判断方法,并确保数据的精度符合要求,以提高数据的准确性和可用性。
三.数据一致性
1.参照完整性规则
对于存在外关联字段的表,例如基础信息表中的行政区划GUID字段,可以验证该字段值是否在行政区划表中存在。这样可以确保数据的参照完整性,避免无效的关联数据和不一致的引用,遵循弱规则。
2.业务逻辑校验
2.1单表等值一致性
可以通过验证某一属性值是否与本实体其他属性计算值相等来确保单表的等值一致性。
例如,在水位观测数据表中,可以验证某一时刻的水位值与该时刻的水量和截面积的计算值是否相等。如果存在不一致的情况,可能意味着数据录入或计算过程中存在错误。根据业务需求和规则,对数据记录进行逻辑校验。
2.2单表逻辑一致性
可以通过验证某一属性值与本实体其他属性之间的逻辑关系来确保单表的逻辑一致性。
例如:水文特征点需满足:水库最低点水位 <= 死水位 < 主汛期限制水位 <= 正常蓄水位 <= 防洪高水位 <= 设计洪水位 < 校核洪水位;水库最低点至坝顶之间需满足“面积和库容随着水位逐步增高而增高”等。
四.数据唯一性
数据唯一性是数据质量管理中的一个重要指标,它表示数据库中的数据不存在重复的情况。
数据重复指的是数据库中存在两条或多条数据的值相同,这种情况下需要对数据进行去重处理。对于重复数据,可以通过标注、删除或合并等方式进行处理。比如真实成交 1 万条,但数据表有 3000 条重复了,成了 1.3 万条成交记录,这种数据不符合数据唯一性。基础数据中我们需要根据主键或唯一性编码判断数据是否唯一。同时,还需要分析数据重复的原因,例如数据录入错误、系统故障或算法不准确等,以便在后续的数据管理中避免同类问题的发生。
五.数据及时性
数据及时性是指数据从产生到可以查看的时间间隔,也称为数据的延时时长。在统计数据中,我们通常使用T+1来表示数据的及时性,即当天产生的数据在第二天可以查看。
为了评估数据的及时性是否符合要求,可以采取以下两个方面的分析:
1.基础数据的分析
基础数据一般通过系统级任务状态进行统计。你可以通过查看每天任务运行的状态来判断数据的及时性。如果任务按时运行并成功完成,那么可以认为基础数据的及时性符合要求。如果有任务延迟或出现错误,那么可能会导致数据延迟或不准确。
2.监测类统计数据的分析
监测类统计数据可以根据数据条数增量以及库表中最新数据时间标识字段进行分析。你可以比较每天新增的数据条数,如果每天的数据增量保持在一个较稳定的范围内,那么可以认为数据的及时性较好。另外,你还可以查看库表中的最新数据时间标识字段,如果该字段的值与当前日期相符,那么可以认为数据的及时性符合要求。
附录:
数据监控规则有强规则和弱规则:
- 强规则:一旦触发报警就会阻断任务的执行(将任务置为失败状态,使下游任务不会被触发执行)。
- 弱规则:只做记录但不阻断任务的执行。