CN109670932B - 信贷数据核算方法、装置、系统和计算机存储介质 - Google Patents

信贷数据核算方法、装置、系统和计算机存储介质 Download PDF

Info

Publication number
CN109670932B
CN109670932B CN201811120789.9A CN201811120789A CN109670932B CN 109670932 B CN109670932 B CN 109670932B CN 201811120789 A CN201811120789 A CN 201811120789A CN 109670932 B CN109670932 B CN 109670932B
Authority
CN
China
Prior art keywords
accounting
credit data
preset
task package
task
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
CN201811120789.9A
Other languages
English (en)
Other versions
CN109670932A (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 Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201811120789.9A priority Critical patent/CN109670932B/zh
Publication of CN109670932A publication Critical patent/CN109670932A/zh
Application granted granted Critical
Publication of CN109670932B publication Critical patent/CN109670932B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/03Credit; Loans; Processing thereof

Abstract

本发明公开了一种信贷数据核算方法,所述信贷数据核算方法应用于主控设备,包括以下步骤:接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;将各所述信贷数据进行分片处理,形成对应的核算任务包;将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。本发明还公开了一种信贷数据核算装置、系统和计算机存储介质。本发明预先设置分布式系统,主控设备将待核算的信贷数据分配至各个核算设备进行信贷数据核算,实现高效安全地进行信贷数据核算。

Description

信贷数据核算方法、装置、系统和计算机存储介质
技术领域
本发明涉及数据处理领域,尤其涉及信贷数据核算方法、装置、系统和计算机存储介质。
背景技术
批处理(Batch),批处理就是对某对象进行批量的处理,在数据处理量较大,为了实现高效地数据处理,当前都采用批处理的方式。
当前信贷机构业务数据量较大,通常采用批处理方式,比如,银行信贷核算数据处理,由于批处理的数据量很大,批处理时间过长,数据处理实效性差,如何避免当前批处理的弊端,实现高效安全地信贷数据核算成为了当前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种信贷数据核算方法、装置、系统和计算机存储介质,旨在实现高效安全地进行信贷数据核算。
为实现上述目的,本发明提供信贷数据核算方法,所述信贷数据核算方法包括以下步骤:
接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
将各所述信贷数据进行分片处理,形成对应的核算任务包;
将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。
可选地,所述将各所述信贷数据进行分片处理,形成对应的核算任务包的步骤,包括:
统计所述信贷数据的核算总量,判断所述核算总量是否超过预设加载量;
若所述核算总量超过所述预设加载量,则将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包;
若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型进行分片处理,形成核算任务包。
可选地,所述将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果的步骤,包括:
获取所述核算任务包的任务包数量,判断所述任务包数量是否小于预设阈值;
若所述任务包数量小于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定状态最优的核算设备作为目标核算设备,并将各所述核算任务包发送至所述目标核算设备,以供所述目标核算设备处理各所述核算任务包得到核算结果;
若所述任务包数量大于或等于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定各所述核算设备的处理量,向各所述核算设备分配各自处理量对应的所述核算任务包,以供所述核算设备处理各所述核算任务包得到核算结果。
可选地,所述接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果的步骤之后,包括:
获取所述批处理结果,将所述批处理结果与预设批处理结果进行比对;
若所述批处理结果与所述预设批处理结果匹配,则输出提示信息,以提示批处理正常;
若所述批处理结果与所述预设批处理结果不匹配,则进行数据回滚。
此外,为实现上述目的,本发明还提供一种信贷数据核算方法,所述信贷数据核算方法应用于核算设备,所述信贷数据核算方法包括以下步骤:
接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应;
通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包;
按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
可选地,所述按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备的步骤,包括:
按所述线程各自的所述线程函数处理所述核算任务包,监测所述线程的处理状态信息,并根据所述处理状态信息判断所述线程是否异常;
若所述线程正常,则获取所述线程的核算结果,并将所述核算结果发送至主控设备;
若所述线程异常,则获取异常线程中的异常核算任务包,并将所述异常核算任务包进行标记生成批处理异常日志,以供信贷数据批处理的问题查找。
此外,为实现上述目的,本发明还提供一种信贷数据核算装置,所述信贷数据核算装置设置于主控设备,所述信贷数据核算装置包括:
接收处理模块,用于接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
数据分片模块,用于将各所述信贷数据进行分片处理,形成对应的核算任务包;
核算分配模块,用于将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收生成模块,用于接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。
此外,为实现上述目的,本发明还提供一种信贷数据核算装置所述信贷数据核算装置设置于核算设备,所述信贷数据核算装置包括:
接收分配模块,用于接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应;
任务获取模块,用于通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包;
任务处理模块,用于按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
此外,为实现上述目的,本发明还提供一种信贷数据核算系统,所述信贷数据核算系统包括通信连接的主控设备和核算设备;
其中,所述主控设备包括:第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的信贷数据核算程序;
所述信贷数据核算程序被所述第一处理器执行时实现以下步骤包括:
接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
将各所述信贷数据进行分片处理,形成对应的核算任务包;
将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果;
所述核算设备包括:第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的信贷数据核算程序;
所述信贷数据核算程序被所述第二处理器执行时实现以下步骤包括:
接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应;
通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包;
按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
此外,为实现上述目的,本发明还提供计算机存储介质;
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的信贷数据核算方法的步骤。
本发明实施例提出的一种信贷数据核算方法、装置、系统和计算机存储介质,本申请中信贷数据核算方法,应用于主控设备,主控设备接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;将各所述信贷数据进行分片处理,形成对应的核算任务包;主控设备将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。通过主控设备将信贷数据进行分片处理,得到核算任务包,并根据核算任务包的数量,将核算任务包分配至分布式机群的核算设备进行处理,既有效地避免了硬件等的限制条件,使得信贷数据核算的安全性提高,又保证信贷数据核算的处理效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明信贷数据核算方法第一实施例的流程示意图;
图3为本发明信贷数据核算方法第二实施例的流程示意图;
图4为本发明信贷数据核算装置一实施例的功能模块示意图;
图5为本发明信贷数据核算装置另一实施例的功能模块示意图;
图6为本发明信贷数据核算系统一实施例的具体应用场景示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
由于现有技术中在信贷数据核算时,采用批处理方法,即,将数据进行批量加载,并将批量加载的核算数据进行核算处理,但是当前的批处理大多是单线程的处理模式,在信贷输出核算时上一个核算任务完成后才能开始新的核算任务,这样在出现个别信贷数据出现异常时,一个核算任务不可以正常处理,就需要全部的数据处理暂停,进行异常的查找再重新处理,这样的信贷数据核销就会影响批处理的效率。
本发明实施例的主要解决方案是:各个终端将信贷数据发送至主控设备,无论信贷数据多少的数据量都可以进行核算批处理,具体地:主控设备接收各个终端发送的信贷数据,并触发信贷数据批处理请求,主控设备接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;主控设备将各所述信贷数据进行分片处理,形成对应的核算任务包;并将各所述核算任务包分配至与预设分布式机群的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。本发明提供的解决方案,利用分布式设备进行信贷数据的核算,提高了信贷数据核算的效率和安全性。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的主控设备(又叫主控服务器,或者服务器,其中,主控设备可以是由单独的信贷数据核算装置构成,也可以是由其他装置与信贷数据核算装置组合形成)结构示意图。
本发明实施例服务器指一个管理资源并为用户提供服务的计算机,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机系统也被称为服务器。相对于普通PC(personal computer)个人计算机来说,服务器在稳定性、安全性、性能等方面都要求较高;如图1所示,该服务器可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),网络接口1004,用户接口1003,存储器1005,通信总线1002、芯片组、磁盘系统、网络等硬件等。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真WIreless-FIdelity,WIFI接口)。存储器1005可以是高速随机存取存储器(random access memory,RAM),也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,服务器还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块;输入单元,比显示屏,触摸屏;网络接口可选除无线接口中除WiFi外,蓝牙、探针等。本领域技术人员可以理解,图1中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,该计算机软件产品存储在一个存储介质(存储介质:又叫计算机存储介质、计算机介质、可读介质、可读存储介质、计算机可读存储介质或者直接叫介质等,如RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。
在图1所示的服务器中,网络接口1004主要用于连接后台数据库,与后台数据库进行数据通信;用户接口1003主要用于连接客户端(客户端,又叫用户端或终端,本发明实施例终端可以固定终端也可以是移动终端,如,带联网功能的智能空调、智能电灯、智能电源、智能音箱、自动驾驶汽车、PC、智能手机、平板电脑、电子书阅读器、便携计算机等,终端中包含传感器比如光传感器、运动传感器以及其他传感器,在此不再赘述),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行本发明以下实施例提供的信贷数据核算方法中的步骤。
本发明信贷数据核算方法的第一实施例中,所述信贷数据核算方法包括:
接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
将各所述信贷数据进行分片处理,形成对应的核算任务包;
将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。
在本实施例的上述步骤执行之前,需要预先设置分布式系统,即本申请的分布系统包括主控设备和核算设备,本申请中的主控设备控制各个核算设备,形成分布式系统;此外,主控设备还与终端通信连接,终端将信贷数据发送至主控设备,主控设备接收终端发送的各个信贷数据,并基于接收的信贷数据触发批处理请求,主控设备将各个信贷数据进行分片处理形成核算任务包,主控设备根据核算任务包的任务包数量,将核算任务包分配至分布式机群的核算设备进行信贷数据核算,核算设备接收主控设备发送的核算任务包,并核算设备将核算任务包分配至各个线程的缓存队列中,通过核算设备进行多线程的核算处理,具体地:
参照图2,本发明信贷数据核算方法的第一实施例中,所述信贷数据核算方法包括:
步骤S10,接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据。
主控设备接收信贷数据的批处理请求,其中,批处理请求的触发方式并不作限定,例如,用户将终端中的信贷数据发送至主控设备,并基于信贷数据触发信贷数据的批处理请求;或者,用户在主控设备上手动触发信贷数据的批处理请求;再或者主控设备上预先设置了批处理请求的触发条件,在主控设备监测到符合触发条件时,主控设备自动触发信贷数据的批处理请求,主控设备接收到信贷数据的批处理请求之后,主控设备获取批处理请求关联的信贷数据作为待核算的信贷数据。例如:本申请中的信贷数据可以是借贷合同,本实施例中可以对借贷合同还款期限,是否逾期,还款额度等信息进行核算。
步骤S20,将各所述信贷数据进行分片处理,形成对应的核算任务包。
主控设备将各所述信贷数据进行分片处理,形成对应的核算任务包,需要了解的是:若不对信贷数据进行分片处理,则只可以采用单线程的处理方式对信贷数据进行核算,单线程处理效率较低,本申请中为了提高信贷数据的核算的处理效率,因此,将各所述信贷数据进行分片处理;本实施例中信贷数据分片可以按照不同的分片规则,具体地,包括:
步骤a1,统计所述信贷数据的核算总量,判断所述核算总量是否超过预设加载量;
步骤b1,若所述核算总量超过所述预设加载量,则将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包;
步骤c1,若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型进行分片处理,形成核算任务包。
即,主控设备统计所述信贷数据的核算总量,即,主控设备将待核算信贷数据的数据量作为核算总量,主控设备根据核算总量的多少来判断采用何种分片规则对各个信贷数据进行分片,例如,主控设备统计待核算的借贷合同的数量,以根据待核算的借贷合同的数量确定对各个借贷合同采用何种分片规则,具体地:
主控设备将统计得到的核算总量与预设加载量进行比较,其中,预设加载量是指预先设置的信贷数据批处理量,本实施例中的预设加载量可以根据具体的应用场景确定,例如,将预设加载量设置为100,若主控设备确定所述核算总量超过所述预设加载量,则主控设备将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包,例如,借贷合同的核算总量为10w,预设加载量设置为100,则主控设备确定核算总量超过预设加载量,主控设备将10w的借贷合同按预设加载量100进行划分形成1000个核算任务包。本实施例中主控设备确定待审核的信贷数据的数据量较大,主控设备按照预设加载量进行信贷数据分片,减少单次批处理量,在保证批处理效率的同时还可以避免出现数据异常时,异常排查困难的问题。
进一步地,若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型(其中,预设业务类型是指预设设置的信贷数据分类规则)进行分片处理,形成核算任务包,例如,借贷合同的核算总量为80,预设加载量设置为100,则主控设备确定核算总量不超过预设加载量,主控设备将80的借贷合同按核算类型进行分类,即,主控设备将80个借贷合同按照还款期限、还款额度划分为两个核算任务包,一个核算任务包中包含80个借贷合同的还款期限核算任务、一个核算任务包中包含80个借贷合同的还款额度核算任务;本实施例中主控设备确定待审核的信贷数据的数据量不大,主控设备按照预设业务类型进行信贷数据分片,本实施例中兼顾数据量不大时的批处理方案,在数据量较小的也可以采用批处理的方式进行信贷数据的核算,保证批处理的效率。
本实施例中根据信贷数据的核算总量,确定对应的分片规则,并对应将核算数据按照确定的分片规则进行分片,使得信贷数据的核算批处理更加智能。
步骤S30,将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果。
本实施例中主控设备将核算任务包分配至预设分布式机群(预设分布式机群是指预先设置的与主控设备通信连接的多个核算设备)对应的核算设备,具体可以根据核算任务包的数量进行划分,若核算任务包的数量较多时,则主控设备将核算任务包分配至预设分布式机群中的多个核算设备进行核算,若核算任务包的数量较少时,则主控设备将核算任务包分配至预设分布式机群中的一个核算设备进行核算,本实施例中根据核算任务包的任务包数量将核算任务包分配给对应的核算设备,以通过分布式处理的方式,提高信贷数据的核算效率。
步骤S40,接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。
主控设备接收各所述核算设备发送的各所述核算结果,主控设备将各个核算设备发送的核算结果进行汇总,形成所述信贷数据的批处理结果,方便了信贷数据核算结果的查看。
在本实施例中通过主控设备将信贷数据进行分片处理,得到核算任务包,并根据核算任务包的数量,将核算任务包分配至分布式机群的核算设备进行处理,既有效地避免了硬件等的限制条件,使得信贷数据核算的安全性提高,又保证信贷数据核算的处理效率。
在本申请第一实施例的基础上进一步地提出了本实施例,本实施例是本申请第一实施例的步骤S30的细化,在本实施例中根据任务包数量和预设分布式机群中各个核算设备的状态信息进行核算任务包的划分,使得核算任务包的分配更加合理,具体地:
步骤S31,获取所述核算任务包的任务包数量,判断所述任务包数量是否小于预设阈值;
即,主控设备获取所述核算任务包的任务包数量,主控设备将所述任务包数量与预设阈值进行比较,其中,预设阈值是指预先设置的任务包数量临界值,预设阈值可以根据具体场景设置,例如设置为50,主控设备根据比对结果,判断是否将核算任务包分配给多个核算设备进行核算。
步骤S32,若所述任务包数量小于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定状态最优的核算设备作为目标核算设备,并将各所述核算任务包发送至所述目标核算设备,以供所述目标核算设备处理各所述核算任务包得到核算结果。
若主控设备确定所述任务包数量小于所述预设阈值,即,任务包数量较少,主控设备确定将各核算任务包分配至一个核算设备,此时,主控设备需要将核算任务包分配置至一个最优的核算设备,即,主控设备获取预设分布式机群中各个核算设备的状态信息,其中,状态信息包括各个核算设备CPU的占用率,处理效率、当前任务量等等,主控设备根据所述状态信息选择状态最优的核算设备作为目标核算设备,即,主控设备选择CPU的占用率最低,处理效率最高、当前任务量最少的核算设备作为目标核算设备,并将各所述核算任务包发送至所述目标核算设备,以供所述目标核算设备处理各所述核算任务包得到核算结果;需要补充说明的是,若一个核算设备不能同时满足上述条件,则主控设备可以综合各个因素选择一个最优化的核算设备。
本实施例中在核算任务包较少时,主控设备将核算任务分配至一个核算设备进行核算,减少硬件资源的占用。
步骤S33,若所述任务包数量大于或等于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定各所述核算设备的处理量,向各所述核算设备分配各自处理量对应的所述核算任务包,以供所述核算设备处理各所述核算任务包得到核算结果
即,主控设备确定所述任务包数量大于或等于所述预设阈值,主控设备将各核算任务包分配至多个核算设备,此时,主控设备需要确定每个核算设备中应该分配多少,即,主控设备获取预设分布式机群中各个核算设备的状态信息,主控设备根据所述状态信息确定各所述核算设备的处理量,向各所述核算设备分配各自处理量对应的所述核算任务包,以供所述核算设备处理各所述核算任务包得到核算结果。
例如,当前共有核算任务包10w个,核算设备3台,主控设备获取预设分布式机群中各个核算设备的状态信息为:第一核算设备的CPU的占用率低、当前任务量高、处理效率低;核算设备2的CPU的占用率低、当前任务量低、处理效率高,核算设备3的CPU的占用率低、当前任务量低、处理效率低;则主控设备根据各个核算设备的所述状态信息和总的核算任务包数量,将10w个核算任务包按照以下规则进行分配:分配1w个核算任务包至第一核算设备;主控设备分配6w个核算任务包至核算设备2;主控设备分配3w个核算任务包至核算设备3,以供所述核算设备处理各所述核算任务包得到核算结果。
本实施例中在核算任务包较多时,主控设备将核算任务包分配至多个核算设备进行核算,本实施例中通过多个核算设备进行核算,减少了硬件资源的瓶颈,提高了信贷数据核算效率。
在本申请上述实施例的基础上进一步地提出了本实施例,在本实施例中主控设备根据批处理的处理结果判断批处理是否异常,具体地,包括:
步骤S50,获取所述批处理结果,将所述批处理结果与预设批处理结果进行比对;
主控设备获取所述批处理结果,主控设备将所述批处理结果与预设批处理结果进行比对,主控设备根据比对结果确定是否存在批处理异常的结果,其中,预设批处理结果为预先设置的标准处理结果。
步骤S60,若所述批处理结果与所述预设批处理结果匹配,则输出提示信息,以提示批处理正常;
在所述批处理结果与所述预设批处理结果匹配,主控设备确定批处理正常,主控设备输出提示信息,以提示批处理正常。
步骤S70,若所述批处理结果与所述预设批处理结果不匹配,则进行数据回滚。
在所述批处理结果与所述预设批处理结果不匹配,主控设备确定批处理异常,则进行数据回滚;本实施例中主控设备将所述批处理结果与预设批处理结果进行比对,根据比对结果判断是否存在批处理异常的情况,在出现批处理异常时,进行数据回滚,第一时间将数据恢复至最新场景,进行信贷数据补处理操作,使得信贷数据批处理更加智能。
参照图3,进一步提出了本发明信贷数据核算方法的第二实施例,本实施例中的信贷数据核算方法应用于核算设备,核算设备接收主控设备发送的核算任务包进行核算,具体地,所述信贷数据核算方法包括:
步骤S80,接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应。
核算设备接收主控设备发送的核算任务包,核算设备将各所述核算任务包分配至多线程的缓存队列中,具体地,核算设备获取自身预先设置的最小线程数和最大线程数,核算设备根据最小线程数、最大线程数和核算任务包的数量分配线程数。具体的,在为核算任务包分配线程时,使用的线程数应在最大线程数和最小线程数之间。例如,设置最小线程数为5,最大线程数为10,核算任务包为2000,则可使用5~10个线程来处理2000个核算任务包,比如可使用8个线程来处理当前核算任务包,则每个线程可处理250个核算任务包,即,核算设备将250个核算任务包分别分配至8个线程的对应的缓存队列中。
步骤S90,通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包。
核算设备通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包。即,核算设备创建对应的线程处理利用对应的线程函数,从对应的缓存队列中获取核算任务包,本实施例中在核算设备的每个线程都会设计一个任务队列,该线程各自不同的线程函数则会不断的从队列中取任务来执行,如果线程中没有任务则会调用系统函数Sleep(休眠)来停止线程的执行,当Sleep的时间到达后则又会继续从队列中取任务,线程重复以往执行该循环来取任务执行,没任务则休眠。如果线程收到一个退出线程的任务则会退出该循环,从而终止该线程的执行。
步骤S100,按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
核算设备按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。在本实施例中核算设备通过多线程处理核算任务包,使得核算处理效率更高。
进一步地,核算设备在进行核算结果输出的过程中,还需要对线程进行监控,防止线程数据处理异常的情况,具体地:
步骤a,按所述线程各自的所述线程函数处理所述核算任务包,监测所述线程的处理状态信息,并根据所述处理状态信息判断所述线程是否异常;
步骤b,若所述线程正常,则获取所述线程的核算结果,并将所述核算结果发送至主控设备;
步骤c,若所述线程异常,则获取异常线程中的异常核算任务包,并将所述异常核算任务包进行标记生成批处理异常日志,以供信贷数据批处理的问题查找。
即,核算设备按所述线程各自的所述线程函数处理所述核算任务包,核算设备中设置有监控模块,用于监测所述线程的处理状态信息,其中,处理状态信息包括:线程的创建时间、处理时间、是否线程的状态变化情况,核算设备根据所述处理状态信息判断所述线程是否异常;例如,若处理状态信息中线程阻塞时间超过预设时间间隔,则线程异常。
在监控模块根据处理状态信息确定所述线程正常,则核算涉笔获取所述线程的核算结果,并将所述核算结果发送至主控设备;若所述线程异常,则获取异常线程中的异常核算任务包,并将所述异常核算任务包进行标记生成批处理异常日志,即,核算设备将异常的核算任务包进行标记,并添加到预先设置的异常日志模板中,生成批处理异常日志,以供信贷数据批处理的问题查找。
在本实施例中核算设备对各个线程进行监控,并根据线程监控得到的处理状态信息判断线程是否异常,在线程异常时,核算设备生成对应的异常日志,以供后期问题查找,使得用户问题查找更加便捷。
此外,参照图4,本发明实施例还提出信贷数据核算装置的一实施例,所述信贷数据核算装置设置于主控设备,所述信贷数据核算装置包括:
接收处理模块10,用于接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
数据分片模块20,用于将各所述信贷数据进行分片处理,形成对应的核算任务包;
核算分配模块30,用于将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收生成模块40,用于接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果。
可选地,所述数据分片模块20,包括:
统计单元,用于统计所述信贷数据的核算总量,判断所述核算总量是否超过预设加载量;
第一分片单元,用于若所述核算总量超过所述预设加载量,则将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包;
第二分片单元,用于若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型进行分片处理,形成核算任务包。
可选地,所述核算分配模块30,包括:
获取判断单元,用于获取所述核算任务包的任务包数量,判断所述任务包数量是否小于预设阈值;
第一分配单元,用于若所述任务包数量小于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定状态最优的核算设备作为目标核算设备,并将各所述核算任务包发送至所述目标核算设备,以供所述目标核算设备处理各所述核算任务包得到核算结果;
第二分配单元,用于若所述任务包数量大于或等于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定各所述核算设备的处理量,向各所述核算设备分配各自处理量对应的所述核算任务包,以供所述核算设备处理各所述核算任务包得到核算结果。
可选地,所述信贷数据核算装置,还包括:
获取比对模块,用于获取所述批处理结果,将所述批处理结果与预设批处理结果进行比对;
比对提示模块,用于若所述批处理结果与所述预设批处理结果匹配,则输出提示信息,以提示批处理正常;
数据回归模块,用于若所述批处理结果与所述预设批处理结果不匹配,则进行数据回滚。
此外,参照图5,本发明实施例还提出信贷数据核算装置的另一实施例,所述信贷数据核算装置设置于核算设备,所述信贷数据核算装置包括:
接收分配模块50,用于接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应;
任务获取模块60,用于通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包;
任务处理模块70,用于按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
可选地,所述任务处理模块70,包括:
线程监测单元,用于按所述线程各自的所述线程函数处理所述核算任务包,监测所述线程的处理状态信息,并根据所述处理状态信息判断所述线程是否异常;
结果上传单元,用于若所述线程正常,则获取所述线程的核算结果,并将所述核算结果发送至主控设备;
日志生成单元,用于若所述线程异常,则获取异常线程中的异常核算任务包,并将所述异常核算任务包进行标记生成批处理异常日志,以供信贷数据批处理的问题查找。
其中,信贷数据核算装置的各个功能模块实现的步骤可参照本发明信贷数据核算方法的各个实施例,此处不再赘述。
此外,参照图6,本发明实施例还提出一种信贷数据核算系统,所述信贷数据核算系统包括通信连接的主控设备和核算设备;
其中,所述主控设备包括:第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的信贷数据核算程序;
所述信贷数据核算程序被所述第一处理器执行时实现以下步骤包括:
接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
将各所述信贷数据进行分片处理,形成对应的核算任务包;
将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果;
所述核算设备包括:第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的信贷数据核算程序;
所述信贷数据核算程序被所述第二处理器执行时实现以下步骤包括:
接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应;
通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包;
按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
其中,信贷数据核算系统实现的步骤可参照本发明信贷数据核算方法的各个实施例,此处不再赘述。
此外,本发明实施例还提出一种计算机存储介质。
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的信贷数据核算方法中的操作。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序;术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (6)

1.一种信贷数据核算方法,其特征在于,所述信贷数据核算方法应用于主控设备,所述信贷数据核算方法包括以下步骤:
接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
将各所述信贷数据进行分片处理,形成对应的核算任务包;
将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果;
其中,所述将各所述信贷数据进行分片处理,形成对应的核算任务包的步骤,包括:
统计所述信贷数据的核算总量,判断所述核算总量是否超过预设加载量;
若所述核算总量超过所述预设加载量,则将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包;
若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型进行分片处理,形成核算任务包,所述预设业务类型为预设设置的信贷数据分类规则。
2.如权利要求1所述的信贷数据核算方法,其特征在于,所述将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果的步骤,包括:
获取所述核算任务包的任务包数量,判断所述任务包数量是否小于预设阈值;
若所述任务包数量小于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定状态最优的核算设备作为目标核算设备,并将各所述核算任务包发送至所述目标核算设备,以供所述目标核算设备处理各所述核算任务包得到核算结果;
若所述任务包数量大于或等于所述预设阈值,则获取预设分布式机群中各个核算设备的状态信息,根据所述状态信息确定各所述核算设备的处理量,向各所述核算设备分配各自处理量对应的所述核算任务包,以供所述核算设备处理各所述核算任务包得到核算结果。
3.如权利要求1所述的信贷数据核算方法,其特征在于,所述接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果的步骤之后,包括:
获取所述批处理结果,将所述批处理结果与预设批处理结果进行比对;
若所述批处理结果与所述预设批处理结果匹配,则输出提示信息,以提示批处理正常;
若所述批处理结果与所述预设批处理结果不匹配,则进行数据回滚。
4.一种信贷数据核算装置,其特征在于,所述信贷数据核算装置设置于主控设备,所述信贷数据核算装置包括:
接收处理模块,用于接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
数据分片模块,用于将各所述信贷数据进行分片处理,形成对应的核算任务包;
核算分配模块,用于将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收生成模块,用于接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果;
其中,所述数据分片模块,还用于:
统计所述信贷数据的核算总量,判断所述核算总量是否超过预设加载量;
若所述核算总量超过所述预设加载量,则将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包;
若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型进行分片处理,形成核算任务包,所述预设业务类型为预设设置的信贷数据分类规则。
5.一种信贷数据核算系统,其特征在于,所述信贷数据核算系统包括通信连接的主控设备和核算设备;
其中,所述主控设备包括:第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的信贷数据核算程序;
所述信贷数据核算程序被所述第一处理器执行时实现以下步骤包括:
接收信贷数据的批处理请求,获取所述批处理请求关联的信贷数据;
将各所述信贷数据进行分片处理,形成对应的核算任务包;
将各所述核算任务包分配至预设分布式机群对应的核算设备中,以供各所述核算设备处理所述核算任务包,得到核算结果;
接收各所述核算设备发送的各所述核算结果,形成所述信贷数据的批处理结果;
其中,所述将各所述信贷数据进行分片处理,形成对应的核算任务包的步骤,包括:
统计所述信贷数据的核算总量,判断所述核算总量是否超过预设加载量;
若所述核算总量超过所述预设加载量,则将各所述信贷数据按所述预设加载量进行分片处理,形成核算任务包;
若所述核算总量不超过所述预设加载量,则将各所述信贷数据按预设业务类型进行分片处理,形成核算任务包,所述预设业务类型为预设设置的信贷数据分类规则;
所述核算设备包括:第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的信贷数据核算程序;
所述信贷数据核算程序被所述第二处理器执行时实现以下步骤包括:
接收主控设备发送的核算任务包,将各所述核算任务包分配至多线程的缓存队列中,其中,所述缓存队列与所述核算设备的各个线程对应;
通过各线程调用各自的线程函数从各自的缓存队列中获取核算任务包;
按所述线程各自的所述线程函数处理所述核算任务包,得到核算结果,将所述核算结果发送至主控设备。
6.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3中任一项所述的信贷数据核算方法的步骤。
CN201811120789.9A 2018-09-25 2018-09-25 信贷数据核算方法、装置、系统和计算机存储介质 Active CN109670932B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811120789.9A CN109670932B (zh) 2018-09-25 2018-09-25 信贷数据核算方法、装置、系统和计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811120789.9A CN109670932B (zh) 2018-09-25 2018-09-25 信贷数据核算方法、装置、系统和计算机存储介质

Publications (2)

Publication Number Publication Date
CN109670932A CN109670932A (zh) 2019-04-23
CN109670932B true CN109670932B (zh) 2024-02-20

Family

ID=66141606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811120789.9A Active CN109670932B (zh) 2018-09-25 2018-09-25 信贷数据核算方法、装置、系统和计算机存储介质

Country Status (1)

Country Link
CN (1) CN109670932B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111212112B (zh) * 2019-12-17 2022-05-24 中国建设银行股份有限公司 信息处理方法和装置
CN111210356B (zh) * 2020-01-14 2023-03-21 平安医疗健康管理股份有限公司 医保数据分析方法、装置、计算机设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202584217U (zh) * 2012-01-20 2012-12-05 中国工商银行股份有限公司 一种银行数据的并行批量处理系统
CN104834734A (zh) * 2015-05-18 2015-08-12 成都博元科技有限公司 一种高效数据分析处理方法
CN105049268A (zh) * 2015-08-28 2015-11-11 东方网力科技股份有限公司 分布式计算资源分配系统和任务处理方法
CN106330987A (zh) * 2015-06-15 2017-01-11 交通银行股份有限公司 动态负荷均衡方法
CN106534303A (zh) * 2016-11-11 2017-03-22 中国农业银行股份有限公司 一种应用于对账系统的负载均衡方法和装置
CN107508901A (zh) * 2017-09-04 2017-12-22 北京京东尚科信息技术有限公司 分布式数据处理方法、装置、服务器和系统
CN107783829A (zh) * 2017-09-05 2018-03-09 平安科技(深圳)有限公司 任务处理方法、装置、存储介质和计算机设备
CN108038239A (zh) * 2017-12-27 2018-05-15 中科鼎富(北京)科技发展有限公司 一种异构数据源规范化处理方法、装置及服务器

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202584217U (zh) * 2012-01-20 2012-12-05 中国工商银行股份有限公司 一种银行数据的并行批量处理系统
CN104834734A (zh) * 2015-05-18 2015-08-12 成都博元科技有限公司 一种高效数据分析处理方法
CN106330987A (zh) * 2015-06-15 2017-01-11 交通银行股份有限公司 动态负荷均衡方法
CN105049268A (zh) * 2015-08-28 2015-11-11 东方网力科技股份有限公司 分布式计算资源分配系统和任务处理方法
CN106534303A (zh) * 2016-11-11 2017-03-22 中国农业银行股份有限公司 一种应用于对账系统的负载均衡方法和装置
CN107508901A (zh) * 2017-09-04 2017-12-22 北京京东尚科信息技术有限公司 分布式数据处理方法、装置、服务器和系统
CN107783829A (zh) * 2017-09-05 2018-03-09 平安科技(深圳)有限公司 任务处理方法、装置、存储介质和计算机设备
CN108038239A (zh) * 2017-12-27 2018-05-15 中科鼎富(北京)科技发展有限公司 一种异构数据源规范化处理方法、装置及服务器

Also Published As

Publication number Publication date
CN109670932A (zh) 2019-04-23

Similar Documents

Publication Publication Date Title
CN108776934B (zh) 分布式数据计算方法、装置、计算机设备及可读存储介质
CN107832126B (zh) 一种线程的调整方法及其终端
CN105159782A (zh) 基于云主机为订单分配资源的方法和装置
CN109656782A (zh) 可视化调度监控方法、装置及服务器
CN108111554B (zh) 一种访问队列的控制方法及装置
CN107819797B (zh) 访问请求处理方法和装置
CN112311617A (zh) 一种配置化数据监控告警方法及系统
CN110928655A (zh) 一种任务处理方法及装置
CN110262878B (zh) 定时任务处理方法、装置、设备及计算机可读存储介质
CN106878389B (zh) 用于在云系统中进行资源调度的方法和装置
CN109670932B (zh) 信贷数据核算方法、装置、系统和计算机存储介质
CN110933178B (zh) 调整集群系统内的节点配置的方法及服务器
CN114155026A (zh) 一种资源分配方法、装置、服务器及存储介质
CN109117280A (zh) 电子装置及其限制进程间通信的方法、存储介质
CN111061570A (zh) 一种图像计算请求处理方法、装置及终端设备
CN109117279A (zh) 电子装置及其限制进程间通信的方法、存储介质
CN116185623A (zh) 任务分配方法、装置、电子设备及存储介质
CN111586140A (zh) 一种数据交互的方法及服务器
CN113422808B (zh) 物联网平台http信息推送方法、系统、装置及介质
CN110838987A (zh) 队列限流方法、存储介质
CN109120548B (zh) 一种流量控制方法及装置
CN112416558A (zh) 基于区块链的业务数据处理方法、装置及存储介质
CN107689979B (zh) 一种下载请求处理方法和处理设备
CN110597682B (zh) 一种应用部署方法、装置、计算机设备及存储介质
CN112667392A (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