CN109725994B - 数据抽取任务执行方法、装置、终端及可读存储介质 - Google Patents

数据抽取任务执行方法、装置、终端及可读存储介质 Download PDF

Info

Publication number
CN109725994B
CN109725994B CN201810622929.6A CN201810622929A CN109725994B CN 109725994 B CN109725994 B CN 109725994B CN 201810622929 A CN201810622929 A CN 201810622929A CN 109725994 B CN109725994 B CN 109725994B
Authority
CN
China
Prior art keywords
task
data extraction
execution
tasks
group
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
Application number
CN201810622929.6A
Other languages
English (en)
Other versions
CN109725994A (zh
Inventor
丁志勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN201810622929.6A priority Critical patent/CN109725994B/zh
Publication of CN109725994A publication Critical patent/CN109725994A/zh
Application granted granted Critical
Publication of CN109725994B publication Critical patent/CN109725994B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供一种数据抽取任务执行方法,包括:获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;按照所述任务执行配置表,执行各待执行的数据抽取任务。本发明还提供一种数据抽取任务执行装置、终端及可读存储介质。本发明能够避免各数据抽取任务的相互影响,提高数据抽取与汇总效率。

Description

数据抽取任务执行方法、装置、终端及可读存储介质
技术领域
本发明涉及计算机领域,尤其涉及一种数据抽取任务执行方法、装置、终端及可读存储介质。
背景技术
随着网络技术的快速发展,金融保险领域逐渐采用数据库存储保险数据和用户数据等,而随着保险种类和用户数量的增加,对保险数据和用户数据等的管理提出了新的要求,目前,按照保险种类,将保险数据和用户数据等存储在不同的数据库中,便于数据的管理。
然而,在实际操作过程中,存在需要使用各数据库内的数据的情况,因此,需要从各数据库中抽取所需的数据并汇总,目前,数据抽取与汇总主要依赖于Kettle工具,由Kettle工具实现数据抽取与汇总,而通过Kettle工具进行数据抽取与汇总时,由于数据抽取任务较多,任务执行时间各异且相互交叉影响,当某一数据抽取任务依赖的Kettle同步任务出现延迟时,会影响其它数据抽取任务,需要耗费较多的时间才能完成数据抽取与汇总。
因此,如何避免各数据抽取任务的相互影响,提高数据抽取与汇总效率是目前亟待解决的问题。
发明内容
本发明的主要目的在于提供一种数据抽取任务执行方法、装置、终端及可读存储介质,旨在提高数据抽取任务执行的便捷性和效率。
为实现上述目的,本发明提供一种数据抽取任务执行方法,所述数据抽取任务执行方法包括以下步骤:
获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;
根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;
按照所述任务执行配置表,执行各待执行的数据抽取任务。
可选地,根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组的步骤包括:
从所述执行信息中获取各数据抽取任务的业务标签,并确定各数据抽取任务的业务标签是否均相同;
若各数据抽取任务中存在至少一个数据抽取任务的业务标签不同,则按照业务标签的种类将各数据抽取任务划分为至少两个任务组。
可选地,根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组的步骤包括:
从所述执行信息中获取每个任务组内的各数据抽取任务的任务依赖关系;
根据每个任务组内各数据抽取任务的任务依赖关系,确定每个任务组内各数据抽取任务的数据抽取依赖任务;
根据每个任务组内各数据抽取任务的数据抽取依赖任务,将每个任务组内的数据抽取任务划分为至少两个任务子组。
可选地,根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略的步骤包括:
从所述执行信息中获取各数据抽取任务的执行时间和任务依赖关系;
根据每个任务组中各数据抽取任务的执行时间,确定每个任务组的最早执行时间,并根据每个任务组的最早执行时间配置每个任务组的执行优先级;
根据每个任务子组中各数据抽取任务的执行时间和任务依赖关系,确定每个任务子组中各数据抽取任务的执行顺序,以配置每个任务子组的执行策略。
可选地,所述数据抽取任务执行方法还包括:
获取当前可用CPU资源,并确定所述当前可用CPU资源是否超过预设CPU资源;
若所述当前可用CPU资源未超过预设CPU资源,则根据所述当前可用CPU资源确定同步执行任务数。
可选地,根据所述当前可用CPU资源确定同步执行任务数的步骤包括:
获取预存的可用CPU资源与同步执行任务数的映射关系表,并从所述映射关系表中查询与所述当前可用CPU资源对应的同步执行任务数。
可选地,按照所述任务执行配置表,执行各待执行的数据抽取任务的步骤之后,还包括:
获取任务执行日志,并根据所述任务执行日志确定是否存在至少一任务子组中的全部数据抽取任务均执行成功;
若存在至少一任务子组中的全部数据抽取任务均执行成功,则执行与所述至少一任务子组关联的数据清洗子任务。
此外,为实现上述目的,本发明还提供一种数据抽取任务执行装置,所述数据抽取任务执行装置包括:
任务组划分模块,用于获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
任务子组划分模块,用于根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;
配置模块,用于根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;
任务执行模块,用于按照所述任务执行配置表,执行各待执行的数据抽取任务。
此外,为实现上述目的,本发明还提供一种数据抽取任务执行终端,所述数据抽取任务执行终端包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的数据抽取任务执行程序,其中所述数据抽取任务执行程序被所述处理器执行时,实现如上述的数据抽取任务执行方法的步骤。
此外,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有数据抽取任务执行程序,其中所述数据抽取任务执行程序被处理器执行时,实现如上述的数据抽取任务执行方法的步骤。
本发明提供一种数据抽取任务执行方法、装置、终端及可读存储介质,本发明基于各数据抽取任务的执行信息中的业务标签对各数据抽取任务进行分组,获得任务组,且配置执行优先级,实现数据抽取任务的业务划分,避免各业务之间的数据抽取任务相互影响,还进一步地基于各数据抽取任务的执行信息中的任务依赖关系对任务组进行二次分组,且配置不同的执行策略,实现数据抽取任务的依赖关系分组,避免单业务下的全部数据抽取任务之间的相互影响,即使存在某一数据抽取任务依赖的Kettle同步任务出现延迟,也不会影响全部数据抽取任务,有效的避免了数据抽取任务之间的相互影响,提高数据抽取与汇总效率。
附图说明
图1为本发明各实施例涉及的数据抽取任务执行终端的硬件结构示意图;
图2为本发明数据抽取任务执行方法第一实施例的流程示意图;
图3为本发明第一实施例中步骤S102的细化流程示意图;
图4为本发明第一实施例中步骤S103的细化流程示意图;
图5为本发明数据抽取任务执行方法第二实施例的流程示意图;
图6为本发明数据抽取任务执行方法第三实施例的流程示意图;
图7为本发明数据抽取任务执行装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及的数据抽取任务执行方法主要应用于数据抽取任务执行终端,该数据抽取任务执行终端可以是PC(个人计算机personal computer)、便携计算机、移动终端等具有显示和处理功能的设备。
参照图1,图1为本发明实施例方案中涉及的数据抽取任务执行终端的硬件结构示意图。本发明实施例中,数据抽取任务执行终端可以包括处理器1001(例如中央处理器Central Processing Unit、CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口);存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种可读存储介质的存储器1005可以包括操作系统、网络通信模块以及数据抽取任务执行程序。在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的数据抽取任务执行程序,并执行本发明实施例提供的数据抽取任务执行方法。
本发明实施例提供了一种数据抽取任务执行方法。
参照图2,图2为本发明数据抽取任务执行方法第一实施例的流程示意图。
本实施例中,该数据抽取任务执行方法由数据抽取任务执行终端实现,该数据抽取任务执行终端可以是PC、掌上电脑和平板电脑等终端,可选为图1所示的终端,所述数据抽取任务执行方法包括以下步骤:
步骤S101,获取各待执行的数据抽取任务的执行信息,并根据执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
步骤S102,根据执行信息中的任务依赖关系将至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;
步骤S103,根据执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;
步骤S104,按照任务执行配置表,执行各待执行的数据抽取任务。
数据抽取与汇总主要依赖于Kettle工具,由Kettle工具实现数据抽取与汇总,而通过Kettle工具进行数据抽取与汇总时,由于数据抽取任务较多,任务执行时间各异且相互交叉影响,当某一数据抽取任务依赖的Kettle同步任务出现延迟时,会影响其它数据抽取任务,需要耗费较多的时间才能完成数据抽取与汇总。考虑到上述问题,本实施例中提出一种数据抽取任务执行方法,以下详细介绍数据抽取任务执行方法的具体步骤:
步骤S101,获取各待执行的数据抽取任务的执行信息,并根据执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
本实施例中,终端在执行数据抽取任务之前,获取各待执行的数据抽取任务的执行信息,并根据执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组,即将业务标签相同的数据抽取任务划分为一个任务组,有几种类型的业务标签,就将各数据抽取任务划分为几个任务组,一个数据抽取任务至少包括一种业务标签,且一个数据抽取任务至少位于一个任务组。
其中,该执行信息包括但不限于各数据抽取任务的执行时间、业务标签和任务依赖关系,上述执行时间为手动执行数据抽取任务时,用户点击数据抽取任务按钮的点击时间;上述业务标签用于表示数据抽取任务所属的业务场景,包括准备金业务场景和个人险业务场景等;上述任务依赖关系用于表示各数据抽取任务的依赖情况,包括输入输出依赖关系和kettle依赖关系,且输入输出依赖关系由各数据抽取任务之间的输入来确定,即确定某个数据抽取任务的输入是否为另一个数据抽取任务的输出,若某个数据抽取任务的输入为另一个数据抽取任务的输出,则确定这两个数据抽取任务有输入输出依赖关系,kettle依赖关系由各数据抽取任务的依赖kettle任务以及依赖kettle任务的前置条件确定,即确定某个数据抽取任务所依赖的kettle的前置条件是否为另一个数据抽取任务所依赖的kettle,若某个数据抽取任务所依赖的kettle的前置条件为另一个数据抽取任务所依赖的kettle,则确定这两个数据抽取任务有kettle依赖关系,一个数据抽取任务所依赖的kettle至少为1个,且一个kettle可被多个数据抽取任务所依赖。
其中,数据抽取任务包括但不限于年金产品数据抽取、山羊合约产品数据抽取、内部收益率产品数据抽取、传统分红数据抽取、寿团产品数据抽取、分红缴清增额数据抽取、投连产品数据抽取、追加保费数据抽取、短险产品数据抽取、万能产品数据抽取、保证续保数据抽取和特殊投连产品数据抽取。
进一步地,还可以预先设置好各个数据抽取任务之间的任务依赖关系,通过各个数据抽取任务对应的依赖标识来确定各个具有依赖关系的数据抽取任务。如当某四个数据抽取任务对应的标识为A1,A2,A3,B1和B2时,则可确定A1,A2和A3具有任务依赖关系,B1和B2具有任务依赖关系。
具体地,在本实施例中,步骤S101包括:
步骤a1,从执行信息中获取各数据抽取任务的业务标签,并确定各数据抽取任务的业务标签是否均相同;
本实施例中,终端获取各待执行的数据抽取任务的执行信息之后,从该执行信息中获取各数据抽取任务的业务标签,并确定各数据抽取任务的业务标签是否均相同,即确定各数据抽取任务是否均属于同一业务。
步骤a2,若各数据抽取任务中存在至少一个数据抽取任务的业务标签不同,则按照业务标签的种类将各数据抽取任务划分为至少两个任务组。
本实施例中,如果各数据抽取任务的业务标签均相同,即各数据抽取任务均属于同一业务,则不分组,如果各数据抽取任务中存在至少一个数据抽取任务的业务标签不同,即各数据抽取任务不属于同一业务,则按照业务标签的种类将各数据抽取任务划分为至少两个任务组。
步骤S102,根据执行信息中的任务依赖关系将至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;
本实施例中,终端得到至少两个任务组之后,根据执行信息中各数据抽取任务的任务依赖关系将至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组,即按照各数据抽取任务的任务依赖关系,进一步地将每个任务组细分为若干任务子组。
具体地,参照图3,步骤S102包括:
步骤S1021,从执行信息中获取每个任务组内的各数据抽取任务的任务依赖关系;
本实施例中,终端从执行信息中获取每个任务组内的各数据抽取任务的任务依赖关系,包括输入输出依赖关系和kettle依赖关系,其中,输入输出依赖关系由各数据抽取任务之间的输入来确定,即确定某个数据抽取任务的输入是否为另一个数据抽取任务的输出,若某个数据抽取任务的输入为另一个数据抽取任务的输出,则确定这两个数据抽取任务有输入输出依赖关系;kettle依赖关系由各数据抽取任务的依赖kettle任务以及依赖kettle任务的前置条件确定,即确定某个数据抽取任务所依赖的kettle的前置条件是否为另一个数据抽取任务所依赖的kettle,若某个数据抽取任务所依赖的kettle的前置条件为另一个数据抽取任务所依赖的kettle,则确定这两个数据抽取任务有kettle依赖关系。
步骤S1022,根据每个任务组内各数据抽取任务的任务依赖关系,确定每个任务组内各数据抽取任务的数据抽取依赖任务;
本实施例中,终端从执行信息中获取每个任务组内各数据抽取任务的任务依赖关系之后,根据每个任务组内各数据抽取任务的任务依赖关系,确定每个任务组内各数据抽取任务的数据抽取依赖任务,即首先根据每个任务组内各数据抽取任务的输入输出依赖关系,确定每个任务组内各数据抽取任务的第一数据抽取依赖任务,然后根据每个任务组内各数据抽取任务的kettle依赖关系,确定每个任务组内各数据抽取任务的第二数据抽取依赖任务,将各数据抽取任务的第一数据抽取依赖任务和第二数据抽取依赖任务确定为各数据抽取任务的数据抽取依赖任务。
步骤S1023,根据每个任务组内各数据抽取任务的数据抽取依赖任务,将每个任务组内的数据抽取任务划分为至少两个任务子组。
本实施例中,在确定每个任务组内各数据抽取任务的数据抽取依赖任务之后,根据每个任务组内各数据抽取任务的数据抽取依赖任务,将每个任务组内的数据抽取任务划分为至少两个任务子组。具体地,先任意选择一数据抽取任务,并获取与选择的数据抽取任务具有依赖关系的数据抽取任务,并确定具有依赖关系的数据抽取任务是否也具有与其依赖的数据抽取任务,即确定选择的数据抽取任务是否具有间接依赖关系的数据抽取任务,如果具有依赖关系的数据抽取任务不具有与其依赖的数据抽取任务,即选择的数据抽取任务不具有间接依赖关系的数据抽取任务,则将选择的数据抽取任务、与其依赖的数据抽取任务确定为一个任务子组,如果具有依赖关系的数据抽取任务具有与其依赖的数据抽取任务,即选择的数据抽取任务具有间接依赖关系的数据抽取任务,则将选择的数据抽取任务、与其依赖的数据抽取任务、以及具有间接依赖关系的全部数据抽取任务确定为一个任务子组,最后得到的各任务子组之间不具有依赖关系,且一个数据抽取任务仅属于一个任务子组。
例如,数据抽取任务包括数据抽取任务1、数据抽取任务2、数据抽取任务3、数据抽取任务4和数据抽取任务5,其中,数据抽取任务1依赖kettle2,数据抽取任务2依赖kettle1、kettle2和kettle3,数据抽取任务3依赖kettle1,数据抽取任务4依赖kettle3和kettle4、数据抽取任务5依赖kettle4,且kettle3的前置条件为kettle1,而kettle1、kettle2和kettle4无前置条件,则数据抽取任务1、数据抽取任务3和数据抽取任务5无数据抽取依赖任务,数据抽取任务2的数据抽取依赖任务为数据抽取任务1,数据抽取任务4数据抽取依赖任务为数据抽取任务3,因此,任务子组有3组,分别为包含数据抽取任务1和数据抽取任务2的第一任务子组、包含数据抽取任务3和数据抽取任务4的第二任务子组和包含数据抽取任务5的第三任务子组。
步骤S103,根据执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表。
本实施例中,终端获得任务子组之后,根据执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表,其中,任务子组的执行策略为该任务子组中每个数据抽取任务的执行顺序。
具体地,参照图4,步骤S103包括:
步骤1031,从执行信息中获取各数据抽取任务的执行时间和任务依赖关系;
本实施例中,终端获得任务子组之后,从执行信息中获取各数据抽取任务的执行时间和任务依赖关系,其中,执行时间为为手动执行数据抽取任务时,用户点击数据抽取任务按钮的点击时间,任务依赖关系包括输入输出依赖关系和kettle依赖关系。
步骤1032,根据每个任务组中各数据抽取任务的执行时间,确定每个任务组的最早执行时间,并根据每个任务组的最早执行时间配置每个任务组的执行优先级;
本实施例中,终端从执行信息中获取各数据抽取任务的执行时间和任务依赖关系之后,根据每个任务组中各数据抽取任务的执行时间,确定每个任务组的最早执行时间,并根据每个任务组的最早执行时间配置每个任务组的执行优先级,即根据各任务组的最早执行时间的先后顺序从前到后配置执行优先级,或者由用户根据需要手动设置优先级。需要说明的是,最早执行时间越早,则执行优先级越高,而最早执行时间越晚,则执行优先级越低。
步骤1033,根据每个任务子组中各数据抽取任务的执行时间和任务依赖关系,确定每个任务子组中各数据抽取任务的执行顺序,以配置每个任务子组的执行策略。
本实施例中,在配置每个任务组的执行优先级之后,根据每个任务子组中各数据抽取任务的执行时间和任务依赖关系,确定每个任务子组中各数据抽取任务的执行顺序,以配置每个任务子组的执行策略,具体为先根据任务子组中各数据抽取任务的执行时间的先后顺序,对各数据抽取任务进行排序,然后根据各数据抽取任务的任务依赖关系对排序进行调整,具体为按照排序的先后顺序依次确定对应的数据抽取任务是否具有与其依赖的其它数据抽取任务,如果不具有与其依赖的其它数据抽取任务,则不调整排序,如果具有与其依赖的其它数据抽取任务,且与其依赖的其它数据抽取任务的输出为对应数据抽取任务的输入,则将其依赖的其它数据抽取任务排列在对应数据抽取任务之前。
步骤S104,按照任务执行配置表,执行各待执行的数据抽取任务。
本实施例中,终端生成任务执行配置表之后,按照该任务执行配置表,执行各待执行的数据抽取任务,即按照执行优先级的先后顺序,依次选择任务组,并按照数据抽取任务的执行顺序执行选择后的任务组中的数据抽取任务。
本实施例中,基于各数据抽取任务的执行信息中的业务标签对各数据抽取任务进行分组,获得任务组,且配置执行优先级,实现数据抽取任务的业务划分,避免各业务之间的数据抽取任务相互影响,还进一步地基于各数据抽取任务的执行信息中的任务依赖关系对任务组进行二次分组,且配置不同的执行策略,实现数据抽取任务的依赖关系分组,避免单业务下的全部数据抽取任务之间的相互影响,即使存在某一数据抽取任务依赖的Kettle同步任务出现延迟,也不会影响全部数据抽取任务,有效的避免了数据抽取任务之间的相互影响,提高数据抽取与汇总效率。
进一步地,参照图5,基于上述第一实施例,提出了本发明数据抽取任务执行方法的第二实施例,与前述实施例的区别在于,数据抽取任务执行方法还包括:
步骤S105,获取当前可用CPU资源,并确定当前可用CPU资源是否超过预设CPU资源;
本实施例中,终端在执行数据抽取任务的过程中,实时获取终端的当前可用CPU资源,并确定当前可用CPU资源是否超过预设CPU资源,如果当前可用CPU资源超过预设CPU资源,则每次只执行一个数据抽取任务,如果当前可用CPU资源未超过预设CPU资源,即可同时执行多个数据抽取任务。需要说明的是,上述预设CPU资源可根据CPU总资源来设置,或者由用户根据具体需要而设置,本实施例对此不作具体限定。
步骤S106,若当前可用CPU资源未超过预设CPU资源,则根据当前可用CPU资源确定同步执行任务数。
本实施例中,如果当前可用CPU资源未超过预设CPU资源,则根据当前可用CPU资源确定同步执行任务数,即可同时执行的数据抽取任务的个数。
具体地,在本实施例中,步骤S106包括:
步骤b,获取预存的可用CPU资源与同步执行任务数的映射关系表,并从映射关系表中查询与当前可用CPU资源对应的同步执行任务数。
本实施例中,终端在确定当前可用CPU资源未超过预设CPU资源之后,获取预存的可用CPU资源与同步执行任务数的映射关系表,并从映射关系表中查询与当前可用CPU资源对应的同步执行任务数,例如,当前可用CPU资源小于A时,对应的同步执行任务数为2;当前可用CPU资源大于或者等于A,小于B时,对应的同步执行任务数为3;当前可用CPU资源大于或者等于B,小于C时,对应的同步执行任务数为4,其中,A<B<C。
本实施例中,通过终端的当前可用CPU资源确定同步执行任务数,终端可同时执行多个数据抽取任务,有效的提高数据抽取与汇总效率。
进一步地,参照图6,基于上述第一或第二实施例,提出了本发明数据抽取任务执行方法的第三实施例,与前述实施例的区别在于,步骤S104之后,该数据抽取任务执行方法还包括:
步骤107,获取任务执行日志,并根据任务执行日志确定是否存在至少一任务子组中的全部数据抽取任务均执行成功;
在数据抽取与汇总完成之后,还需要对汇总后的数据进行清洗,由于目前是要等全部数据抽取任务均完成之后才能进行数据清洗,数据清洗的灵活性和效率不高,为解决上述问题,本实施例中,终端获取任务执行日志,并根据任务执行日志确定是否存在至少一任务子组中的全部数据抽取任务均执行成功,如果不存在任务子组中的全部数据抽取任务均执行成功,则继续按照任务执行配置表,执行各待执行的数据抽取任务。
步骤108,若存在至少一任务子组中的全部数据抽取任务均执行成功,则执行与至少一任务子组关联的数据清洗子任务。
本实施例中,如果存在至少一任务子组中的全部数据抽取任务均执行成功,则执行与至少一任务子组关联的数据清洗子任务,其中,数据清洗子任务包括但不限于年金产品数据清洗、山羊合约产品数据清洗、内部收益率产品数据清洗、传统分红数据清洗、寿团产品数据清洗、分红缴清增额数据清洗、投连产品数据清洗、追加保费数据清洗、短险产品数据清洗、万能产品数据清洗、保证续保数据清洗和特殊投连产品数据清洗。需要说明的是,数据清洗子任务与任务子组的关联由本领域技术人员基于实际情况进行设置。
进一步地,还可以根据该执行日志确定对应数据抽取任务是否执行成功,当确定某个数据抽取任务执行失败之后,根据该执行失败数据抽取任务对应的执行信息重新执行该数据抽取任务,其中,根据关键字可确定各个数据抽取任务对应的执行日志。在执行日志中,设置有对应的执行标识,如当执行标识为“11”时,表明对应数据抽取任务成功执行;当执行标识为“00”时,表明对应数据抽取任务执行失败。
在本实施例中,通过预先将数据清洗子任务与对应的任务子组进行关联,能够在任务子组中的数据抽取任务均完成时,即可对抽取汇总的数据进行清洗,无需等待其它无关联的数据抽取任务,极大的提高了数据清洗的灵活性和效率。
此外,本发明实施例还提供一种数据抽取任务执行装置。
参照图7,图7为本发明数据抽取任务执行装置第一实施例的功能模块示意图。
本发明数据抽取任务执行装置为虚拟装置,存储于图1所示数据抽取任务执行终端的存储器1005中,用于实现数据抽取任务执行程序的所有功能;数据抽取任务执行装置的各模块被处理器1001执行时,获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;按照所述任务执行配置表,执行各待执行的数据抽取任务。
具体的,本实施例中,所述数据抽取任务执行装置包括:
任务组划分模块101,用于获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
任务子组划分模块102,用于根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;
配置模块103,用于根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;
任务执行模块104,用于按照所述任务执行配置表,执行各待执行的数据抽取任务。
进一步地,所述任务组划分模块101包括:
确定单元,用于从所述执行信息中获取各数据抽取任务的业务标签,并确定各数据抽取任务的业务标签是否均相同;
任务组划分单元,用于若各数据抽取任务中存在至少一个数据抽取任务的业务标签不同,则按照业务标签的种类将各数据抽取任务划分为至少两个任务组。
进一步地,所述任务子组划分模块102包括:
依赖关系获取单元,用于从所述执行信息中获取每个任务组内的各数据抽取任务的任务依赖关系;
依赖任务确定单元,用于根据每个任务组内各数据抽取任务的任务依赖关系,确定每个任务组内各数据抽取任务的数据抽取依赖任务;
任务子组划分单元,用于根据每个任务组内各数据抽取任务的数据抽取依赖任务,将每个任务组内的数据抽取任务划分为至少两个任务子组。
进一步地,所述配置模块103包括:
信息获取单元,用于从所述执行信息中获取各数据抽取任务的执行时间和任务依赖关系;
优先级配置单元,用于根据每个任务组中各数据抽取任务的执行时间,确定每个任务组的最早执行时间,并根据每个任务组的最早执行时间配置每个任务组的执行优先级;
执行顺序确定单元,根据每个任务子组中各数据抽取任务的执行时间和任务依赖关系,确定每个任务子组中各数据抽取任务的执行顺序,以配置每个任务子组的执行策略。
进一步地,所述数据抽取任务执行装置还包括:
CPU资源确定模块,用于获取当前可用CPU资源,并确定所述当前可用CPU资源是否超过预设CPU资源;
任务数确定模块,用于若所述当前可用CPU资源未超过预设CPU资源,则根据所述当前可用CPU资源确定同步执行任务数。
进一步地,所述任务数确定模块包括:
获取查询单元,用于获取预存的可用CPU资源与同步执行任务数的映射关系表,并从所述映射关系表中查询与所述当前可用CPU资源对应的同步执行任务数。
进一步地,所述数据抽取任务执行装置还包括:
执行状态确定模块,用于获取任务执行日志,并根据所述任务执行日志确定是否存在至少一任务子组中的全部数据抽取任务均执行成功;
数据清洗子任务执行模块,用于若存在至少一任务子组中的全部数据抽取任务均执行成功,则执行与所述至少一任务子组关联的数据清洗子任务。
其中,上述数据抽取任务执行装置中各个模块的功能实现与上述数据抽取任务执行方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明实施例还提供一种可读存储介质。
本发明可读存储介质上存储有数据抽取任务执行程序,其中所述数据抽取任务执行程序被处理器执行时,实现如上述的数据抽取任务执行方法的步骤。
其中,数据抽取任务执行程序被执行时所实现的方法可参照本发明数据抽取任务执行方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种数据抽取任务执行方法,其特征在于,所述数据抽取任务执行方法包括以下步骤:
获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
从所述执行信息中获取每个任务组内的各数据抽取任务的任务依赖关系;
根据每个任务组内各数据抽取任务的输入输出依赖关系,确定每个任务组内各数据抽取任务的第一数据抽取依赖任务,然后根据每个任务组内各数据抽取任务的kettle依赖关系,确定每个任务组内各数据抽取任务的第二数据抽取依赖任务,将各数据抽取任务的第一数据抽取依赖任务和第二数据抽取依赖任务确定为各数据抽取任务的数据抽取依赖任务;
根据每个任务组内各数据抽取任务的所述数据抽取依赖任务,将每个任务组内的数据抽取任务划分为至少两个任务子组;
从所述执行信息中获取各数据抽取任务的执行时间和任务依赖关系;
根据每个任务组中各数据抽取任务的所述执行时间,确定每个任务组的最早执行时间,并根据每个任务组的最早执行时间配置每个任务组的执行优先级,即根据各任务组的所述最早执行时间的先后顺序从前到后配置所述执行优先级;
根据每个所述任务子组中各所述数据抽取任务的所述执行时间和所述任务依赖关系,确定每个所述任务子组中各所述数据抽取任务的执行顺序,以配置每个所述任务子组的执行策略,并生成任务执行配置表,其中,先根据所述任务子组中各所述数据抽取任务的所述执行时间的先后顺序,对各所述数据抽取任务进行排序,然后根据各所述数据抽取任务的所述任务依赖关系对排序进行调整,即按照排序的先后顺序依次确定对应的所述数据抽取任务是否具有与其依赖的其它数据抽取任务,如果不具有与其依赖的其它数据抽取任务,则不调整排序,如果具有与其依赖的其它数据抽取任务,且与其依赖的其它数据抽取任务的输出为对应的所述数据抽取任务的输入,则将其依赖的其它数据抽取任务排列在对应的所述数据抽取任务之前;
按照所述任务执行配置表,执行各待执行的数据抽取任务。
2.如权利要求1所述的数据抽取任务执行方法,其特征在于,根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组的步骤包括:
从所述执行信息中获取各数据抽取任务的业务标签,并确定各数据抽取任务的业务标签是否均相同;
若各数据抽取任务中存在至少一个数据抽取任务的业务标签不同,则按照业务标签的种类将各数据抽取任务划分为至少两个任务组。
3.如权利要求1中任一项所述的数据抽取任务执行方法,其特征在于,所述数据抽取任务执行方法还包括:
获取当前可用CPU资源,并确定所述当前可用CPU资源是否超过预设CPU资源;
若所述当前可用CPU资源未超过预设CPU资源,则根据所述当前可用CPU资源确定同步执行任务数。
4.如权利要求3所述的数据抽取任务执行方法,其特征在于,根据所述当前可用CPU资源确定同步执行任务数的步骤包括:
获取预存的可用CPU资源与同步执行任务数的映射关系表,并从所述映射关系表中查询与所述当前可用CPU资源对应的同步执行任务数。
5.如权利要求1-3中任一项所述的数据抽取任务执行方法,其特征在于,按照所述任务执行配置表,执行各待执行的数据抽取任务的步骤之后,还包括:
获取任务执行日志,并根据所述任务执行日志确定是否存在至少一任务子组中的全部数据抽取任务均执行成功;
若存在至少一任务子组中的全部数据抽取任务均执行成功,则执行与所述至少一任务子组关联的数据清洗子任务。
6.一种数据抽取任务执行装置,其特征在于,所述数据抽取任务执行装置包括:
用于执行如权利要求1所述的数据抽取任务执行方法的任务组划分模块,用于获取各待执行的数据抽取任务的执行信息,并根据所述执行信息中各数据抽取任务的业务标签将各数据抽取任务划分为至少两个任务组;
任务子组划分模块,用于根据所述执行信息中的任务依赖关系将所述至少两个任务组中每个任务组内的数据抽取任务划分为至少两个任务子组;
配置模块,用于根据所述执行信息,配置每个任务组的执行优先级,以及配置每个任务子组的执行策略,以生成任务执行配置表;
任务执行模块,用于按照所述任务执行配置表,执行各待执行的数据抽取任务。
7.一种数据抽取任务执行终端,其特征在于,所述数据抽取任务执行终端包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的数据抽取任务执行程序,其中所述数据抽取任务执行程序被所述处理器执行时,实现如权利要求1至5中任一项所述的数据抽取任务执行方法的步骤。
8.一种可读存储介质,其特征在于,所述可读存储介质上存储有数据抽取任务执行程序,其中所述数据抽取任务执行程序被处理器执行时,实现如权利要求1至5中任一项所述的数据抽取任务执行方法的步骤。
CN201810622929.6A 2018-06-15 2018-06-15 数据抽取任务执行方法、装置、终端及可读存储介质 Active CN109725994B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810622929.6A CN109725994B (zh) 2018-06-15 2018-06-15 数据抽取任务执行方法、装置、终端及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810622929.6A CN109725994B (zh) 2018-06-15 2018-06-15 数据抽取任务执行方法、装置、终端及可读存储介质

Publications (2)

Publication Number Publication Date
CN109725994A CN109725994A (zh) 2019-05-07
CN109725994B true CN109725994B (zh) 2024-02-06

Family

ID=66293849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810622929.6A Active CN109725994B (zh) 2018-06-15 2018-06-15 数据抽取任务执行方法、装置、终端及可读存储介质

Country Status (1)

Country Link
CN (1) CN109725994B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581269B (zh) * 2020-04-24 2023-06-20 贵州力创科技发展有限公司 一种数据抽取方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508716A (zh) * 2011-09-29 2012-06-20 用友软件股份有限公司 任务控制装置和任务控制方法
WO2017070900A1 (zh) * 2015-10-29 2017-05-04 华为技术有限公司 多核数字信号处理系统中处理任务的方法和装置
CN107291548A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 任务的资源调度方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508716A (zh) * 2011-09-29 2012-06-20 用友软件股份有限公司 任务控制装置和任务控制方法
WO2017070900A1 (zh) * 2015-10-29 2017-05-04 华为技术有限公司 多核数字信号处理系统中处理任务的方法和装置
CN107291548A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 任务的资源调度方法及装置

Also Published As

Publication number Publication date
CN109725994A (zh) 2019-05-07

Similar Documents

Publication Publication Date Title
CN109725995B (zh) 数据抽取任务执行方法、装置、设备及可读存储介质
CN108776934B (zh) 分布式数据计算方法、装置、计算机设备及可读存储介质
WO2019062002A1 (zh) 业务员筛选激活方法、电子装置及计算机可读存储介质
CN112035235A (zh) 任务调度方法、系统、设备及存储介质
CN110187960A (zh) 一种分布式资源调度方法及装置
US8458136B2 (en) Scheduling highly parallel jobs having global interdependencies
US8612597B2 (en) Computing scheduling using resource lend and borrow
CN112199180A (zh) 多任务调度的方法及装置、电子设备及可读存储介质
CN111784318A (zh) 数据处理方法、装置、电子设备及存储介质
CN109947568A (zh) 定时任务处理方法、系统、计算机设备及存储介质
CN109725994B (zh) 数据抽取任务执行方法、装置、终端及可读存储介质
CN110389976B (zh) 一种多接口数据的调度方法和装置
CN112364005B (zh) 数据同步方法、装置、计算机设备及存储介质
CN114564249B (zh) 推荐调度引擎、推荐调度方法及计算机可读存储介质
CN112035230A (zh) 一种任务调度文件生成方法、装置及存储介质
CN111311319A (zh) 产品活动信息的配置方法以及系统
CN109725996B (zh) 任务模式选择与任务执行方法、装置、设备及存储介质
CN111831394B (zh) 采用kubernetes部署有状态pod的方法及装置
CN114217954A (zh) 作业调度方法、装置、计算机设备、存储介质
CN114020368A (zh) 基于状态机的信息处理方法、装置和存储介质
CN109587038A (zh) 消息推送方法及装置
CN113204434B (zh) 基于k8s的计划任务执行方法、装置及计算机设备
CN112217849A (zh) Sd-wan系统中的任务调度方法、系统和计算机设备
CN117938843A (zh) Pod调度方法及装置、设备、存储介质、程序产品
CN106557359B (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
GR01 Patent grant