CN110275767A - 一种批量数据处理方法及装置 - Google Patents

一种批量数据处理方法及装置 Download PDF

Info

Publication number
CN110275767A
CN110275767A CN201910562584.4A CN201910562584A CN110275767A CN 110275767 A CN110275767 A CN 110275767A CN 201910562584 A CN201910562584 A CN 201910562584A CN 110275767 A CN110275767 A CN 110275767A
Authority
CN
China
Prior art keywords
task
dcn
identification information
data
execution
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.)
Pending
Application number
CN201910562584.4A
Other languages
English (en)
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.)
WeBank Co Ltd
Original Assignee
WeBank Co 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910562584.4A priority Critical patent/CN110275767A/zh
Publication of CN110275767A publication Critical patent/CN110275767A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

本发明涉及金融科技领域,并公开了一种批量数据处理方法及装置,方法包括:在数据管理区获取到批量数据处理任务请求后,若确定当前批量数据处理周期内未执行过任务后,则针对任务请求确定任务执行标识信息,将任务的状态修改为正在执行中;若确定任务需要发送到数据通信网络DCN区,则根据任务执行标识信息确定DCN区中是否存在DCN节点正在执行任务;若确定DCN区中不存在DCN节点正在执行任务,则将任务发送给DCN区中的至少一个DCN节点,以使DCN节点处理任务,并将DCN节点的执行状态修改为正在执行中;若确定DCN区中执行任务的DCN节点都已经完成任务,则将任务的状态修改为任务执行成功。有效减少开发运维成本。

Description

一种批量数据处理方法及装置
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及一种批量数据处理方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,批量数据处理技术也不例外,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。
现有的资源处理系统其实是包含了几个子系统,每个系统都是单独部署,是以模块的方式强制整合到一个系统,但是每个模块的跑批框架根据子模块的交互模式不同,跑批框架是也不同。由于对跑批的数据处理一致性要求更高,如果每个子系统都是自己的跑批框架,开发人员,维护人员成本很高。
综上所述,现有技术中缺少一种便于开发人员维护,降低维护成本的批量数据处理方法。
发明内容
有鉴于此,本发明实施例提供一种批量数据处理方法及装置,至少解决了现有技术存在的问题。
一方面,本发明实施例提供一种批量数据处理方法,应用于分布式资源处理系统,所述方法包括:
在数据管理区获取到批量数据处理任务请求后,若根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务后,则针对所述任务请求确定任务执行标识信息,将所述任务的状态修改为正在执行中;
若确定所述任务需要发送到数据通信网络DCN区,则根据所述任务执行标识信息确定所述DCN区中是否存在DCN节点正在执行所述任务;
若确定所述DCN区中不存在DCN节点正在执行所述任务,则将所述任务发送给所述DCN区中的至少一个DCN节点,以使所述DCN节点处理所述任务,并将所述DCN节点的执行状态修改为正在执行中;
若确定DCN区中执行所述任务的DCN节点都已经完成任务,则将所述任务的状态修改为任务执行成功。
本发明实施例中,在获取到批量数据处理任务请求后,首先要确定是否已经执行过该任务,若确定没有执行过该任务,则建立任务执行标识信息;通过确定是否执行过该任务,可以防止同一个任务请求执行多次,即防止在数据管理中同一个任务的并发;进一步地,在确定该任务需要发送给DCN区执行后,为了防止在DCN区的并发,首先要确定在DCN区中没有DCN节点在处理相同的任务后,再将任务分配给DCN节点执行,并且在确定DCN节点都已经完成任务后,确定任务成功。在本发明实施例中,不同的资源处理子系统模块使用的是同一套批量数据处理方法,统一处理,减少了开发、运维人员的成本。
可选的,所述根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务,包括:
若确定所述第一数据表中在当前批量数据处理周期内未查找到所述任务标识信息,则确定当前批量数据处理周期内未执行过所述任务,所述第一数据表用于记录不同批量数据处理周期内执行过的批量数据处理任务的任务标识信息。
在本发明实施例中,通过在数据管理区设置第一数据表,就能够防止在数据管理中同一个任务的并发,即通过第一数据表中有或者没有该任务标识信息,可以确定当前数据管理区是否也存在相同的任务。
可选的,所述确定所述DCN区中不存在DCN节点正在执行所述任务,包括:
若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息,则确定所述DCN区中不存在DCN节点正在执行所述任务,所述第二数据表用于记录不同批量数据处理周期内执行过的任务执行标识信息、所述任务执行标识信息对应的各DCN节点以及各DCN节点的任务执行状态,所述第三数据表用于记录在不同批量数据处理周期内执行过的任务执行标识信息以及向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量。
本发明实施例中,通过第二数据表中可以确定当前数据处理周期内,没有DCN节点执行过任务执行标识信息对应的任务,同样的,通过第三数据表可以进一步确定,在当前数据处理周期内,没有DCN节点执行过任务执行标识信息对应的任务,保证了在DCN区不存在同样任务的并发问题。
可选的,所述若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息后,确定所述DCN区中不存在DCN节点正在执行所述任务前,还包括:
确定DCN区中每个DCN节点的第四数据表中未查找到所述任务执行标识信息,所述第四数据表用于记录每个DCN节点针对不同的任务执行标识信息对应的批量数据处理任务的任务执行状态。
本发明实施例中,为了防止数据管理区与DCN区之间通信延迟,导致DCN区实际已经存在任务,但是数据管理区未能查询到任务,所以还需要在DCN去的第四表中进行查询,若也没有查询到该任务,则可以认为确定没有DCN节点处理过该任务,防止该任务的并发。
可选的,所述方法还包括:
若确定所述第一数据表中在当前批量数据处理周期内能够查询到所述任务标识信息,则确定所述任务标识信息对应的任务执行状态;
若确定所述任务执行状态为任务失败,则执行确定所述批量数据处理任务是否需要发送到数据通信网络DCN区的步骤,并将所述批量数据处理任务的状态修改为正在执行中。
在本发明实施例中,若确定第一数据表中在当前批量数据处理周期内存在该任务,则确定该任务的执行状态,若执行状态为失败,则继续执行该任务,并且为了防止并发,将该任务的状态修改为正在执行中。
可选的,所述方法还包括:
若在数据管理区的第二数据表中查找到所述任务执行标识信息,则确定所述任务执行标识信息对应的各DCN节点中任务执行状态为失败状态的DCN节点;
将所述第二数据表中任务执行状态为失败状态的DCN节点的任务执行状态修改为正在执行中,并执行在数据管理区的第三数据表中是否能够查找到所述任务执行标识信息的步骤。
本发明实施例中,若DCN节点执行过该任务,并且有部分或者全部DCN节点执行任务的状态为失败状态,则将失败状态的DCN节点的状态修改为正在执行中,再次执行该任务,并防止该任务并发。
可选的,所述若确定DCN区中执行所述批量数据处理任务的节点都已经完成任务,则将所述批量数据处理任务的状态修改为任务执行成功,包括:
若确定DCN区中执行所述批量数据处理任务的任一个DCN节点已执行完成任务,则将所述第四数据表中该DCN节点的状态修改为已完成,并将所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量进行递减;
若确定所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量为零时,则确定DCN区中执行所述批量数据处理任务的DCN节点都已经完成任务。
本发明实施例中,在第三数据表中的数量减少为零后,则可以确定处理该任务的DCN节点完成了该任务。
一方面,本发明实施例提供一种批量数据处理装置,包括:
任务执行标识信息确定单元,用于在数据管理区获取到批量数据处理任务请求后,若根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务后,则针对所述任务请求确定任务执行标识信息,将所述任务的状态修改为正在执行中;
DCN节点任务处理单元,用于若确定所述任务需要发送到数据通信网络DCN区,则根据所述任务执行标识信息确定所述DCN区中是否存在DCN节点正在执行所述任务;若确定所述DCN区中不存在DCN节点正在执行所述任务,则将所述任务发送给所述DCN区中的至少一个DCN节点,以使所述DCN节点处理所述任务,并将所述DCN节点的执行状态修改为正在执行中;
任务确定单元,用于若确定DCN区中执行所述任务的DCN节点都已经完成任务,则将所述任务的状态修改为任务执行成功。
可选的,所述任务执行标识信息确定单元具体用于:
若确定所述第一数据表中在当前批量数据处理周期内未查找到所述任务标识信息,则确定当前批量数据处理周期内未执行过所述任务,所述第一数据表用于记录不同批量数据处理周期内执行过的批量数据处理任务的任务标识信息。
可选的,所述DCN节点任务处理单元具体用于:
若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息,则确定所述DCN区中不存在DCN节点正在执行所述任务,所述第二数据表用于记录不同批量数据处理周期内执行过的任务执行标识信息、所述任务执行标识信息对应的各DCN节点以及各DCN节点的任务执行状态,所述第三数据表用于记录在不同批量数据处理周期内执行过的任务执行标识信息以及向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量。
可选的,所述DCN节点任务处理单元还用于:
确定DCN区中每个DCN节点的第四数据表中未查找到所述任务执行标识信息,所述第四数据表用于记录每个DCN节点针对不同的任务执行标识信息对应的批量数据处理任务的任务执行状态。
可选的,所述任务执行标识信息确定单元还用于:
若确定所述第一数据表中在当前批量数据处理周期内能够查询到所述任务标识信息,则确定所述任务标识信息对应的任务执行状态;
若确定所述任务执行状态为任务失败,则执行确定所述批量数据处理任务是否需要发送到数据通信网络DCN区的步骤,并将所述批量数据处理任务的状态修改为正在执行中。
可选的,所述DCN节点任务处理单元还用于:
若在数据管理区的第二数据表中查找到所述任务执行标识信息,则确定所述任务执行标识信息对应的各DCN节点中任务执行状态为失败状态的DCN节点;
将所述第二数据表中任务执行状态为失败状态的DCN节点的任务执行状态修改为正在执行中,并执行在数据管理区的第三数据表中是否能够查找到所述任务执行标识信息的步骤。
可选的,所述任务确定单元具体用于:
若确定DCN区中执行所述批量数据处理任务的任一个DCN节点已执行完成任务,则将所述第四数据表中该DCN节点的状态修改为已完成,并将所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量进行递减;
若确定所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量为零时,则确定DCN区中执行所述批量数据处理任务的DCN节点都已经完成任务。
一方面,本发明实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序实现的批量数据处理方法的步骤。
一方面,本发明实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行批量数据处理方法的步骤。
附图说明
图1为本发明实施例提供的一种批量数据处理方法的流程示意图;
图2为本发明实施例提供的一种分布式资源处理系统的结构示意图;
图3为本发明实施例提供的一种批量数据处理方法的流程示意图;
图4为本发明实施例提供的一种批量数据处理装置的结构示意图;
图5为本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
基于现有技术中存在的问题,本发明实施例提供一种应用于分布式资源处理系统的批量数据处理方法,具体如图1所示,包括:
步骤S101,在数据管理区获取到批量数据处理任务请求后,若根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务后,则针对所述任务请求确定任务执行标识信息,将所述任务的状态修改为正在执行中。
具体的,在本发明实施例中,分布式资源处理系统可以是金融机构的理财系统或者销售系统或者其它需要周期性进行批量数据处理的系统,示例性的,若分布式资源处理系统为理财系统,周期性批量数据处理可以理解为跑批。
在本发明实施例中,分布式资源处理系统可以分为数据管理区以及数据通信网络DCN(Data Communication Network,数据通信网络)区,如图2所示,在本发明实施例中,数据管理区有多台主机进行数据处理,数据管理区与至少一个DCN区的节点进行通信,每个DCN区的节点有多台主机进行数据处理。
在数据管理区获取到批量数据处理任务请求后,为了防止并发,即已经存在该任务正在执行中,或者已经处理过该任务获得了任务结果,所以首先需要确定当前批量数据处理周期内未执行过该任务。在本发明实施例中,可以认为若之前批量数据处理周期内执行过该任务,但是当前批量数据处理周期日未执行过该任务,则可以认为并没有执行过该任务。示例性的,若分布式资源处理系统为理财系统,批量数据处理周期为每天,即每天进行跑批任务,针对跑批确定当日进账的任务,假设当前时间为2019年6月1日,在上一批量数据处理周期2019年5月31日执行过该任务,则可以任务在当前批量数据处理周期内未执行过该任务。
在本发明实施例中,若确定当前批量数据处理周期内未执行过该任务,则需要针对该任务建立唯一的标识信息,该信息为任务执行标识信息,也就是说,在获取了批量数据处理任务请求后,根据当前批量数据处理周期以及批量数据处理任务确定了唯一的任务执行标识信息。
为了防止该任务的并发,将该任务的状态修改为正在执行中,当接收到相同的任务时,可以通过确定该任务存在,且在正在执行中来防止相同任务的并发。
可选的,在本发明实施例中,若确定当前批量数据处理周期内执行过该任务,则确定执行过的该任务的执行状态,若确定执行过该任务的执行状态为任务成功,则可以确定该任务已经完成,则退出批量数据处理的进程;若确定当前批量数据处理周期内执行过该任务,且该任务的执行状态的失败,则可以重启该任务,将该任务的状态修改为正在执行中,继续执行批量数据处理的进程。
可选的,在本发明实施例中,为了便于进行任务以及任务状态的管理,并且更好的防止相同任务的并发,可以通过第一数据表来记录不同批量数据处理周期内执行过的批量数据处理任务的任务标识信息,例如表1所示,第一数据表的结构如下,第一数据表中至少包括任务标识信息以及批量数据处理周期,可以用日期表示,以及针对任务标识信息以及日期确定的任务执行标识信息、该任务的状态。
表1
在表1中,将不同日期执行过的任务标识信息,以及该任务标识信息和日期确定的任务执行标识信息、任务标识信息对应的任务状态进行记录,示例性的,如表2所示,在2019年5月31日,执行过任务标识信息为1的任务,根据日期以及任务标识信息1确定了任务执行标识信息A01,该任务的执行状态为已完成任务,在2019年5月31日,执行过任务标识信息为2的任务,根据日期以及任务标识信息2确定了任务执行标识信息B01,该任务的执行状态为正在执行中。
表2
当在数据管理区接收到批量数据处理任务请求,该任务的任务标识信息为任务标识信息1,日期为2019年6月1日,在表2中进行查找,确定不存在日期为2019年6月1日的任务标识信息1的任务。
可选的,在本发明实施例中,第一数据表还包括主步骤号以及结算系统标识,主步骤号表明的是,该批量数据处理任务是通过多个步骤完成,示例性的,批量数据处理任务为向每个资源处理子系统进行资源转移并计算当日资源转移总数,可以将批量数据处理任务分为两个步骤,一个主步骤为向每个资源处理子系统进行资源转移,另一个主步骤为计算当日资源转移总数。而结算系统标识是指本次批量数据处理任务是在哪个结算系统中处理的。
所以通过上述内容可知,在本发明实施例中,在获取到批量数据处理任务请求后,不仅需要通过任务标识信息确定是否已经执行过该任务,还需要通过主步骤号以及结算系统标识来确定是否已经执行过该任务。
示例性的,如表3所示,当在数据管理区接收到批量数据处理任务请求,该任务的任务标识信息为任务标识信息1,日期为2019年6月1日,该任务的主步骤号为1,该任务的结算系统标识为01,在表3中进行查找,确定不存在该任务。
表3
步骤S102,若确定所述任务需要发送到数据通信网络DCN区,则根据所述任务执行标识信息确定所述DCN区中是否存在DCN节点正在执行所述任务。
具体的,在本发明实施例中,在确定数据管理区没有其它主机在执行相同的任务后,则在确定该任务需要发送到DCN区后,确定是否有DCN节点正在执行该任务。
在本发明实施例中,该任务是否需要发送到数据通信网络DCN区可以根据任务请求的配置信息来确定的,例如,需要DCN区处理的任务可以发送给DCN区,例如进行转账、储蓄等,而有些业务并不需要发送给DCN区,例如统计总额的业务。
在本发明实施例中,可以通过多种方式确定是否存在DCN节点正在执行该任务,例如,确定DCN节点的状态,例如是否被占用,或者是通过查询记录DCN节点执行的任务以及任务状态来确定是否存在DCN节点正在执行该任务。
可选的,在本发明实施例中,可以通过两个数据表来确定是否存在DCN节点正在执行该任务,具体的,若在数据管理区的第二数据表中未查找到任务执行标识信息,且在数据管理区的第三数据表中未查找到任务执行标识信息,则确定DCN区中不存在DCN节点正在执行任务,第二数据表用于记录不同批量数据处理周期内执行过的任务执行标识信息、任务执行标识信息对应的各DCN节点以及各DCN节点的任务执行状态,第三数据表用于记录在不同批量数据处理周期内执行过的任务执行标识信息以及向任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量。
也就是说,在本发明实施例中,在第二数据表中保存了已经执行过的任务执行标识信息,以及执行该任务标识信息对应的任务的DCN号,记录了各DCN节点针对该任务的执行状态,例如表4所示,表4为第二数据表,该数据表中包括任务执行标识信息,执行该任务的DCN号以及日期。
表4
通过在表4中查询是否有该批量数据处理周期,即设定日期是否执行过相同的任务执行标识信息,若没有,则可以认为没有DCN节点执行该任务。
在本发明实施例中,为了避免由于通信延迟的情况导致虽然第二数据表中没有DCN节点在执行该任务,但是实际存在DCN节点正在执行该任务的情况,引入第三数据表,在第三数据表中通过查找到任务执行标识信息,确定确实没有DCN节点在执行该任务,第三数据表的结构为表5所示,在表5中,每个任务执行标识信息对应的DCN数量表示的是数据管理区向DCN区发送执行任务通知的数量,例如,数据管理区需要向DCN区的三个节点发送任务处理通知,则在表5中,DCN数量应该为3。
表5
可选的,在发明实施例中,DCN数量在DCN节点完成任务后进行递交,例如,DCN区有三个DCN节点在处理任务,DCN数量从1递增到3,当第一个DCN节点已经处理完任务后,则DCN数量进行递减,以表示还有两个DCN节点没有处理完任务。
可选的,在本发明实施例中,由于在第一数据表中可以包括主步骤号以及结算系统标识,在表4以及表5中也可以包括主步骤号以及结算系统标识,以便于进行任务查询。
在本发明实施例中,由于第二数据表以及第三数据表都是在数据管理区进行查询的,为了防止数据管理区与DCN区之间存在通信延迟,例如第三数据表中DCN数量为2,即表示还有两个DCN节点没有处理完任务,但是实际上,DCN节点已经处理完该任务,为了还向这两个DCN节点发送任务,在DCN区的每个DCN节点增加了第四数据表,第四数据表作为第二数据表的映射表,结构如表6所示,至少包括任务执行标识信息,执行该任务的DCN号以及日期。
表6
当然,在表6中还可以包括主步骤号以及结算系统标识。
在本发明实施例中,若在第二数据表中查找到了该任务标识信息,该标识信息对应的DCN节点中至少存在一个DCN节点的执行状态为执行失败,则在本发明实施例中,可以将状态为失败的任务重启,也就是将这些DCN节点的状态修改为正在执行中,并继续查询第三数据表的步骤。
步骤S103,若确定所述DCN区中不存在DCN节点正在执行所述任务,则将所述任务发送给所述DCN区中的至少一个DCN节点,以使所述DCN节点处理所述任务,并将所述DCN节点的执行状态修改为正在执行中。
在本发明实施例中,当确定DCN节点需要处理该任务时,则将处理该任务的DCN节点的状态修改为正在执行中,避免任务并发。也就是说,通过上述内容,将第一数据表中的该任务设置为正在执行中,将第二数据表中执行该任务的DCN的状态修改为正在执行中,第三数据表中由于还在执行中,所以DCN数量不为0,第四数据表中DCN的状态为正在执行中,所以当有相同的任务进行查询时,可以有效的防止并发。
步骤S104,若确定DCN区中执行所述任务的DCN节点都已经完成任务,则将所述任务的状态修改为任务执行成功。
在本发明实施例中,当第四数据表中的DCN节点完成任务后,会修改第四数据表中该DCN节点的执行状态,修改为已完成,在数据管理区接收到该DCN节点发送的已完成任务的通知后,会首先递减第三数据表中DCN的数量,当DCN数量递减为0时,则可以认为DCN区的各DCN节点都已经完成了任务。
为了更好的解释本申请实施例,下面结合具体的实施场景描述本申请实施例提供的一种批量数据处理方法,该方法中,批量数据处理周期为一天,批量数据处理任务请求为给客户的账户增加设定金额的资金并统计当日给客户增加的资金总额,在本发明实施例中,将批量数据处理任务请求分为两个主步骤,分别为主步骤1,给客户的账户增加设定金额,该任务的任务标识为1,主步骤2统计增加的总额,将该主步骤1的任务分配给三个DCN节点,分别为DCN节点1、DCN节点2以及DCN节点3,具体如图3所示:
步骤S301,获取批量数据处理任务请求,该请求的主步骤为1,任务标识为1;
步骤S302,确定第一数据表中是否存在该任务,若存在,则执行步骤S303,否则执行步骤S304;
步骤S303,确定该任务状态是否成功,若成功,则执行步骤S305,否则执行步骤S306;
步骤S304,针对该任务确定任务执行标识信息,执行步骤S307;
步骤S305,确定任务执行成功,并退出流程;
步骤S306,将第一数据表中该任务的执行状态修改为正在执行中,执行步骤S304;
步骤S307,确定该任务是否需要分发给DCN区,若是,则执行步骤S308,否则执行步骤S309;
步骤S308,查询第二数据表中该任务是否已经被DCN节点执行完成,若是,则返回步骤S305,否则执行步骤S310;
步骤S309,数据管理区处理该任务,执行步骤S311;
步骤S310,查询第三数据表中该任务是否已经被DCN节点执行完成,若是,则返回步骤S305,否则执行步骤312;
步骤S311,确定数据管理区是否处理完该任务,若是则执行步骤S305,否则执行步骤S309;
步骤S312,将任务发送给DCN节点1,DCN节点2以及DCN节点3,并在第二数据表中更新DCN节点1、DCN节点2以及DCN节点3的状态为正在执行中;
步骤S313,在各DCN节点查询第四数据表;
步骤S314,若确定第四数据表中是不存在该任务,则执行该任务。
上述实施例只是介绍了下发任务的过程,本发明实施例还包括确定任务完成的过程,该过程描述为,当DCN节点完成任务后,更新第四数据表中的DCN状态;在数据管理区接收到DCN节点完成任务的通知后,递减第三数据表中的DCN数量,同时更新第二数据表中的DCN状态;当DCN数量递减为0,则可以确定任务完成,更新第一数据表中的任务状态。
基于相同的技术构思,本申请实施例提供了一种批量数据处理装置,如图4所示,包括:
任务执行标识信息确定单元401,用于在数据管理区获取到批量数据处理任务请求后,若根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务后,则针对所述任务请求确定任务执行标识信息,将所述任务的状态修改为正在执行中;
DCN节点任务处理单元402,用于若确定所述任务需要发送到数据通信网络DCN区,则根据所述任务执行标识信息确定所述DCN区中是否存在DCN节点正在执行所述任务;若确定所述DCN区中不存在DCN节点正在执行所述任务,则将所述任务发送给所述DCN区中的至少一个DCN节点,以使所述DCN节点处理所述任务,并将所述DCN节点的执行状态修改为正在执行中;
任务确定单元403,用于若确定DCN区中执行所述任务的DCN节点都已经完成任务,则将所述任务的状态修改为任务执行成功。
可选的,所述任务执行标识信息确定单元401具体用于:
若确定所述第一数据表中在当前批量数据处理周期内未查找到所述任务标识信息,则确定当前批量数据处理周期内未执行过所述任务,所述第一数据表用于记录不同批量数据处理周期内执行过的批量数据处理任务的任务标识信息。
可选的,所述DCN节点任务处理单元402具体用于:
若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息,则确定所述DCN区中不存在DCN节点正在执行所述任务,所述第二数据表用于记录不同批量数据处理周期内执行过的任务执行标识信息、所述任务执行标识信息对应的各DCN节点以及各DCN节点的任务执行状态,所述第三数据表用于记录在不同批量数据处理周期内执行过的任务执行标识信息以及向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量。
可选的,所述DCN节点任务处理单元402还用于:
确定DCN区中每个DCN节点的第四数据表中未查找到所述任务执行标识信息,所述第四数据表用于记录每个DCN节点针对不同的任务执行标识信息对应的批量数据处理任务的任务执行状态。
可选的,所述任务执行标识信息确定单元401还用于:
若确定所述第一数据表中在当前批量数据处理周期内能够查询到所述任务标识信息,则确定所述任务标识信息对应的任务执行状态;
若确定所述任务执行状态为任务失败,则执行确定所述批量数据处理任务是否需要发送到数据通信网络DCN区的步骤,并将所述批量数据处理任务的状态修改为正在执行中。
可选的,所述DCN节点任务处理单元402还用于:
若在数据管理区的第二数据表中查找到所述任务执行标识信息,则确定所述任务执行标识信息对应的各DCN节点中任务执行状态为失败状态的DCN节点;
将所述第二数据表中任务执行状态为失败状态的DCN节点的任务执行状态修改为正在执行中,并执行在数据管理区的第三数据表中是否能够查找到所述任务执行标识信息的步骤。
可选的,所述任务确定单元403具体用于:
若确定DCN区中执行所述批量数据处理任务的任一个DCN节点已执行完成任务,则将所述第四数据表中该DCN节点的状态修改为已完成,并将所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量进行递减;
若确定所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量为零时,则确定DCN区中执行所述批量数据处理任务的DCN节点都已经完成任务。
基于相同的技术构思,本申请实施例提供了一种计算机设备,如图5所示,包括至少一个处理器501,以及与至少一个处理器连接的存储器502,本申请实施例中不限定处理器501与存储器502之间的具体连接介质,图5中处理器501和存储器502之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本申请实施例中,存储器502存储有可被至少一个处理器501执行的指令,至少一个处理器501通过执行存储器502存储的指令,可以执行前述的批量数据处理方法中所包括的步骤。
其中,处理器501是计算机设备的控制中心,可以利用各种接口和线路连接终端设备的各个部分,通过运行或执行存储在存储器502内的指令以及调用存储在存储器502内的数据,从而获得客户端地址。可选的,处理器501可包括一个或多个处理单元,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。在一些实施例中,处理器501和存储器502可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器501可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器502可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器502是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于相同的技术构思,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行批量数据处理方法的步骤。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种批量数据处理方法,其特征在于,应用于分布式资源处理系统,所述方法包括:
在数据管理区获取到批量数据处理任务请求后,若根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务后,则针对所述任务请求确定任务执行标识信息,将所述任务的状态修改为正在执行中;
若确定所述任务需要发送到数据通信网络DCN区,则根据所述任务执行标识信息确定所述DCN区中是否存在DCN节点正在执行所述任务;
若确定所述DCN区中不存在DCN节点正在执行所述任务,则将所述任务发送给所述DCN区中的至少一个DCN节点,以使所述DCN节点处理所述任务,并将所述DCN节点的执行状态修改为正在执行中;
若确定DCN区中执行所述任务的DCN节点都已经完成任务,则将所述任务的状态修改为任务执行成功。
2.根据权利要求1所述的方法,其特征在于,所述根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务,包括:
若确定所述第一数据表中在当前批量数据处理周期内未查找到所述任务标识信息,则确定当前批量数据处理周期内未执行过所述任务,所述第一数据表用于记录不同批量数据处理周期内执行过的批量数据处理任务的任务标识信息。
3.根据权利要求1或2所述的方法,其特征在于,所述确定所述DCN区中不存在DCN节点正在执行所述任务,包括:
若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息,则确定所述DCN区中不存在DCN节点正在执行所述任务,所述第二数据表用于记录不同批量数据处理周期内执行过的任务执行标识信息、所述任务执行标识信息对应的各DCN节点以及各DCN节点的任务执行状态,所述第三数据表用于记录在不同批量数据处理周期内执行过的任务执行标识信息以及向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量。
4.根据权利要求3所述的方法,其特征在于,所述若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息后,确定所述DCN区中不存在DCN节点正在执行所述任务前,还包括:
确定DCN区中每个DCN节点的第四数据表中未查找到所述任务执行标识信息,所述第四数据表用于记录每个DCN节点针对不同的任务执行标识信息对应的批量数据处理任务的任务执行状态。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若确定所述第一数据表中在当前批量数据处理周期内能够查询到所述任务标识信息,则确定所述任务标识信息对应的任务执行状态;
若确定所述任务执行状态为任务失败,则执行确定所述批量数据处理任务是否需要发送到数据通信网络DCN区的步骤,并将所述批量数据处理任务的状态修改为正在执行中。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若在数据管理区的第二数据表中查找到所述任务执行标识信息,则确定所述任务执行标识信息对应的各DCN节点中任务执行状态为失败状态的DCN节点;
将所述第二数据表中任务执行状态为失败状态的DCN节点的任务执行状态修改为正在执行中,并执行在数据管理区的第三数据表中是否能够查找到所述任务执行标识信息的步骤。
7.根据权利要求4所述的方法,其特征在于,所述若确定DCN区中执行所述批量数据处理任务的节点都已经完成任务,则将所述批量数据处理任务的状态修改为任务执行成功,包括:
若确定DCN区中执行所述批量数据处理任务的任一个DCN节点已执行完成任务,则将所述第四数据表中该DCN节点的状态修改为已完成,并将所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量进行递减;
若确定所述第三数据表中的向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量为零时,则确定DCN区中执行所述批量数据处理任务的DCN节点都已经完成任务。
8.一种批量数据处理装置,其特征在于,所述装置包括:
任务执行标识信息确定单元,用于在数据管理区获取到批量数据处理任务请求后,若根据所述任务请求中的任务标识信息确定当前批量数据处理周期内未执行过所述任务后,则针对所述任务请求确定任务执行标识信息,将所述任务的状态修改为正在执行中;
DCN节点任务处理单元,用于若确定所述任务需要发送到数据通信网络DCN区,则根据所述任务执行标识信息确定所述DCN区中是否存在DCN节点正在执行所述任务;若确定所述DCN区中不存在DCN节点正在执行所述任务,则将所述任务发送给所述DCN区中的至少一个DCN节点,以使所述DCN节点处理所述任务,并将所述DCN节点的执行状态修改为正在执行中;
任务确定单元,用于若确定DCN区中执行所述任务的DCN节点都已经完成任务,则将所述任务的状态修改为任务执行成功。
9.根据权利要求8所述的装置,其特征在于,所述任务执行标识信息确定单元具体用于:
若确定所述第一数据表中在当前批量数据处理周期内未查找到所述任务标识信息,则确定当前批量数据处理周期内未执行过所述任务,所述第一数据表用于记录不同批量数据处理周期内执行过的批量数据处理任务的任务标识信息。
10.根据权利要求8或9所述的装置,其特征在于,所述DCN节点任务处理单元具体用于:
若在数据管理区的第二数据表中未查找到所述任务执行标识信息,且在数据管理区的第三数据表中未查找到所述任务执行标识信息,则确定所述DCN区中不存在DCN节点正在执行所述任务,所述第二数据表用于记录不同批量数据处理周期内执行过的任务执行标识信息、所述任务执行标识信息对应的各DCN节点以及各DCN节点的任务执行状态,所述第三数据表用于记录在不同批量数据处理周期内执行过的任务执行标识信息以及向所述任务执行标识信息对应的各DCN节点发送批量数据处理任务通知的数量。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
12.一种计算机可读存储介质,其特征在于,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得计算机执行如权利要求1至7中任一项所述的方法。
CN201910562584.4A 2019-06-26 2019-06-26 一种批量数据处理方法及装置 Pending CN110275767A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910562584.4A CN110275767A (zh) 2019-06-26 2019-06-26 一种批量数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910562584.4A CN110275767A (zh) 2019-06-26 2019-06-26 一种批量数据处理方法及装置

Publications (1)

Publication Number Publication Date
CN110275767A true CN110275767A (zh) 2019-09-24

Family

ID=67963278

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910562584.4A Pending CN110275767A (zh) 2019-06-26 2019-06-26 一种批量数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN110275767A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110895490A (zh) * 2019-11-29 2020-03-20 深圳乐信软件技术有限公司 一种数据批量处理系统、方法、设备和存储介质
CN112634021A (zh) * 2020-12-24 2021-04-09 中国建设银行股份有限公司 客户数据处理方法和装置
CN113515516A (zh) * 2021-08-09 2021-10-19 北京字节跳动网络技术有限公司 一种数据处理方法、装置、计算机设备和计算机存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110895490A (zh) * 2019-11-29 2020-03-20 深圳乐信软件技术有限公司 一种数据批量处理系统、方法、设备和存储介质
CN112634021A (zh) * 2020-12-24 2021-04-09 中国建设银行股份有限公司 客户数据处理方法和装置
CN113515516A (zh) * 2021-08-09 2021-10-19 北京字节跳动网络技术有限公司 一种数据处理方法、装置、计算机设备和计算机存储介质

Similar Documents

Publication Publication Date Title
JP7474002B2 (ja) 金融商品取引管理システム、金融商品取引管理システムにおける金融商品取引管理方法
CN107230092B (zh) 账务处理方法、装置及服务器
CN110275767A (zh) 一种批量数据处理方法及装置
CN113467824B (zh) 一种数据处理方法、装置、设备及存储介质
JP5537454B2 (ja) 証券売買模擬システム
CN115168280B (zh) 行情快照的处理方法及相关装置
US11861570B2 (en) Systems and methods for cryptocurrency asset bundles
JP4536833B2 (ja) 金融情報処理システム
CN109034948A (zh) 交易处理方法、装置、设备及系统
CN106952085B (zh) 一种数据存储与业务处理的方法及装置
CN114691383A (zh) 数据处理方法、装置、设备及存储介质
CN106874080B (zh) 基于分布式服务器集群的数据计算方法及系统
US20080244427A1 (en) Low latency display methods for thin client devices
CN116167857A (zh) 数据处理方法、装置、计算机设备及存储介质
JP2009176174A (ja) オークション代行サーバ装置、およびオークション代行方法
WO2020255639A1 (ja) ポータル提供システムおよびポータル提供方法
CN110263063B (zh) 一种资产的查询方法及服务器
JP2005018287A (ja) 株式売買注文発注システム及び株式売買注文の発注方法
CN111523927A (zh) 资源的发送方法、装置、设备及存储介质
CN101203876A (zh) 在线回购系统
CN110753114A (zh) 针对工业领域的数据共享方法、云平台及系统
CN115129654B (zh) 行情快照处理方法及相关装置
JP6989140B2 (ja) 資産運用管理サーバ
KR102601521B1 (ko) 셀러 매칭 기반 산지 직송을 위한 농수산물 주문 중개처리 방법, 장치 및 시스템
CN110415121B (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