摘要:大数据时代带来了海量、多样、非结构化的数据,我们得以进行更加广泛且深入的分析,但这必须建立在高质量的数据上才有意义。本期以企业级的视角,介绍数据质量的评价、提升与监控。
大数据时代带来了海量、多样、非结构化的数据,我们得以进行更加广泛且深入的分析,但这必须建立在高质量的数据上才有意义。本期以企业级的视角,介绍数据质量的评价、提升与监控。
大数据的时代,数据资产及其价值利用能力逐渐成为构成企业核心竞争力的关键要素;然而,大数据应用必须建立在质量可靠的数据之上才有意义,建立在低质量甚至错误数据之上的应用有可能与其初心南辕北辙背道而驰。因此,数据质量正是企业应用数据的瓶颈,高质量的数据可以决定数据应用的上限,而低质量的数据则必然拉低数据应用的下限。
数据质量一般指数据能够真实、完整反映经营管理实际情况的程度,通常可在以下几个方面衡量和评价:
- 准确性:数据在系统中的值与真实值相比的符合情况,数据应符合业务规则和统计口径。常见数据准确性问题如:
- 与实际情况不符:数据来源存在错误,难以通过规范进行判断与约束;
- 与业务规范不符:在数据的采集、使用、管理、维护过程中,业务规范缺乏或执行不力,导致数据缺乏准确性。
- 完整性:数据的完备程度。常见数据完整性问题如:
- 系统已设定字段,但在实际业务操作中并未完整采集该字段数据,导致数据缺失或不完整;
- 系统未设定字段:存在数据需求,但未在系统中设定对应的取数字段。
- 一致性:系统内外部数据源之间的数据一致程度,数据是否遵循了统一的规范,数据集合是否保持了统一的格式。常见一致性问题如:
缺乏系统联动或联动出错:系统间应该相同的数据却不一致,缺乏必要的联动和核对。
- 及时性:数据在采集、传送、处理等环节快速支持应用的程度,考察数据的时间特性对应用的满足程度。及时性关系到系统能否在规定的时间内获取到系统需要的特定时间产生的数据,以完成系统功能。常见及时性问题如:
缺乏时效性:未按照规定的数据更新时间要求对数据进行更新。
- 可用性:用来衡量数据项整合和应用的可用程度。常见可用性问题如:
- 缺乏应用功能,没有相关的数据处理、加工规则或数据模型的应用功能,获取目标数据;
- 缺乏整合共享,数据分散,不易有效整合和共享。
其他衡量标准再如有效性可考虑对数据格式、类型、标准的遵从程度,合理性可考虑数据符合逻辑约束的程度。此前一项对某企业数据质量问题进行的调研显示常见数据质量问题中准确性问题占33%,完整性问题占28%,可用性问题占24%,一致性问题占8%,在一定程度上代表了国内企业面临的数据问题。
提高数据质量的首要任务是定义一套标准化的数据规范,对具体数据项的定义、口径、格式、取值、单位等进行规范说明,形成对该数据项的具体质量要求。依托这套规范作为衡量和提高数据质量的标尺,可在数据采集、加工和应用的各环节对关键数据项进行预防性或监测性的核检。广义的企业级数据字典可以作为数据标准化规范的载体,对企业运营过程中涉及的数据项名称、业务定义和规则等要素进行收录、规范和编制,对数据项描述信息进行标准化处理,统一定义对安全性和数据质量的要求,进而为业务运营提供可靠的数据服务、提高整体数据质量奠定基础。理想情况下广义的企业级数据字典是完备的,企业各系统全部数据项都被数据字典收录,不存在同名不同义或同义不同名的情况。与此相对,狭义的数据字典通常是针对单一系统的技术属性标准,为单一系统的开发和应用服务。
企业级数据字典通常分为三层:数据项、值域和域取值。数据项层面的规范主要包括名称、业务规则定义、数据安全要求和数据质量要求等。
- 数据项名称:包括数据项的中文名称、英文名称和英文简称,含义不同的数据项名称不同,物理数据库应沿用数据字典定义的全局唯一的英文简称对字段命名
- 业务规则定义:包括数据的业务含义、转换规则、加工规则等安全元数据:包含数据来源、所有者和访问权限等安全要求的定义
- 数据质量要求:在数据规范定义基础之上,提出满足业务需要的数据长度、格式、取值、数据处理、勾稽关系等要求,以此作为数据质量管理的落脚点
值域可细分为代码域、编码域、文本域、金额域、数值域、时间域等。例如“出生地”数据项对应值域为“行政区划”代码域,引用国家标准GB-T2260-2016《中华人民共和国行政区划代码》,对应的域取值为该国标定义的代码表。再如“借记卡号”数据项对应值域为“19位卡号”编码域,定义16位卡号和19位卡号两种编码方式,不需列举对应具体的域取值。
数据质量管理是指在数据创建、加工、使用和迁移等过程中,通过开展数据质量定义、过程控制、监测、问题分析和整改、评估与考核等一系列管理活动,提高数据质量以满足业务要求。数据质量管理工作遵循业务引领的原则,确定重点质量管控范围,并动态调整阶段性管控重点,持续优化。可按照“谁创建、谁负责;谁加工、谁负责;谁提供、谁负责”的原则界定数据质量管理责任,由数据流转环节的各责任方对管辖范围内的数据质量负责。对数据质量规则优先采取系统程序的自动化控制措施,并尽可能前移管控点,从源头上控制数据质量。
数据质量监控点通常针对关键数据项设置实施,定义数据质量监控规则,生成监控报警,按严重性等级分级报告,由相应层级进行处理和响应。关键数据项根据经验判断,一般影响较广如涉及多业务条线,或应用于关键业务环节如合约签订、会计核算、绩效分析、产品定价、资金收付等,或应用于内部经营管理、对外信息披露和行业监管要求,例如财务报告数据和新资本协议实施中明确提出的重要指标项。
数据质量监控点的控制手段分为预防型和监测型:
- 预防性控制防止错误数据的产生,一般部署在数据采集点,用于控制手工输入的源数据,以及批量导入的源数据校验:
- 数据输入校验:例如贷款利率的输入校验;
- 数据阈值:例如数据非空,数据取值超出值域定义合理范围,数据格式不符合标准等;
- 质量控制方式:系统自动校验/双人手工复核;
- 系统校验方式:强制,如不符合规则无法通过。
- 监测型控制监测错误数据,发现数据质量问题进行报警。一般部署在数据加工和应用环节,验证数据完整性、一致性和准确性等:
- 数据输出校验:例如贷款余额总分核对
- 数据一致性:例如交易头寸与总帐系统记录的交易头寸一致
- 质量控制方式:系统自动校验
- 系统校验方式:非强制,错误及差异提示
对选定的关键数据项,需定义数据质量规则以及数据质量等级。数据质量等级可利用“阈值”和“容忍度”进行分级:
- 良好:数据项质量评分高于“阈值”
- 可容忍:数据项质量评分低于“阈值”,但高于“容忍度”
- 报警:数据项质量评分低于“容忍度”
- 严重报警:数据项的质量问题将带来非常严重的影响,人工经验判断
关键数据项监控点的详细信息应在企业级数据字典中维护更新,与其开发、实施和测试情况保持同步。
在进行数据质量分等级报告及响应纠错时应遵守如下原则:
- 及时性。对导致数据质量等级进入“可容忍”、“报警”和“严重报警”状态的数据质量事件能够及时发现、报告和处理;
- 规范性:针对分级别的数据质量问题,汇报至利益相关方,配置相应资源;
- 高效性:数据质量问题,在分级别规定时间内被解决。应按照“可容忍”、“报警”和“严重报警”酌情规定响应时间;
- 有序性。在开展数据质量分等级报告工作时,应有序上报、统一领导、分级负责。
部署在UDP层面的数据质量监控程序实时或定期监测关键数据项的质量,对其数据质量进行评分,通过比较该监控点的“阈值”和“容忍度”,将数据质量进行分级,对于非“良好”的评价结果,数据质量监控程序将发送报警消息通知数据质量管理人员。报警消息内容包括问题定位头文件和具体描述。数据质量管理人员根据报警信息调查问题数据项,验证报警内容,生成预警信息通知下游用户,同时填制纠错工单通知相关责任人员。相关责任人员依据纠错通知提示的具体内容,开展数据质量问题调查,提出数据质量改进需求和解决方案,由实施运维团队在数据应用层面修正,或在数据采集和集成层面修正。若纠错告警问题由数据质量要求过于严苛或控制规则错误引起,应修改关键数据项清单及其相关监控规则,并由实施运维团队修改或取消已部署的对应监控点。