掌桥专利:专业的专利平台
掌桥专利
首页

数据质量检查框架方法和系统

文献发布时间:2023-06-19 18:34:06


数据质量检查框架方法和系统

技术领域

本发明涉及数据质量检查技术领域,具体地,涉及数据质量检查框架方法和系统。

背景技术

随着企业数字化建设的飞速发展和数据主题、数量持续增长,单一系统已经难以满足企业运营的需求,不仅包括人、财、物、管等主题的应用系统,还会涉及到与信息化和数字化转型相关的开发工具链软件和办公工具链软件,日常管理运营和研发生产中,依赖数个或数十个系统的相互配合。系统交互本质上是数据的交互,交互过程中往往存在某一系统依赖另外一个系统的数据,即该系统的数据源为另外一个系统。若数据源系统中的数据有更新,两个系统之间就会存在数据差异,导致出现数据质量问题。

现代企业要将数据业务看作是一种底层业务,它支撑着后台的人财物管、中台的研发、生产,以及前台的市场、渠道。提升数据质量,是夯实数据业务的基础,只有高质量的数据才能为前中后台业务提供有效的数字化转型支持。

此外,企业在数字化转型过程中,往往面临不同主题、不同系统之间的各类数据质量问题,因此,主数据宿主系统与数据应用系统之间,需要建立一套数据质量检查的机制,能够确保数据在不同系统之间、不同主题数据之间保持具有较高的一致性。因此,为了提升数据质量,一方面要能对各类数据质量问题用模式化的方式进行检查校验;另一方面还要能对已识别数据质量问题的类别、数量、治理效果进行观测;以便让相关方能基于对数据质量水平的理解,做出合理的理解,更为顺畅的推进数字化转型。

现有技术是在获取待治理数据后,根据一定的数据治理标准,调用数据治理工具对待治理数据进行治理并生成治理结果。

专利文献CN112988720A公开了一种数据治理方法、装置、设备及存储介质,其在数据治理方法中,将数据写入数据模型之前,校验该数据是否符合与数据治理标准适配数据校验规则;若不符合,则可先对该数据执行数据治理操作,再将治理得到的数据写入数据模型。

专利文献CN110008208A公开了一种数据治理方法及系统,其根据数据治理任务调用相应的数据治理工具,根据数据治理工具对所述待治理数据进行治理,生成治理结果。

但是现有技术未提供模式化的方式进行检查校验。

发明内容

针对现有技术中的缺陷,本发明的目的是提供一种数据质量检查框架方法和系统。

根据本发明提供的一种数据质量检查系统,包括:

数据提取模块:提取自身系统的数据、数据源的数据;

数据比对模块:遍历自身系统的数据,与数据源的数据进行比对,得到数据源未收录的数据;遍历数据源的数据,与自身系统的数据进行比对,得到自身系统未收录的数据;

问题归类模块:对所述未收录的数据,根据业务规则以主题分类,在主题下形成不同的问题类别,按照影响范围归类,得到已归类的问题数据;

准确性校验模块:将已归类的问题数据提取并遍历,与自身系统数据及数据源比对,将符合实际数据情况的问题数据认为是准确的。

优选地,所述数据比对模块,包括:

第一比对模块:遍历自身系统的数据,与数据源的数据进行比对,以主题为索引条件,筛选出自身系统符合主题索引的数据;以数据唯一性ID为条件,在数据提取得到的数据源中检索ID匹配的记录;若未匹配到,则记录该ID对应的主题及机构数据;

第二比对模块:遍历数据源的数据,与自身系统的数据进行比对,解析获取到的数据源,形成记录储存在本地服务器,之后以主题为索引条件,以数据唯一性ID为条件,遍历自身系统中ID匹配的记录;若未匹配到,则记录该ID对应的主题及机构数据;

第三比对模块:数据状态单向比对,检查数据状态的一致性,其中,以主题为索引条件,筛选出自身系统符合主题索引的数据;通过读取JSON文件中配置的需要检查的字段,遍历自身系统中的需检查字段并与数据源比较;若状态不一致,则记录对应的主题、机构数据及不一致的状态;其中,比对功能通过Nodejs和Promise实现,并暂时存储在本地服务器缓存中,以键值对的形式保持,等待处理。

优选地,准确性校验模块通过解析已归类问题记录中的问题明细,遍历问题明细并重新确认问题明细中的每个已归类问题记录是否符合实际数据情况,包括:

若已归类问题为自身系统数据缺失,则问题明细内所有记录应该同时满足不存在于自身系统且存在于数据源中;

若已归类问题为自身系统存在数据源中未收录的数据,则问题明细内所有记录应该同时满足不存在于数据源且存在于自身系统;

若已归类问题为状态不一致,则问题明细内所有记录应同时满足存在于自身系统和数据源,且状态不同;

若未通过准确性校验,问题记录不会进入数据库,并在日志中打印出未通过准确性校验的记录。

优选地,准确性校验模块仅在首次数据比对后进行,确保首次数据比对的准确性,避免例行比对时一直产生错误的结果;在数据提取时,会提取id、所属机构、责任人的相关字段,并在服务器中缓存;数据比对结束,会将所有的问题数据先按主题归类,之后以所属机构为索引,每个所属机构形成一条记录,储存该机构下问题数据的id、责任人的相关字段。

根据本发明提供的一种数据质量检查方法,包括:

数据提取步骤:提取自身系统的数据、数据源的数据;

数据比对步骤:遍历自身系统的数据,与数据源的数据进行比对,得到数据源未收录的数据;遍历数据源的数据,与自身系统的数据进行比对,得到自身系统未收录的数据;

问题归类步骤:对所述未收录的数据,根据业务规则以主题分类,在主题下形成不同的问题类别,按照影响范围归类,得到已归类的问题数据;

准确性校验步骤:将已归类的问题数据提取并遍历,与自身系统数据及数据源比对,将符合实际数据情况的问题数据认为是准确的。

优选地,所述数据比对步骤,包括:

第一比对步骤:遍历自身系统的数据,与数据源的数据进行比对,以主题为索引条件,筛选出自身系统符合主题索引的数据;以数据唯一性ID为条件,在数据提取得到的数据源中检索ID匹配的记录;若未匹配到,则记录该ID对应的主题及机构数据;

第二比对步骤:遍历数据源的数据,与自身系统的数据进行比对,解析获取到的数据源,形成记录储存在本地服务器,之后以主题为索引条件,以数据唯一性ID为条件,遍历自身系统中ID匹配的记录;若未匹配到,则记录该ID对应的主题及机构数据;

第三比对步骤:数据状态单向比对,检查数据状态的一致性,其中,以主题为索引条件,筛选出自身系统符合主题索引的数据;通过读取JSON文件中配置的需要检查的字段,遍历自身系统中的需检查字段并与数据源比较;若状态不一致,则记录对应的主题、机构数据及不一致的状态;其中,比对功能通过Nodejs和Promise实现,并暂时存储在本地服务器缓存中,以键值对的形式保持,等待处理。

优选地,准确性校验步骤通过解析已归类问题记录中的问题明细,遍历问题明细并重新确认问题明细中的每个已归类问题记录是否符合实际数据情况,包括:

若已归类问题为自身系统数据缺失,则问题明细内所有记录应该同时满足不存在于自身系统且存在于数据源中;

若已归类问题为自身系统存在数据源中未收录的数据,则问题明细内所有记录应该同时满足不存在于数据源且存在于自身系统;

若已归类问题为状态不一致,则问题明细内所有记录应同时满足存在于自身系统和数据源,且状态不同;

若未通过准确性校验,问题记录不会进入数据库,并在日志中打印出未通过准确性校验的记录。

优选地,准确性校验步骤仅在首次数据比对后进行,确保首次数据比对的准确性,避免例行比对时一直产生错误的结果;在数据提取时,会提取id、所属机构、责任人的相关字段,并在服务器中缓存;数据比对结束,会将所有的问题数据先按主题归类,之后以所属机构为索引,每个所属机构形成一条记录,储存该机构下问题数据的id、责任人的相关字段。

根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现所述的数据质量检查方法的步骤。

根据本发明提供的一种电子设备,包括所述的数据质量检查系统,或者包括所述的存储有计算机程序的计算机可读存储介质。

与现有技术相比,本发明具有如下的有益效果:

1、本发明实现了数据治理本身的数字化,覆盖数据质量问题的提取、分类、检查、关联、监测等场景,形成完整的闭环方案设计。

2、本发明在首次比对后进行准确性校验,确保校验的准确性。未通过校验的数据将无法被归入检查表。

3、本发明采用双向数据比对、按主题进行问题归类、将数据质量问题与相关当事方关联,便于明确相关责任方主体获取信息,提供了模式化的方式进行检查校验。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明的模块之间工作配合的原理示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

如图1所示,根据本发明提供的一种数据质量检查系统,包括:

数据提取模块:提取自身系统、数据源的目标数据库的数据。所述数据提取模块包括:数据库提取模块:若数据源系统提供接口,则直接调用接口,单次或者批量将目标数据库的响应数据以键值对的形式缓存在本地服务器;接口提取模块:若数据源系统提供可读写的数据库表或者暴露出可访问的数据库表,则调用负责建立接口的接口模块,向数据库表中的数据源目标数据库发送请求,将目标数据库的响应数据以键值对的形式缓存在本地服务器。

数据比对模块:对数据进行双向比对。所述数据比对模块,包括:第一比对模块:负责基于自身系统的数据,发起与数据源数据比对;具体地,以主题为索引条件,筛选出自身系统符合主题索引的数据;以数据唯一性ID为条件,在数据提取得到的数据源中检索ID匹配的记录。若未匹配到,则记录该ID对应的主题及机构数据;第二比对模块:负责基于数据源数据,发起与自身系统的数据比对;具体地,解析获取到的数据源,形成记录储存在本地服务器,之后以主题为索引条件,以数据唯一性ID为条件,遍历自身系统中ID匹配的记录。若未匹配到,则记录该ID对应的主题及机构数据;第三比对模块:数据状态单向比对,检查数据状态(运行状态、有效期等)的一致性:以主题为索引条件,筛选出自身系统符合主题索引的数据;通过读取JSON文件中配置的需要检查的字段,遍历自身系统中的需检查字段并与数据源比较。若状态不一致,则记录对应的主题、机构数据及不一致的状态。其中,比对功能通过Nodejs和Promise实现,并暂时存储在本地服务器缓存中,以键值对的形式保持,等待处理。

问题归类模块:通过数据比对模块获得的数据,根据业务规则以主题分类,在主题下形成不同的问题类别,按照影响范围(机构、阶段等)归类,根据用户的配置,将每条归类的问题形成一条记录,插入数据治理库表中,通过自增id构建索引。

准确性校验模块:将已归类的问题数据提取并遍历,与自身系统数据及数据源比对。准确性校验模块仅在首次数据比对后进行,确保首次数据比对的准确性,避免例行比对时一直产生错误的结果。准确性校验模块通过解析归类问题记录中的问题明细,遍历明细并重新确认明细中的每个记录都符合实际数据情况,例如,若问题为自身系统数据缺失,则明细内所有记录应该同时满足不存在于自身系统且存在于数据源中;又例如,若问题为自身系统存在数据源中未收录的数据,则明细内所有记录应该同时满足不存在于数据源且存在于自身系统;再例如,若问题为状态不一致,则明细内所有记录应同时满足存在于自身系统和数据源,且状态不同。若未通过准确性校验,问题记录不会进入数据库,并在日志中打印出未通过准确性校验的记录。

根据本发明提供的一种数据质量检查方法,包括:

步骤1:数据提取步骤。数据提取主要分为两种,数据库提取和接口提取。若数据源提供可读写的数据库表,或暴露出可访问的数据库,即可通过数据库提取的方式获取数据源数据;若无法提供数据库,也可以通过接口提取方式单次或批量获取数据。

步骤2:首次数据比对步骤。所述步骤2包括:步骤2.1:遍历自身系统的数据,与数据源数据进行比对,得到数据源未收录的数据。以主题为索引条件,筛选出自身系统符合主题索引的数据;以数据唯一性ID为条件,在数据提取得到的数据源中检索ID匹配的记录。若未匹配到,则记录该ID对应的主题及机构数据;步骤2.2:遍历数据源的数据,与自身系统比对,得到自身系统缺失的数据。解析获取到的数据源的数据,形成记录储存在本地服务器。之后以主题为索引条件,以数据唯一性ID为条件,遍历自身系统中ID匹配的记录。若未匹配到,则记录该ID对应的主题及机构数据;步骤2.3:数据状态单向比对,检查数据状态(运行状态、有效期等)的一致性:以主题为索引条件,筛选出自身系统符合主题索引的数据;通过读取JSON文件中配置的需要检查的字段,遍历自身系统中的需检查字段并与数据源比较。若状态不一致,则记录对应的主题、机构数据及不一致的状态。

步骤3:比对准确性校验步骤。将已归类的问题数据提取并遍历,与自身系统数据及数据源比对。比对记录时,若问题数据存在于自身系统且不存在于数据源系统或问题数据不存在于自身系统且存在于数据源系统,则准确性验证成功。反之,则验证失败,数据将不会入库。

步骤4:例行数据比对。详细步骤同首次数据比对,通过配置定时任务,定期执行首次数据比对的功能。定时任务的执行周期环境变量中配置。

下面对本发明进行更为具体地说明。

本发明在数据比对中,采用双向数据比对,如步骤2.1和步骤与2.2,首先遍历自身系统的数据,与数据源数据进行比对,得到数据源未收录的数据;之后遍历数据源的数据,与自身系统比对,得到自身系统缺失的数据,数据源的数据不一定都需要存储在自身系统,所以这部分数据要再进行逻辑处理。

本发明中按主题进行问题归类、将数据质量问题与相关当事方关联。其中,在数据提取时,会提取id、所属机构、责任人等相关字段,并在服务器中缓存。数据比对结束,会将所有的问题数据先按主题归类,之后以所属机构为索引,每个所属机构形成一条记录,储存该机构下问题数据的id、责任人等相关字段。

本发明提供的数据质量检查系统,可以通过执行所述数据质量检查方法的流程步骤予以实现,即本领域技术人员可以将所述数据质量检查方法理解为所述数据质量检查系统的优选实施方式。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

相关技术
  • 基于元数据辅助治理的时空大数据质量检查的方法及系统
  • 一种多业务系统的数据质量检查方法和系统
技术分类

06120115616810