CN112835891B - 一种数据比对方法及系统、任务控制器、存储介质 - Google Patents
一种数据比对方法及系统、任务控制器、存储介质 Download PDFInfo
- Publication number
- CN112835891B CN112835891B CN202110055220.4A CN202110055220A CN112835891B CN 112835891 B CN112835891 B CN 112835891B CN 202110055220 A CN202110055220 A CN 202110055220A CN 112835891 B CN112835891 B CN 112835891B
- Authority
- CN
- China
- Prior art keywords
- data
- engine
- comparison
- target data
- source data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000012545 processing Methods 0.000 claims abstract description 160
- 230000008569 process Effects 0.000 claims abstract description 31
- 230000015654 memory Effects 0.000 claims description 52
- 238000006243 chemical reaction Methods 0.000 claims description 31
- 238000007405 data analysis Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 abstract description 11
- 238000013499 data model Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 18
- 238000012546 transfer Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000013480 data collection Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000000306 component Substances 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000003306 harvesting Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
Abstract
本申请公开了一种数据比对方法及系统、任务控制器、存储介质,该方法包括:获取数据比对任务的配置信息,并控制采集引擎利用配置信息指定的采集引擎插件采集源数据和目标数据。之后,控制比对引擎利用配置信息指定的比对引擎插件对源数据和目标数据进行比对,获得比对结果。最后,控制处理引擎利用配置信息指定的处理引擎插件对比对结果进行处理,获得处理结果。本申请对采集引擎、比对引擎和处理引擎进行统一控制,提供了模板化的数据比对控制机制,无需针对不同信息系统和数据模型的差异进行重复性的机制开发与调整,因此改善了数据比对的效率。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种数据比对方法及系统、任务控制器、存储介质。
背景技术
现代信息网络中,不同的信息系统之间会存在一定数量的数据交易服务。为了保证数据交易服务的数据一致性,需要定时对交易双方的信息系统进行交易数据比对及更新处理。实践中发现,由于不同信息系统的交易数据来源方式、数据记录格式、数据比对方式和比对结果输出方式等存在各种各样的差异,导致各个信息系统内的数据比对机制无法通用,因此现有技术需要针对不同信息系统和数据模型的差异进行重复性的机制开发与调整,使得数据比对的效率较低。
申请内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种数据比对方法及系统、任务控制器、存储介质,能够提高数据比对的效率。
根据本申请的第一方面实施例的一种数据比对方法,包括:
获取数据比对任务的配置信息;控制采集引擎利用所述配置信息指定的采集引擎插件采集源数据和目标数据;控制比对引擎利用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果;控制处理引擎利用所述配置信息指定的处理引擎插件对所述比对结果进行处理,获得处理结果。
根据本申请实施例的一种数据比对方法,至少具有如下有益效果:
本申请实施例中,通过采用采集引擎、比对引擎和处理引擎分别执行数据采集、数据比对和数据处理流程,对采集引擎、比对引擎和处理引擎进行统一控制,提供了模板化的数据比对控制机制。基于此,结合配置信息的指示,控制采集引擎、比对引擎和处理引擎直接调用符合业务配置需求的插件进行数据采集、比对和处理,无需针对不同信息系统和数据模型的差异进行重复性的机制开发与调整,因此改善了数据比对的效率,并且还能够适用于多种个性化的业务需求,进而提高了数据比对机制的通用性和灵活性。
根据本申请的一些实施例,所述获取数据比对任务的配置信息,包括:
当接收到任务管理器发送的数据比对任务时,获取所述数据比对任务对应的配置信息,所述任务管理器以插件形式运行。
根据本申请的一些实施例,所述采集引擎插件包括源数据采集器和目标数据采集器;所述控制采集引擎利用所述配置信息指定的采集引擎插件采集比对数据,包括:
根据所述配置信息,生成数据采集请求,所述数据采集请求用于指示采集引擎利用所述源数据采集器采集源数据以及利用所述目标数据采集器采集目标数据;向所述采集引擎发送所述数据采集请求;从所述采集引擎获得所述源数据和所述目标数据。
根据本申请的一些实施例,所述采集引擎插件还包括源数据解析器和目标数据解析器;所述数据采集请求还用于指示所述采集引擎在采集所述源数据和所述目标数据之后,利用所述源数据解析器对所述源数据进行数据解析转换以及利用所述目标数据解析器对所述目标数据进行数据解析转换,获得统一格式后的源数据和目标数据;
所述从所述采集引擎获得所述源数据和所述目标数据,包括:从所述采集引擎获得所述统一格式后的源数据和目标数据。
根据本申请的一些实施例,所述控制比对引擎利用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果,包括:
向比对引擎发送所述源数据、所述目标数据和数据比对通知,所述数据比对通知用于指示所述比对引擎通过调用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对;从所述比对引擎获得对所述源数据和所述目标数据进行比对后的比对结果。
根据本申请的一些实施例,所述方法还包括:
在所述比对引擎对所述源数据和所述目标数据进行比对的过程中,实时从所述比对引擎获取对所述源数据和所述目标数据的比对处理进度信息。
根据本申请的一些实施例,所述处理引擎插件包括数据转换器和数据处理器;所述控制处理引擎利用所述配置信息指定的处理引擎插件对所述比对结果进行处理,获得处理结果,包括:
向处理引擎发送所述比对结果和处理通知;其中,所述处理通知用于指示所述处理引擎利用所述数据转换器对所述比对结果进行格式转换以获得格式转换后的比对结果,再利用所述数据处理器将所述格式转换后的比对结果输出到指定的业务系统,并生成处理结果;
从所述处理引擎获得所述处理结果。
根据本申请第二方面实施例的一种数据比对系统,包括任务控制器、采集引擎、比对引擎以及处理引擎,其中:
所述任务控制器,用于获取数据比对任务的配置信息,并根据所述配置信息生成数据采集请求;以及,将所述数据采集请求发送给所述采集引擎;
所述采集引擎,用于响应于所述数据采集请求,调用所述配置信息指定的采集引擎插件,并利用所述采集引擎插件采集源数据和目标数据;以及,将所述源数据和所述目标数据发送给所述任务控制器;
所述任务控制器,还用于从所述采集引擎获得所述源数据和所述目标数据,并将所述源数据、所述目标数据和比对通知发送给所述比对引擎;
所述比对引擎,用于根据所述比对通知,调用所述配置信息指定的比对引擎插件,并利用所述比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果;以及,将所述比对结果发送给所述任务控制器;
所述任务控制器,还用于从所述比对引擎获得所述比对结果,并向所述处理引擎发送处理通知和所述比对结果;
所述处理引擎,用于根据所述处理通知,调用所述配置信息指定的处理引擎插件,并利用所述处理引擎插件对所述比对结果进行处理,获得处理结果;以及,将所述处理结果发送给所述任务控制器;
所述任务控制器,还用于从所述处理引擎获得所述处理结果。
根据本申请的一些实施例,所述任务控制器,还用于在接收到从任务管理器发送的数据比对任务时,获取所述数据比对任务对应的配置信息,所述任务管理器以插件形式运行。
根据本申请的一些实施例,所述采集引擎插件包括源数据采集器和目标数据采集器;所述采集引擎,还用于利用所述源数据采集器采集源数据以及利用所述目标数据采集器采集目标数据。
根据本申请的一些实施例,所述采集引擎插件还包括源数据解析器和目标数据解析器;所述采集引擎,还用于在采集所述源数据和所述目标数据之后,利用所述源数据解析器对所述源数据进行数据解析转换以及利用所述目标数据解析器对所述目标数据进行数据解析转换,获得统一格式后的源数据和目标数据;所述任务控制器,还用于从所述采集引擎获得所述统一格式后的源数据和目标数据。
根据本申请的一些实施例,所述比对引擎,还用于在对所述源数据和所述目标数据进行比对的过程中,实时将对所述源数据和所述目标数据的比对处理进度信息发送给所述任务控制器;所述任务控制器,还用于从所述比对引擎获得所述比对处理进度信息。
根据本申请的一些实施例,所述处理引擎插件包括数据转换器和数据处理器;所述处理引擎,还用于利用所述数据转换器对所述比对结果进行格式转换,获得格式转换后的比对结果,再利用所述数据处理器将所述格式转换后的比对结果输出到指定的业务系统,并生成处理结果。
根据本申请第三方面实施例的一种任务控制器,包括:
获取模块,用于获取数据比对任务的配置信息;
控制模块,用于控制采集引擎利用所述配置信息指定的采集引擎插件采集源数据和目标数据;以及,控制比对引擎利用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果;以及,控制处理引擎利用所述配置信息指定的处理引擎插件对所述比对结果进行处理,获得处理结果。
根据本申请第四方面实施例的一种任务控制器,包括:
一个或多个存储器;
一个或多个处理器,用于执行存储在所述一个或多个存储器中的一个或多个计算机程序,还用于执行如本申请第一方面实施例所述的方法。
根据本申请第五方面实施例的一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如本申请第一方面实施例所述的方法。
根据本申请第六方面实施例的一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如本申请第一方面实施例所述的方法。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例公开的一种数据比对系统的系统架构示意图;
图2为本申请实施例公开的另一种数据比对系统的系统架构示意图;
图3为本申请实施例公开的一种数据比对方法的实施例示意图;
图4为本申请实施例公开的另一种数据比对方法的实施例示意图;
图5为本申请实施例中任务控制器控制采集引擎利用采集引擎插件采集源数据和目标数据的实施例示意图;
图6为本申请实施例中任务控制器控制比对引擎利用比对引擎插件对源数据和目标数据进行比对的实施例示意图
图7为本申请实施例中任务控制器控制处理引擎利用处理引擎插件对比对结果进行处理的实施例示意图;
图8为本申请实施例公开的一种任务控制器的结构示意图;
图9为本申请实施例公开的另一种任务控制器的结构示意图。
附图标记:
任务控制器100、采集引擎110、比对引擎120、处理引擎130、采集引擎插件140、数据采集器141、数据解析器142、比对引擎插件150、处理引擎插件160、数据转换器161、数据处理器162、任务管理器170。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
在本申请的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本申请实施例公开一种数据比对方法及系统、任务控制器、存储介质,能够提高数据比对的效率。以下结合附图进行详细描述。
为了更好的理解本申请实施例公开的数据比对方法,以下先对本申请实施例所应用的数据比对系统进行描述。
在本申请实施例中,数据比对系统可以应用于实际的信息系统,比如电子数据处理系统、管理信息系统以及办公自动化系统等,用于提供对不同信息系统之间的数据比对与更新服务。请参阅图1,图1为本申请实施例公开的一种数据比对系统的系统架构示意图。如图1所示,该系统包括任务控制器100、采集引擎110、比对引擎120、处理引擎130、采集引擎插件140、比对引擎插件150以及处理引擎插件160。
在本申请实施例中,引擎为开发程序或系统所需功能的核心组件,则采集引擎110用于按照指定的数据采集方式进行数据采集,比对引擎120用于按照指定的比对算法进行数据的一致性比对,处理引擎130用于按照任务处理规则进行数据处理,这三者共同实现完整的数据比对流程。插件为利用引擎的应用程序接口编写出来的程序,当引擎安装有相应的插件时,引擎可以直接调用插件以实现不同的插件功能。相应的,采集引擎插件140可运行在采集引擎110上,比对引擎插件150可运行在比对引擎120上,处理引擎插件160可运行在处理引擎130上。应当理解的是,采集引擎插件140、比对引擎插件150以及处理引擎插件160各自均可以包含一种或一种以上的插件,且不同插件可以根据实际业务需求进行定制化开发,对此不做具体限定。
在本申请实施例中,采集引擎110、比对引擎120以及处理引擎130均与任务控制器100建立通信连接,故任务控制器100可对采集引擎110、比对引擎120以及处理引擎130进行统一控制与管理。此外,在一些实现方式中,任务控制器100还可以根据任务配置控制采集引擎110、比对引擎120以及处理引擎130调用插件,并对整个数据比对流程进行进度保存、监控数据采集以及断点控制。
请参阅图2,图2为本申请实施例公开的另一种数据比对系统的系统架构示意图。其中,图2所示的系统是由图1所示的系统进行优化得到的。与图1所示的系统相比较,图2所示的系统还可以包括任务管理器170,采集引擎插件140可以包括数据采集器141和数据解析器142,处理引擎插件160可以包括数据转换器161和数据处理器162。
其中,任务管理器170可以与任务控制器100建立通信连接,并向任务控制器100发送任务及配置信息。在一些可选的实现方式中,任务管理器170可以是利用任务控制器100提供的应用程序接口所定制化构建的插件,用于对任务控制器100进行任务管理、调度及监控。因此,任务管理器170可以和任务控制器100运行于同一终端上,也可以和任务控制器100运行在不同终端上,对此不作具体限定。其中,终端可以包括但不限于智能手机、可穿戴设备、便携式终端、笔记本电脑、平板电脑和智能PC(personal computer)。
其中,数据采集器141可提供对不同数据源的数据采集方式,数据源可包括但不限于安全文件传送协议(secret file transfer protocol,SFTP)/文件传输协议(filetransfer protocol,FTP)、本地文件、各类关系型数据库(比如MySQL)以及非关系型数据库(比如Hadoop)。数据解析器142可将不同数据源的数据解析转换为指定的数据格式,其可处理的数据格式包括但不限于文本(TXT)、表格、集合和键值映射表。示例性的,如果数据源为SQL数据库,指定的数据格式为文本,则调用的数据解析器142可以是SQL文件转文本文件解析器。
其中,数据转换器161可将处理数据转换为指定的输出格式,包括不限于文件格式、JavaScript对象简谱(JavaScript object notation,JSON)格式、可扩展标记语言(extensible markup language,XML)格式以及超文本传输协议(hypertext transferprotocol,HTTP)格式。示例性的,如果处理数据的格式为文本格式,指定的输出格式为XML格式,则调用的数据转换器161可以是文本转XML转换器。数据处理器162可按照指定的任务处理规则对处理数据进行处理,包括但不限于将处理数据通过特定接口输出至指定的信息系统、将处理数据存储到指定数据库或者利用处理数据更新本地数据模型。
作为一种可选的实施方式,比对引擎插件150可以是比对执行器,比对执行器可包括但不限于内存比对器、关系型数据库比对器、非关系型数据库比对器以及分布式海量数据比对器,用于提供不同比对算法。
可见,上述数据比对系统基于模板化的数据比对框架,通过插件化的方式不断定制采集引擎插件、比对引擎插件以及处理引擎插件,实现了可扩展和可复用的数据比对控制机制,大大提高了数据比对系统的开发效率和质量。
应当理解的是,上述任一数据比对系统均适用于本申请实施例公开的数据比对方法。下面对本申请实施例所公开的数据比对方法进行详细描述。
请参阅图3,图3为本申请实施例公开的一种数据比对方法的实施例示意图。
310、任务控制器获取数据比对任务的配置信息。
在本申请实施例中,任务控制器可以直接接收终端处理器下发的数据比对任务,还可以从以插件形式运行的任务管理器获取数据比对任务,不做具体限定。
在本申请实施例中,数据比对任务的配置信息可以用于指定本次数据比对任务的源数据、目标数据、数据采集方式、数据比对方式以及结果输出方式等。具体来说,配置信息可以包括对采集引擎的采集配置信息、对比对引擎的比对配置信息以及对处理引擎的处理配置信息。
在一些实现方式中,不同的配置信息可以与指定的插件预先建立对应关系,因此,根据配置信息的指示,任务控制器可以直接控制各引擎调用与配置信息相匹配的插件,准确实现配置信息所需的插件功能。示例性的,针对采集配置信息中指定的文本数据类型,可以调用文本数据对应的采集引擎插件;针对比对配置信息中指定的关系型数据库比对算法,可以调用关系型数据库比对算法对应的比对引擎插件;针对处理配置信息指定的数据输出接口,可以调用用于将数据输出至该数据输出接口的处理引擎插件。
320、任务控制器控制采集引擎利用配置信息指定的采集引擎插件采集源数据和目标数据。
330、任务控制器控制比对引擎利用配置信息指定的比对引擎插件对源数据和目标数据进行比对,获得比对结果。
340、任务控制器控制处理引擎利用配置信息指定的处理引擎插件对比对结果进行处理,获得处理结果。
可见,实施上述方法实施例,对采集引擎、比对引擎和处理引擎进行统一控制,提供了模板化的数据比对控制机制,无需针对不同信息系统和数据模型的差异进行重复性的机制开发与调整,因此改善了数据比对的效率。并且,还能够适用于多种个性化的业务需求,进而提高了数据比对机制的通用性和灵活性。
请参阅图4,图4为本申请实施例公开的另一种数据比对方法的实施例示意图。如图4所示:
在本申请实施例中,对步骤320进一步细化,具体为:
321、任务控制器根据配置信息生成数据采集请求。
在本申请实施例中,数据采集请求可用于指示待采集的源数据、目标数据、采集引擎需调用的采集引擎插件以及相关任务控制信息。
322、任务控制器将数据采集请求发送给采集引擎。
323、采集引擎响应于数据采集请求,调用配置信息指定的采集引擎插件,并利用采集引擎插件采集源数据和目标数据。
示例性的,采集引擎调用指定的采集引擎插件,可以通过该采集引擎插件从特定的系统接口采集外部信息系统的源数据,并从内部信息系统中特定的数据模型采集目标数据,以用于后续的数据比对。
324、采集引擎将源数据和目标数据发送给任务控制器。
可见,采集引擎直接按照配置信息的指示,通过调用合适的采集引擎插件进行数据采集,实现了精准灵活的数据采集流程。
在本申请实施例中,对步骤330进一步细化,具体为:
331、任务控制器将源数据、目标数据和比对通知发送给比对引擎。
在本申请实施例中,任务控制器可以根据配置信息所指示的比对算法、或者源数据和目标数据的数据类型确定合适的比对引擎插件,从而生成比对通知。
332、比对引擎根据比对通知,调用配置信息指定的比对引擎插件,并利用比对引擎插件对源数据和目标数据进行比对,获得比对结果。
在本申请实施例中,根据比对引擎插件对应的数据一致性参考值,比对引擎利用比对引擎插件对源数据和目标数据的数据一致性进行分析,获得源数据和目标数据之间的相同信息和差异信息,以此根据生成比对结果。在一种实现方式中,如果源数据为第一数据表,目标数据为第二数据表,则比对引擎可以利用指定的比对引擎插件将第一数据表和第二数据表中对应相同行名(或者相同列名)的数据项进行一一匹配,并将不匹配的数据项计入差异信息,直至第一数据表和第二数据表中所有行名均被遍历,保证数据比对的完整性。
333、比对引擎将比对结果发送给任务控制器。
可见,比对引擎直接按照配置信息的指示,通过调用合适的比对引擎插件对源数据和目标数据进行数据比对,实现了精准灵活的数据比对流程。
在本申请实施例中,对步骤340进一步细化,具体为:
341、任务控制器将比对结果和处理通知发送给处理引擎。
在本申请实施例中,任务控制器可以根据配置信息所指示的任务处理规则确定合适的处理引擎插件,从而生成处理通知。
342、处理引擎根据处理通知,调用配置信息指定的处理引擎插件,并利用处理引擎插件对比对结果进行处理,获得处理结果。
在本申请实施例中,处理引擎可以利用不同的处理引擎插件实现不同的任务处理规则,比如将比对结果通过特定接口输出至指定的信息系统、将处理数据存储到指定数据库或者利用处理数据更新本地数据模型等。相应的,处理结果可用于反馈对比对结果的处理完成情况,包括比对结果的输出情况(比如输出完成或输出异常)、存储情况(比如存储完成或存储空间不足)或者对数据库的更新情况(比如数据库更新完成)等。
343、处理引擎将处理结果发送给任务控制器。
可见,处理引擎直接按照配置信息的指示,通过调用合适的处理引擎插件对比对结果进行处理,实现了精准灵活的数据处理流程。
作为一种可选的实施方式,步骤310之前,还可以包括步骤300,即:
300、任务管理器向任务控制器发送数据比对任务。
相应的,步骤343之后,还可以包括步骤350,即:
350、任务控制器向任务管理器发送任务结束通知。
可见,由于任务管理器以插件形式运行于终端,故终端的管理员可以通过任务管理器统一执行对任务控制器的任务调度及管理,即通过任务管理器向任务控制器发送数据比对任务,触发数据比对流程,并且在任务管理器接收到任务控制器返回的任务结束通知时结束数据比对流程,提高了对数据比对流程的人为可控性,便于统一管理与操作。此外,定制插件化的任务管理器也提高了系统控制的开放性,从而满足不同信息系统的业务需求。
请参阅图5,图5为本申请实施例中任务控制器控制采集引擎利用采集引擎插件采集源数据和目标数据的实施例示意图。如图5所示,步骤323具体可以包括:
3231、采集引擎响应于数据采集请求,调用配置信息指定的数据采集器。
3232、数据采集器从信息系统获取源数据和目标数据。
在本申请实施例中,数据采集器可以包括源数据采集器和目标数据采集器。在一种实现方式中,如果源数据和目标数据满足相同的数据采集方式,则源数据采集器和目标数据采集器可以是同一数据采集器。在另一种实现方式中,如果源数据和目标数据属于不同的数据采集方式,则采集引擎可以直接调用不同的源数据采集器和目标数据采集器,使得源数据采集器满足源数据的数据采集方式,目标数据采集器满足目标数据的数据采集方式,从而适用于多数据源的数据采集需求,亦不会出现数据采集器与数据源不兼容的问题。
3233、信息系统返回源数据和目标数据。
3234、数据采集器将源数据和目标数据发送给采集引擎。
3235、采集引擎调用配置信息指定的数据解析器。
3236、数据解析器对源数据和目标数据进行数据解析转换,获得统一格式后的源数据和目标数据。
可见,采集引擎利用数据解析器统一源数据和目标数据的数据格式,能够降低后续的数据比对出错率。
3237、数据解析器将统一格式后的源数据和目标数据发送给采集引擎。
相应的,步骤324具体可以为:采集引擎将统一格式后的源数据和目标数据发送给任务控制器。
请参阅图6,图6为本申请实施例中任务控制器控制比对引擎利用比对引擎插件对源数据和目标数据进行比对的实施例示意图。如图6所示,步骤331和步骤332具体可以为:
3311、任务控制器将源数据和比对通知发送给比对引擎。
3312、任务控制器将目标数据和比对通知发送给比对引擎。
在本申请实施例中,可以同时执行步骤3311和步骤3312,或者按先后次序执行步骤3311和步骤3312,对此不作具体限定。
3321、比对引擎根据比对通知调用配置信息指定的比对执行器,并向比对执行器发送对源数据的存储或缓存请求。
3322、比对执行器对源数据进行存储或缓存。
3323、比对引擎根据比对通知调用配置信息指定的比对执行器,并向比对执行器发送对目标数据的存储或缓存请求。
3324、比对执行器对目标数据进行存储或缓存。
3325、比对执行器对源数据和目标数据进行对比,获得对比结果。
作为一种可选的实施方式,以比对执行器是内存比对器为示例,比对执行器的数据比对具体可以如下:
根据比对执行器的key和value配置,比对执行器可以通过获取源数据中的key值和value值,构建源数据内存哈希表(HashMap),以及,通过获取目标数据中的key值和value值,构建目标数据内存哈希表。之后,比对执行器遍历源数据内存哈希表中每一源数据记录时,在目标数据内存哈希表中查找与每一源数据记录的key值相同的目标数据记录,并将该源数据记录的value值与目标数据记录的value值进行比对,从而获得源数据比对结果,同时在源数据内存哈希表中删除已比对成功的记录。进一步的,比对执行器遍历目标数据内存哈希表中每一目标数据记录时,在源数据内存哈希表中查找与每一目标数据记录的key值相同的源数据记录,并将目标数据记录的value值与源数据记录的value值进行比对,从而获得目标数据比对结果。最后,删除源数据内存哈希表和目标数据内存哈希表,并合并源数据比对结果和目标数据比对结果,获得最终的比对结果。
可见,比对执行器依次对源数据内存哈希表和目标数据内存哈希表进行遍历及数据比对,获得两次比对结果,并基于两次比对结果的合并确定最终的比对结果,能够提高数据比对的完整性和容错率。
进一步的,作为一种可选的实施方式,在比对执行器对源数据和目标数据进行比对的过程中,比对引擎还可以实时从比对执行器获得对源数据和目标数据的比对处理进度信息,并将比对处理进度信息发送给任务控制器,实现了对数据比对进度的实时监控,有利于及时发现并解决问题。再进一步的,在一些实现方式中,任务控制器还可以将比对处理进度信息发送给任务管理器,因此任务管理器可以以可视化形式(比如表格、图形和图像等)输出比对处理进度信息,便于任务管理器的管理员直观查看,并做出流程进度控制决策及操作。
3326、比对执行器将比对结果发送给比对引擎。
请参阅图7,图7为本申请实施例中任务控制器控制处理引擎利用处理引擎插件对比对结果进行处理的实施例示意图。如图7所示,步骤342具体可以包括:
3421、处理引擎根据处理通知,调用配置信息指定的数据转换器。
3422、数据转换器对比对结果进行格式转换,获得格式转换后的比对结果。
3423、数据转换器将格式转换后的比对结果发送给处理引擎。
3424、处理引擎根据处理通知,调用配置信息指定的数据处理器。
在本申请实施例中,处理引擎调用的数据转换器和数据处理器可以具有匹配关系,也就是说,处理引擎利用数据转换器转换的数据格式可以满足数据处理器的数据处理规则。比如,如果数据处理器用于将比对结果存储至MySQL数据库,那么数据转换器可以是SQL文件转换器。
3425、数据处理器将格式转换后的比对结果输出到指定的信息系统。
3426、数据处理器向处理引擎返回处理结果。
可见,处理引擎先利用数据转换器将比对结果转换为便于处理的数据格式,再利用数据处理器直接对格式转换后的比对结果进行处理,分工明确,提供了对数据处理的有效支持。
上述对本申请实施例中的数据比对方法进行了说明,下面对本申请实施例中的任务控制器进行说明。
请参阅图8,图8是本申请实施例公开的一种任务控制器的结构示意图,包括:
获取模块810,用于获取数据比对任务的配置信息;
控制模块820,用于控制采集引擎利用配置信息指定的采集引擎插件采集源数据和目标数据;以及,控制比对引擎利用配置信息指定的比对引擎插件对源数据和目标数据进行比对,获得比对结果;以及,控制处理引擎利用配置信息指定的处理引擎插件对比对结果进行处理,获得处理结果。
在本申请实施例中,作为一种可选的实施方式,获取模块810,具体用于在接收到任务管理器发送的数据比对任务时,获取数据比对任务对应的配置信息,任务管理器以插件形式运行。
在本申请实施例中,作为一种可选的实施方式,采集引擎插件包括源数据采集器和目标数据采集器。控制模块820,还用于根据配置信息,生成数据采集请求,数据采集请求用于指示采集引擎利用源数据采集器采集源数据以及利用目标数据采集器采集目标数据;向采集引擎发送数据采集请求;从采集引擎获得源数据和目标数据。
在本申请实施例中,作为一种可选的实施方式,采集引擎插件还包括源数据解析器和目标数据解析器;数据采集请求还用于指示采集引擎在采集源数据和目标数据之后,利用源数据解析器对源数据进行数据解析转换以及利用目标数据解析器对目标数据进行数据解析转换,获得统一格式后的源数据和目标数据。控制模块820,还用于从采集引擎获得统一格式后的源数据和目标数据。
在本申请实施例中,作为一种可选的实施方式,控制模块820还用于向比对引擎发送源数据、目标数据和数据比对通知,数据比对通知用于指示比对引擎通过调用配置信息指定的比对引擎插件对源数据和目标数据进行比对;从比对引擎获得对源数据和目标数据进行比对后的比对结果。
进一步的,作为一种可选的实施方式,控制模块820还用于在比对引擎对源数据和目标数据进行比对的过程中,实时从比对引擎获取对源数据和目标数据的比对处理进度信息。
在本申请实施例中,作为一种可选的实施方式,处理引擎插件包括数据转换器和数据处理器。控制模块820还用于向处理引擎发送比对结果和处理通知,其中处理通知用于指示处理引擎利用数据转换器对比对结果进行格式转换以获得格式转换后的比对结果,再利用数据处理器将格式转换后的比对结果输出到指定的业务系统,并生成处理结果;从处理引擎获得处理结果。
需要说明的是,本实施例的具体实现过程可参见上述方法实施例所述的具体实现过程,在此不再叙述。
请参阅图9,图9是本申请实施例公开的另一种任务控制器的结构示意图,包括:
一个或多个存储器910;
一个或多个处理器920,用于执行存储在一个或多个存储器910中的一个或多个计算机程序,以执行上述各实施例中描述的方法。
需要说明的是,本实施例的具体实现过程可参见上述方法实施例所述的具体实现过程,在此不再叙述。
本申请实施例提供一种计算机可读存储介质,其上存储有计算机指令,该计算机指令运行时使计算机执行上述方法实施例所描述的数据比对方法。
本申请实施例还公开一种计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(read-only memory,ROM)、随机存储器(random access memory,RAM)、可编程只读存储器(programmable read-only memory,PROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)、一次可编程只读存储器(one-time programmable read only memory,OTPROM)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
尽管已经示出和描述了本申请的实施例,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。
Claims (15)
1.一种数据比对方法,其特征在于,所述方法包括:
获取数据比对任务的配置信息,所述数据比对任务的配置信息用于指定源数据、目标数据、数据采集方式、数据比对方式、和结果输出方式;
控制采集引擎利用所述配置信息指定的采集引擎插件采集源数据和目标数据;
控制比对引擎利用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果,所述比对引擎插件由所述配置信息指定的比对算法或者所述源数据和所述目标数据的数据类型确定;
控制处理引擎利用所述配置信息指定的处理引擎插件对所述比对结果进行处理,获得处理结果;
当所述比对引擎插件为内存比对器时,基于所述源数据构建源数据内存哈希表,基于所述目标数据构建目标数据内存哈希表,所述源数据内存哈希表包括源数据记录,所述目标数据内存哈希表包括目标数据记录,所述内存比对器遍历所述源数据内存哈希表中每一所述源数据记录时,在所述目标数据内存哈希表中查找并比对与每一所述源数据记录相同的所述目标数据记录,得到源数据比对结果,所述内存比对器遍历所述目标数据内存哈希表中每一所述目标数据记录时,在所述源数据内存哈希表中查找并对比与每一所述目标数据记录相同的所述源数据记录,得到目标数据比对结果,将所述源数据比对结果和所述目标数据比对结果进行合并,得到所述比对结果。
2.根据权利要求1所述的方法,其特征在于,所述获取数据比对任务的配置信息,包括:
当接收到任务管理器发送的数据比对任务时,获取所述数据比对任务对应的配置信息,所述任务管理器以插件形式运行。
3.根据权利要求1所述的方法,其特征在于,所述采集引擎插件包括源数据采集器和目标数据采集器;所述控制采集引擎利用所述配置信息指定的采集引擎插件采集比对数据,包括:
根据所述配置信息,生成数据采集请求,所述数据采集请求用于指示采集引擎利用所述源数据采集器采集源数据以及利用所述目标数据采集器采集目标数据;
向所述采集引擎发送所述数据采集请求;
从所述采集引擎获得所述源数据和所述目标数据。
4.根据权利要求3所述的方法,其特征在于,所述采集引擎插件还包括源数据解析器和目标数据解析器;所述数据采集请求还用于指示所述采集引擎在采集所述源数据和所述目标数据之后,利用所述源数据解析器对所述源数据进行数据解析转换以及利用所述目标数据解析器对所述目标数据进行数据解析转换,获得统一格式后的源数据和目标数据;
所述从所述采集引擎获得所述源数据和所述目标数据,包括:
从所述采集引擎获得所述统一格式后的源数据和目标数据。
5.根据权利要求1所述的方法,其特征在于,所述控制比对引擎利用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果,包括:
向比对引擎发送所述源数据、所述目标数据和数据比对通知,所述数据比对通知用于指示所述比对引擎通过调用所述配置信息指定的比对引擎插件对所述源数据和所述目标数据进行比对;
从所述比对引擎获得对所述源数据和所述目标数据进行比对后的比对结果。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述比对引擎对所述源数据和所述目标数据进行比对的过程中,实时从所述比对引擎获取对所述源数据和所述目标数据的比对处理进度信息。
7.根据权利要求1所述的方法,其特征在于,所述处理引擎插件包括数据转换器和数据处理器;所述控制处理引擎利用所述配置信息指定的处理引擎插件对所述比对结果进行处理,获得处理结果,包括:
向处理引擎发送所述比对结果和处理通知;其中,所述处理通知用于指示所述处理引擎利用所述数据转换器对所述比对结果进行格式转换以获得格式转换后的比对结果,再利用所述数据处理器将所述格式转换后的比对结果输出到指定的业务系统,并生成处理结果;
从所述处理引擎获得所述处理结果。
8.一种数据比对系统,其特征在于,所述系统包括任务控制器、采集引擎、比对引擎以及处理引擎,其中:
所述任务控制器,用于获取数据比对任务的配置信息,并根据所述配置信息生成数据采集请求;以及,将所述数据采集请求发送给所述采集引擎;所述数据比对任务的配置信息用于指定源数据、目标数据、数据采集方式、数据比对方式、和结果输出方式;
所述采集引擎,用于响应于所述数据采集请求,调用所述配置信息指定的采集引擎插件,并利用所述采集引擎插件采集源数据和目标数据;以及,将所述源数据和所述目标数据发送给所述任务控制器;
所述任务控制器,还用于从所述采集引擎获得所述源数据和所述目标数据,并将所述源数据、所述目标数据和比对通知发送给所述比对引擎;
所述比对引擎,用于根据所述比对通知,调用所述配置信息指定的比对引擎插件,并利用所述比对引擎插件对所述源数据和所述目标数据进行比对,获得比对结果;以及,将所述比对结果发送给所述任务控制器;所述比对引擎插件由所述配置信息指定的比对算法或者所述源数据和所述目标数据的数据类型确定;
所述任务控制器,还用于从所述比对引擎获得所述比对结果,并向所述处理引擎发送处理通知和所述比对结果;
所述处理引擎,用于根据所述处理通知,调用所述配置信息指定的处理引擎插件,并利用所述处理引擎插件对所述比对结果进行处理,获得处理结果;以及,将所述处理结果发送给所述任务控制器;
所述任务控制器,还用于从所述处理引擎获得所述处理结果;
所述比对引擎,还用于当所述比对引擎插件为内存比对器时,基于所述源数据构建源数据内存哈希表,基于所述目标数据构建目标数据内存哈希表,所述源数据内存哈希表包括源数据记录,所述目标数据内存哈希表包括目标数据记录,所述内存比对器遍历所述源数据内存哈希表中每一所述源数据记录时,在所述目标数据内存哈希表中查找并比对与每一所述源数据记录相同的所述目标数据记录,得到源数据比对结果,所述内存比对器遍历所述目标数据内存哈希表中每一所述目标数据记录时,在所述源数据内存哈希表中查找并对比与每一所述目标数据记录相同的所述源数据记录,得到目标数据比对结果,将所述源数据比对结果和所述目标数据比对结果进行合并,得到所述比对结果。
9.根据权利要求8所述的数据比对系统,其特征在于,所述任务控制器,还用于在接收到从任务管理器发送的数据比对任务时,获取所述数据比对任务对应的配置信息,所述任务管理器以插件形式运行。
10.根据权利要求8所述的数据比对系统,其特征在于,所述采集引擎插件包括源数据采集器和目标数据采集器;所述采集引擎,还用于利用所述源数据采集器采集源数据以及利用所述目标数据采集器采集目标数据。
11.根据权利要求10所述的数据比对系统,其特征在于,所述采集引擎插件还包括源数据解析器和目标数据解析器;所述采集引擎,还用于在采集所述源数据和所述目标数据之后,利用所述源数据解析器对所述源数据进行数据解析转换以及利用所述目标数据解析器对所述目标数据进行数据解析转换,获得统一格式后的源数据和目标数据;
所述任务控制器,还用于从所述采集引擎获得所述统一格式后的源数据和目标数据。
12.根据权利要求8所述的数据比对系统,其特征在于,所述比对引擎,还用于在对所述源数据和所述目标数据进行比对的过程中,实时将对所述源数据和所述目标数据的比对处理进度信息发送给所述任务控制器;
所述任务控制器,还用于从所述比对引擎获得所述比对处理进度信息。
13.根据权利要求8所述的数据比对系统,其特征在于,所述处理引擎插件包括数据转换器和数据处理器;所述处理引擎,还用于利用所述数据转换器对所述比对结果进行格式转换,获得格式转换后的比对结果,再利用所述数据处理器将所述格式转换后的比对结果输出到指定的业务系统,并生成处理结果。
14.一种任务控制器,其特征在于,所述任务控制器包括:
一个或多个存储器;
一个或多个处理器,用于执行存储在所述一个或多个存储器中的一个或多个计算机程序,还用于执行如权利要求1至7任意一项所述的方法。
15.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110055220.4A CN112835891B (zh) | 2021-01-15 | 2021-01-15 | 一种数据比对方法及系统、任务控制器、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110055220.4A CN112835891B (zh) | 2021-01-15 | 2021-01-15 | 一种数据比对方法及系统、任务控制器、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112835891A CN112835891A (zh) | 2021-05-25 |
CN112835891B true CN112835891B (zh) | 2024-05-03 |
Family
ID=75928479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110055220.4A Active CN112835891B (zh) | 2021-01-15 | 2021-01-15 | 一种数据比对方法及系统、任务控制器、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112835891B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636383A (zh) * | 2013-11-14 | 2015-05-20 | 腾讯科技(深圳)有限公司 | 一种实现对比搜索的方法和装置 |
CN106487585A (zh) * | 2016-10-09 | 2017-03-08 | 深圳市思博创科技有限公司 | 设备综合监控系统架构 |
CN106992903A (zh) * | 2017-03-30 | 2017-07-28 | 国网福建省电力有限公司 | 一种基于网络设备的数据采集系统及方法 |
CN107015991A (zh) * | 2016-01-28 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 数据一致性的自检方法、装置、系统和业务装置 |
CN111967767A (zh) * | 2020-08-18 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 一种业务风险识别方法、装置、设备及介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11138220B2 (en) * | 2016-11-27 | 2021-10-05 | Amazon Technologies, Inc. | Generating data transformation workflows |
US20180275961A1 (en) * | 2017-03-23 | 2018-09-27 | Cognizant Technology Solutions India Pvt. Ltd. | Method and system for fast data comparison using accelerated and incrementally synchronized cyclic data traversal algorithm |
WO2019035903A1 (en) * | 2017-08-16 | 2019-02-21 | Walmart Apollo, Llc | SYSTEMS AND METHODS FOR VALIDATION OF DISTRIBUTED DATA |
-
2021
- 2021-01-15 CN CN202110055220.4A patent/CN112835891B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104636383A (zh) * | 2013-11-14 | 2015-05-20 | 腾讯科技(深圳)有限公司 | 一种实现对比搜索的方法和装置 |
CN107015991A (zh) * | 2016-01-28 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 数据一致性的自检方法、装置、系统和业务装置 |
CN106487585A (zh) * | 2016-10-09 | 2017-03-08 | 深圳市思博创科技有限公司 | 设备综合监控系统架构 |
CN106992903A (zh) * | 2017-03-30 | 2017-07-28 | 国网福建省电力有限公司 | 一种基于网络设备的数据采集系统及方法 |
CN111967767A (zh) * | 2020-08-18 | 2020-11-20 | 支付宝(杭州)信息技术有限公司 | 一种业务风险识别方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112835891A (zh) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112507029B (zh) | 数据处理系统及数据实时处理方法 | |
CN110765484B (zh) | 一种征信数据处理方法及电子设备 | |
CN103514223A (zh) | 一种数据仓库数据同步方法和系统 | |
CN115374102A (zh) | 数据处理方法及系统 | |
CN113407600B (zh) | 一种动态实时同步多源大表数据的增强实时计算方法 | |
WO2023082681A1 (zh) | 基于批流一体的数据处理方法、装置、计算机设备和介质 | |
CN114610588A (zh) | 一种数据库性能分析方法、装置、电子设备和存储介质 | |
CN112905323A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN113886485A (zh) | 数据处理方法、装置、电子设备、系统和存储介质 | |
US20200004664A1 (en) | Automatic mock enablement in a multi-module software system | |
CN113282611A (zh) | 一种流数据同步的方法、装置、计算机设备及存储介质 | |
US20170154086A1 (en) | Real-Time Change Data from Disparate Sources | |
CN114969441A (zh) | 基于图数据库的知识挖掘引擎系统 | |
CN114756629A (zh) | 基于sql的多源异构数据交互分析引擎及方法 | |
CN111291054A (zh) | 一种数据处理方法、装置、计算机设备和存储介质 | |
US20200278969A1 (en) | Unified metrics computation platform | |
CN112835891B (zh) | 一种数据比对方法及系统、任务控制器、存储介质 | |
US11567957B2 (en) | Incremental addition of data to partitions in database tables | |
CN116842090A (zh) | 一种对账系统、方法、设备及存储介质 | |
CN117009371A (zh) | 数据血缘分析方法、装置、设备、存储介质及程序产品 | |
CN112286918B (zh) | 数据快速接入转换的方法、装置、电子设备及存储介质 | |
CN113010483A (zh) | 一种海量日志管理方法和系统 | |
CN112637288A (zh) | 流式数据分发方法和系统 | |
CN113568966A (zh) | 用于ods层和dw层之间的数据处理方法与系统 | |
CN111259082A (zh) | 大数据环境下实现全量数据同步的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |