CN117251508B - 一种借据批量入账方法、装置、设备及存储介质 - Google Patents

一种借据批量入账方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117251508B
CN117251508B CN202311234433.9A CN202311234433A CN117251508B CN 117251508 B CN117251508 B CN 117251508B CN 202311234433 A CN202311234433 A CN 202311234433A CN 117251508 B CN117251508 B CN 117251508B
Authority
CN
China
Prior art keywords
borrowing
preset
processed
batch
accounting
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
CN202311234433.9A
Other languages
English (en)
Other versions
CN117251508A (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.)
Hunan Changyin May 8th Consumer Finance Co ltd
Original Assignee
Hunan Changyin May 8th Consumer Finance 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 Hunan Changyin May 8th Consumer Finance Co ltd filed Critical Hunan Changyin May 8th Consumer Finance Co ltd
Priority to CN202311234433.9A priority Critical patent/CN117251508B/zh
Publication of CN117251508A publication Critical patent/CN117251508A/zh
Application granted granted Critical
Publication of CN117251508B publication Critical patent/CN117251508B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请公开了一种借据批量入账方法、装置、设备及存储介质,应用于账务系统,涉及计算机技术领域,包括:从预设借据表中获取待处理借据以及与各待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,待处理借据为当前未结清的借据;若是,则基于当前预设批处理架构的默认分片规则对各待处理借据进行分片;若否,则利用与各待处理借据分别对应的目标字段值以及预设批量智能分片规则进行分片;在分片完成之后,基于分片结果进行借据批量入账,并根据预先确定的目标线性关系表达式进行目标字段值更新。本申请能够有效提高系统资源利用率,并提高借据批量入账的效率。

Description

一种借据批量入账方法、装置、设备及存储介质
技术领域
本发明涉及计算机技术领域,特别涉及一种借据批量入账方法、装置、设备及存储介质。
背景技术
目前,账务系统在进行批量任务跑批时,由于数据量巨大,会导致批量任务耗时很长。故当前基于Spring Batch(一个轻量级的、完善的批处理框架)默认的步骤远程分片技术,将一个步骤数据随机切分成多个等分之后进行,再分配到不同的批量任务节点进行并行处理,从而缩短批量任务的耗时时间。此方法能够提高批量任务的处理速度。但由于不同节点处理的分片的数据存在差异,部分数据的批量耗时时间长,部分数据的批量耗时时间短,从而导致可能出现,有些分片已经处理完毕,但还需要等待其他的分片处理完成才能使整个步骤处理结束,从而可能浪费系统资源,导致不必要的等待。
发明内容
有鉴于此,本发明的目的在于提供一种借据批量入账方法、装置、设备及存储介质,能够有效提高系统资源利用率,并缩短批量耗时时间,从而提高借据批量入账的效率。其具体方案如下:
第一方面,本申请提供了一种借据批量入账方法,应用于账务系统,包括:
从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;
若是,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;
若否,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;
在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。
可选的,所述从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据对应的用于表征借据处理耗时等级的目标字段值之前,还包括:
对所述预设借据表执行相应的目标字段新增操作、字段值配置操作;所述字段值配置操作为用于为所述目标字段新增操作中新增的字段配置相应的用于表征借据处理耗时等级的所述目标字段值。
可选的,所述对所述预设借据表执行相应的目标字段新增操作、字段值配置操作,包括:
对所述预设借据表执行相应的目标字段新增操作,并将与所述预设借据表中的各借据分别对应的目标字段的字段值均配置为零值;
相应的,所述对所述预设借据表执行相应的目标字段新增操作、字段值配置操作之后,还包括:
针对与新增至所述预设借据表中的借据对应的所述目标字段值,默认配置为零值。
可选的,所述根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新,包括:
获取预先确定的目标线性关系表达式以及预设借据处理耗时级别计算式;
基于所述目标线性关系表达式以及所述预设借据处理耗时级别计算式分别对各所述目标字段值执行相应的字段值更新操作。
可选的,所述借据批量入账方法,还包括:
通过分析与所述借据批量入账流程对应的处理逻辑,确定与流程耗时时长对应的影响因子;其中,所述影响因子包括与各所述待处理借据对应的借据状态信息、待还金额信息、待还款期数信息、溢缴款覆盖期数信息、总还款期数信息;
基于最小二乘算法确定用于表征所述影响因子与借据处理耗时信息之间的线性关系的所述目标线性关系表达式。
可选的,所述利用与各所述待处理借据对应的目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片,包括:
根据各所述目标字段值对各所述待处理借据进行分类,以得到相应的分类结果;
基于所述分类结果以及本地预设入账处理节点数,得到与各预设入账处理节点分别对应的待处理数据包;
将各所述待处理数据包保存至所述本地数据库中的预设数据库表中,以完成相应的分片操作;
相应的,所述基于得到的分片结果执行相应的借据批量入账操作,包括:
通过各所述预设入账处理节点分别利用从所述预设数据库表中获取到的与自身对应的所述待处理数据包执行相应的借据获取操作、入账处理操作,以完成相应的借据批量入账操作。
可选的,所述基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片,包括:
基于所述预设借据表获取与各所述待处理借据分别对应的主键ID;
基于当前预设批处理架构默认的随机分片规则根据所述主键ID的顺序对各所述待处理借据进行分片。
第二方面,本申请提供了一种借据批量入账装置,应用于账务系统,包括:
借据获取模块,用于从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;
第一分片模块,用于当是时,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;
第二分片模块,用于当否时,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;
借据批量入账模块,用于在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的借据批量入账方法的步骤。
第四方面,本申请提供了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的借据批量入账方法的步骤。
可见,本申请中,从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;若是,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;若否,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。本申请在账务系统触发相应的借据批量入账流程时,获取相应的待处理借据以及对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程,如果否则基于所述预设批量智能分片规则以及与各所述待处理借据分别对应的用于表征借据处理耗时等级的目标字段值进行分片,以基于分片结果完成相应的借据批量入账操作,并在入账后对所述目标字段值进行更新。这样一来,在非首次使用所述预设批量智能分片规则时,基于用于表征借据处理耗时等级的目标字段值对各所述待处理借据进行智能分片,提高了系统资源利用率,并缩短了批量耗时时间,从而提高了借据批量入账的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种借据批量入账方法流程图;
图2为本申请提供的一种具体的借据批量入账方法流程示意图;
图3为本申请提供的一种具体的借据批量入账方法流程示意图;
图4为本申请提供的一种默认分片流程示意图;
图5为本申请提供的一种线性关系表达式的确定及使用流程示意图;
图6为本申请提供的一种具体的借据批量入账方法流程图;
图7为本申请提供的一种借据批量入账装置结构示意图;
图8为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前基于Spring Batch默认的步骤远程分片技术,将一个步骤数据随机切分成多个等分之后进行,再分配到不同的批量任务节点进行并行处理,从而缩短批量任务的耗时时间。此方法能够提高批量任务的处理速度。但由于不同节点处理的分片的数据存在差异,部分数据的批量耗时时间长,部分数据的批量耗时时间短,从而导致可能出现,有些分片已经处理完毕,但还需要等待其他的分片处理完成才能使整个步骤处理结束,从而可能浪费系统资源,导致不必要的等待。为此,本申请提供了一种借据批量入账方案,能够有效提高系统资源利用率,并缩短批量耗时时间,从而提高借据批量入账的效率。
参见图1所示,本发明实施例公开了一种借据批量入账方法,应用于账务系统,包括:
步骤S11、从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据。
本实施例中,结合图2与图3可知,在需要执行相应的借据批量入账流程时,先通过主节点(本地的一个预设入账处理节点)从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值;其中,所述待处理借据为当前未结清的借据。然后判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程,来判断当前是否可以进行智能分片。
需要理解的是,本实施例中,在获取待处理借据之前,需要向预设借据表中添加一种字段,只添加一次即可。也即,所述对所述预设借据表执行相应的目标字段新增操作、字段值配置操作,具体可以包括:对所述预设借据表执行相应的目标字段新增操作,并将与所述预设借据表中的各借据分别对应的目标字段的字段值均配置为零值。其中,所述目标字段具体为time_cost_level。
进一步的,所述对所述预设借据表执行相应的目标字段新增操作、字段值配置操作之后,具体还可以包括:针对与新增至所述预设借据表中的借据对应的所述目标字段值,默认配置为零值。这是因为新增的借据第一个业务日期,在批量入账流程中的逻辑很少。
步骤S12、若是,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片。
本实施例中,如果是首次,则此时与各所述待处理借据分别对应的所述目标字段值均为空值,当前不能直接进行智能分片。分片逻辑退化为当前预设批处理架构的默认分片规则,然后执行相应的分片操作。具体的,所述基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片,可以包括:基于所述预设借据表获取与各所述待处理借据分别对应的主键ID(Identity document,身份标识号);基于当前预设批处理架构默认的随机分片规则根据所述主键ID的顺序对各所述待处理借据进行分片。结合图2以及4所示,此时基于所述主键ID的数值除以当前节点数来进行分片,例如,若所述本地数据库中存在99笔所述待处理借据,则基于对应的所述主键ID将99笔所述待处理借据均分为3份,以便将1-33、34-66、67-99三份分别由主节点、从节点1以及从节点2进行处理。
步骤S13、若否,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片。
本实施例中,结合图2所示,所述利用与各所述待处理借据对应的目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片,具体可以包括:根据各所述目标字段值对各所述待处理借据进行分类,以得到相应的分类结果;基于所述分类结果以及本地预设入账处理节点数,得到与各预设入账处理节点分别对应的待处理数据包;将各所述待处理数据包保存至所述本地数据库中的预设数据库表中,以完成相应的分片操作。具体的,在进行智能分片时,还需获取与各所述待处理借据的所述主键ID,以便后续基于所述主键ID生成与各预设入账处理节点分别对应的待处理数据包;所述图2中的node数也即所述预设入账处理节点的节点数。
需要理解的是,所述主节点在获取与各所述待处理借据对应的所述目标字段值之后,需要基于用于表征借据处理耗时等级的所述目标字段值进行借据分类,例如,a笔耗时级别为0的借据,b笔耗时级别为1的借据,c笔耗时级别为2的借据,d笔耗时级别为3的借据……依次类推。然后创建node个数据包,数据包数与所述node数一致,各所述数据包的内容为若干个所述待处理借据的主键。将每种耗时级别的借据的主键平均分配到每个数据包,即每个数据包耗时级别为0的借据主键为a/node个、耗时级别为1的借据主键为b/node个、耗时级别为2的借据主键为c/node个、耗时级别为3的借据主键为d/node个……依次类推,得到相应的待处理数据包,实现每个所述待处理数据包中均包含了相同数量耗时级别的借据主键数。之后,将各所述待处理数据包以Blob(binary large objec,数据库中用来存储二进制文件的字段类型)类型保存到预设数据库表yak_read_item中,每个所述待处理数据包占一行,并标记所述待处理数据包的处理状态为未处理(unprocessed)状态,并标记相应的所属节点node。所述预设数据库表具体可以如下表一所示。
表一
Id Item_keys status node
1 (Blob)58bytes unprocessed node1
2 (Blob)58bytes unprocessed node2
3 (Blob)58bytes unprocessed node3
其中,所述表一中的Id为所述待处理数据包的Id;Item_keys为分片完成后的数据包;status(状态),用于记录各所述待处理数据包的处理状态;node用于表征各所述待处理数据包分别的所属节点。这样一来,基于用于表征借据处理耗时等级的所述目标字段值实现了智能分片操作,平均了各节点的处理耗时,从而进一步缩短了批量入账流程的耗时时长。
步骤S14、在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。
本实施例中,相应的,所述基于得到的分片结果执行相应的借据批量入账操作,包括:通过各所述预设入账处理节点分别利用从所述预设数据库表中获取到的与自身对应的所述待处理数据包执行相应的借据获取操作、入账处理操作,以完成相应的借据批量入账操作。具体的,结合图2以及图3所示,可知,所述主节点在完成分片之后,通过MQ(Messagequeue,消息队列)通知各所述预设入账处理节点(包括所述主节点)通过查询所述预设数据库表来获取各自的所述待处理数据包,以便各所述预设入账处理节点根据所述yak_read_item表中的所述分区结果进行读(read)、处理(process)、写(write)(Spring Batch将所述批量入账流程划分为读、处理、写3个过程)。具体的,各所述预设入账处理节点基于各自的所述待处理数据包查询、获取与自身对应的相应数量的所述待处理借据,并执行相应的process过程。
可以理解的是,各所述预设入账处理节点在查询所述yak_read_item表时,获取与各自对应的所述待处理数据包之后,需要修改相应的处理状态为已读(readed)状态。
进一步的,结合图2以及图3所示,在针对每笔所述借据执行完相应的业务逻辑之后,根据借据的状态和所述目标字段,依据预先确定的目标线性关系表达式、预设借据处理耗时级别计算式进行字段值更新。也就是说,所述根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新,具体可以包括:获取预先确定的目标线性关系表达式以及预设借据处理耗时级别计算式;基于所述目标线性关系表达式以及所述预设借据处理耗时级别计算式分别对各所述目标字段值执行相应的字段值更新操作。其中,所述目标线性关系表达式以及所述预设借据处理耗时级别计算式分别如下式所示。
hθ(x1,x2,...,x5)=θ01x12x2...+θ5x5
time_cost_level=h/τ;
其中,h用于表征借据处理耗时信息;x1、x2、x3、x4以及x5为与流程耗时时长对应的影响因子,所述x1为待处理借据对应的待还金额信息;所述x2为待还款期数信息;所述x3为溢缴款覆盖期数信息;所述x4为总还款期数信息;所述x5为借据状态信息;τ为耗时级别粒度,所述τ的数值越小,各耗时级别的差别越小,节点总耗时差异越小。其中,通过分析与所述借据批量入账流程对应的处理逻辑可知所述x5具体可以包括逾期未到还款日的借据、未逾期已到还款日的借据、逾期借据未到还款日的借据、逾期借据到还款日的借据,但当天未发生还款、逾期借据当天有还款的借据五种借据状态(可用常量1、2、3、4、5分别表示五种不同的状态)。可以理解的是,基于所述目标线性关系表达式得到相应的借据处理耗时信息之后,代入所述预设借据处理耗时级别计算式以得到新的所述目标字段值。此外,需要将得到的新的所述目标字段值保存至所述预设借据表中。
这样一来,通过以上步骤将各所述待处理借据根据耗时级别进行均匀分区后,每个所述预设入账处理节点执行入账批量步骤的耗时差异变小,使所有预设入账处理节点的步骤处理能够同时开始,同时结束,不会存在部分节点已经执行完毕依旧要等待很久,直到其他节点全部执行完成之后才能使整个步骤执行结束的情况。
可以理解的是,结合图5所示,在进行借据批量入账之前的准备阶段,需要在测试环境中确定所述目标线性关系表达式。在此过程中,假设总共的预设入账处理节点(也就是服务器)为node个,其中主节点1个,从节点为node-1个,借据数量为m条,借据数量为所述预设借据表中所有未结清借据的总和,各个节点的系统资源和系统负载一致,总体步骤:步骤一:通过分析与所述借据批量入账流程对应的处理逻辑,确定与流程耗时时长对应的影响因子;其中,所述影响因子包括与各所述待处理借据对应的借据状态信息x5、待还金额信息x1、待还款期数信息x2、溢缴款覆盖期数信息x3、总还款期数信息x4。步骤二:列耗时时间与步骤一中各所述影响因子的线性关系表达式。步骤三:在测试环境,通过大量测试数据,根据最小二乘算法,计算出θ0、θ1、θ2、θ3、θ4、θ5,拟合出耗时时间与所述影响因子之间的目标线性关系表达式。需要理解的是,上述三个步骤为所述图3中未体现的三个步骤;所述图5中的“图1”具体指本实施例中的所述图2。具体的,关于所述步骤三,在针对m个样本(也即训练使用的借据)进行训练时,每个样本均有五维特征,存在以下方程表达式。
其中,为方便用矩阵表示,令x0=1,于是上述方程可以用矩阵表示为:h=Xθ。其中,h为m×1的向量,代表模型的理论值,θ为6×1的向量,X为m×6维的矩阵,m代表样本的个数,5代表样本的特征数,于是目标损失函数用矩阵表示时具体可以如下所示。
J(θ)=||h-Y||2=||Xθ-Y||2=(Xθ-Y)T(Xθ-Y);
其中,Y为样本的输出向量,维度为m×1。函数取得极值就是求其导数为0,故只需要对所述目标损失函数求导令其等于0就可以解出θ。矩阵求导属于矩阵微积分的内容,用到的矩阵求导公式如下所示。
其中,其中,T为矩阵转置符号;为求导符号。若矩阵A是对称的,也即Ax+ATx=2Ax,则对所述目标损失函数进行化简,可得到以下所示表达式。
J(θ)=θTXTXθ-θTXTY-YTXθ+YTY;
之后,对上式进行求导令其等于0,可得到以下所示表达式。
最终,解得θ=(XTX)-1XTY,经过推导得到了θ的解析解,之后在生产环境中,也即执行所述借据批量入账流程时只要带入具体数据就可以带入解析解中直接算出θ,从而得到线性关系,进而得到相应的目标线性关系表达式。
本实施例中,需要理解的是,线性关系不需要实时计算,只需要在测试环境拟合出来即可,只有当所述借据批量入账流程的逻辑发生重大变化后才需要重新拟合。
由此可见,本申请实施例中,从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;若是,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;若否,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。本申请在账务系统触发相应的借据批量入账流程时,获取相应的待处理借据以及对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程,如果否则基于所述预设批量智能分片规则以及与各所述待处理借据分别对应的用于表征借据处理耗时等级的目标字段值进行分片,以基于分片结果完成相应的借据批量入账操作,并在入账后对所述目标字段值进行更新。这样一来,在非首次使用所述预设批量智能分片规则时,基于用于表征借据处理耗时等级的目标字段值对各所述待处理借据进行智能分片,提高了系统资源利用率,并缩短了批量耗时时间,从而提高了借据批量入账的效率。
由前一实施例可知,本申请通过判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程,并基于得到的判断结果确定是否需要进行智能分片以完成相应的批量入账操作。为此,本实施例接下来对基于预设批量智能分片规则对各待处理借据进行智能分片以完成相应批量入账操作的过程进行详细描述。参见图6所示,本发明实施例公开了一种借据批量入账方法,应用于账务系统,包括:
步骤S21、从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据。
步骤S22、若否,则根据各所述目标字段值对各所述待处理借据进行分类,以得到相应的分类结果。
步骤S23、基于所述分类结果以及本地预设入账处理节点数,得到与各预设入账处理节点分别对应的待处理数据包。
步骤S24、将各所述待处理数据包保存至所述本地数据库中的预设数据库表中,以完成相应的分片操作。
步骤S25、通过各所述预设入账处理节点分别利用从所述预设数据库表中获取到的与自身对应的所述待处理数据包执行相应的借据获取操作、入账处理操作,以完成相应的借据批量入账操作。
步骤S26、在所述借据批量入账操作完成之后,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。
其中,关于上述步骤S21至步骤S26的具体过程可以参考前述实施例公开的相应内容,在此不再进行赘述。
由此可见,本申请实施例中,本申请通过基于与各待处理借据对应的目标字段值以及预设批量智能分片规则对各所述待处理借据进行智能分片,有效避免了现有技术只能基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片所导致的处理节点之间需要长时间等待才能完入账流程的问题,进而提高了用户体验感。
参见图7所示,本申请实施例还相应公开了一种借据批量入账装置,应用于账务系统,包括:
借据获取模块11,用于从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;
第一分片模块12,用于当是时,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;
第二分片模块13,用于当否时,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;
借据批量入账模块14,用于在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。
其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
由此可见,本申请实施例,从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理数据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;若是,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;若否,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新。本申请在账务系统触发相应的借据批量入账流程时,获取相应的待处理借据以及对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程,如果否则基于所述预设批量智能分片规则以及与各所述待处理借据分别对应的用于表征借据处理耗时等级的目标字段值进行分片,以基于分片结果完成相应的借据批量入账操作,并在入账后对所述目标字段值进行更新。这样一来,在非首次使用所述预设批量智能分片规则时,基于用于表征借据处理耗时等级的目标字段值对各所述待处理借据进行智能分片,提高了系统资源利用率,并缩短了批量耗时时间,从而提高了借据批量入账的效率。
在一些具体实施例中,所述借据批量入账装置,具体还可以包括:
目标字段配置模块,用于对所述预设借据表执行相应的目标字段新增操作、字段值配置操作;所述字段值配置操作为用于为所述目标字段新增操作中新增的字段配置相应的用于表征借据处理耗时等级的所述目标字段值。
在一些具体实施例中,所述目标字段配置模块,具体可以包括:
字段值配置单元,用于对所述预设借据表执行相应的目标字段新增操作,并将与所述预设借据表中的各借据分别对应的目标字段的字段值均配置为零值。
在一些具体实施例中,所述借据批量入账装置,具体还可以包括:
字段值默认配置模块,用于针对与新增至所述预设借据表中的借据对应的所述目标字段值,默认配置为零值。
在一些具体实施例中,所述借据批量入账模块14,具体可以包括:
表达式获取单元,用于获取预先确定的目标线性关系表达式以及预设借据处理耗时级别计算式;
字段值更新单元,用于基于所述目标线性关系表达式以及所述预设借据处理耗时级别计算式分别对各所述目标字段值执行相应的字段值更新操作。
在一些具体实施例中,所述借据批量入账装置,具体还可以包括:
影响因子确定模块,用于通过分析与所述借据批量入账流程对应的处理逻辑,确定与流程耗时时长对应的影响因子;其中,所述影响因子包括与各所述待处理借据对应的借据状态信息、待还金额信息、待还款期数信息、溢缴款覆盖期数信息、总还款期数信息;
表达式确定模块,用于基于最小二乘算法确定用于表征所述影响因子与借据处理耗时信息之间的线性关系的所述目标线性关系表达式。
在一些具体实施例中,所述第二分片模块13,具体可以包括:
分类单元,用于根据各所述目标字段值对各所述待处理借据进行分类,以得到相应的分类结果;
数据包确定单元,用于基于所述分类结果以及本地预设入账处理节点数,得到与各预设入账处理节点分别对应的待处理数据包;
数据包保存单元,用于将各所述待处理数据包保存至所述本地数据库中的预设数据库表中,以完成相应的分片操作;
相应的,所述借据批量入账模块14,具体可以包括:
批量入账单元,用于通过各所述预设入账处理节点分别利用从所述预设数据库表中获取到的与自身对应的所述待处理数据包执行相应的借据获取操作、入账处理操作,以完成相应的借据批量入账操作。
在一些具体实施例中,所述第一分片模块12,具体可以包括:
主键ID获取单元,用于基于所述预设借据表获取与各所述待处理借据分别对应的主键ID;
随即分片单元,用于基于当前预设批处理架构默认的随机分片规则根据所述主键ID的顺序对各所述待处理借据进行分片。
进一步的,本申请实施例还公开了一种电子设备,图8是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图8为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的借据批量入账方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的借据批量入账方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的借据批量入账方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束笔件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种借据批量入账方法,其特征在于,应用于账务系统,包括:
从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理借据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;
若是,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;
若否,则根据各所述目标字段值对各所述待处理借据进行分类,以得到相应的分类结果;基于所述分类结果以及本地预设入账处理节点数,得到与各预设入账处理节点分别对应的待处理数据包;将各所述待处理数据包保存至所述本地数据库中的预设数据库表中,以完成相应的分片操作;
在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以获取预先确定的目标线性关系表达式以及预设借据处理耗时级别计算式,并基于所述目标线性关系表达式以及所述预设借据处理耗时级别计算式分别对各所述目标字段值执行相应的字段值更新操作;
其中,所述目标线性关系表达式的确定包括:
通过分析与所述借据批量入账流程对应的处理逻辑,确定与流程耗时时长对应的影响因子;其中,所述影响因子包括与各所述待处理借据对应的借据状态信息、待还金额信息、待还款期数信息、溢缴款覆盖期数信息、总还款期数信息;
基于最小二乘算法确定用于表征所述影响因子与借据处理耗时信息之间的线性关系的所述目标线性关系表达式;
所述预设借据处理耗时级别计算式为:
time_cost_level为所述目标字段;h用于表征借据处理耗时信息;τ为耗时级别粒度,所述τ的数值越小,各耗时级别的差别越小,节点总耗时差异越小。
2.根据权利要求1所述的借据批量入账方法,其特征在于,所述从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理借据对应的用于表征借据处理耗时等级的目标字段值之前,还包括:
对所述预设借据表执行相应的目标字段新增操作、字段值配置操作;所述字段值配置操作为用于为所述目标字段新增操作中新增的字段配置相应的用于表征借据处理耗时等级的所述目标字段值。
3.根据权利要求2所述的借据批量入账方法,其特征在于,所述对所述预设借据表执行相应的目标字段新增操作、字段值配置操作,包括:
对所述预设借据表执行相应的目标字段新增操作,并将与所述预设借据表中的各借据分别对应的目标字段的字段值均配置为零值;
相应的,所述对所述预设借据表执行相应的目标字段新增操作、字段值配置操作之后,还包括:
针对与新增至所述预设借据表中的借据对应的所述目标字段值,默认配置为零值。
4.根据权利要求1所述的借据批量入账方法,其特征在于,所述基于得到的分片结果执行相应的借据批量入账操作,包括:
通过各所述预设入账处理节点分别利用从所述预设数据库表中获取到的与自身对应的所述待处理数据包执行相应的借据获取操作、入账处理操作,以完成相应的借据批量入账操作。
5.根据权利要求1至4任一项所述的借据批量入账方法,其特征在于,所述基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片,包括:
基于所述预设借据表获取与各所述待处理借据分别对应的主键ID;
基于当前预设批处理架构默认的随机分片规则根据所述主键ID的顺序对各所述待处理借据进行分片。
6.一种借据批量入账装置,其特征在于,应用于账务系统,包括:
借据获取模块,用于从本地数据库中的预设借据表中获取待处理借据以及与各所述待处理借据分别对应的用于表征借据处理耗时等级的目标字段值,并判断当前是否为首次使用预设批量智能分片规则的借据批量入账流程;其中,所述待处理借据为当前未结清的借据;
第一分片模块,用于当是时,则基于当前预设批处理架构的默认分片规则对各所述待处理借据进行分片;
第二分片模块,用于当否时,则利用与各所述待处理借据分别对应的所述目标字段值以及所述预设批量智能分片规则对各所述待处理借据进行分片;
借据批量入账模块,用于在分片完成之后,基于得到的分片结果执行相应的借据批量入账操作,得到相应的入账后借据,以根据预先确定的目标线性关系表达式对与各所述入账后借据对应的所述目标字段值进行更新;
影响因子确定模块,用于通过分析与所述借据批量入账流程对应的处理逻辑,确定与流程耗时时长对应的影响因子;其中,所述影响因子包括与各所述待处理借据对应的借据状态信息、待还金额信息、待还款期数信息、溢缴款覆盖期数信息、总还款期数信息;
表达式确定模块,用于基于最小二乘算法确定用于表征所述影响因子与借据处理耗时信息之间的线性关系的所述目标线性关系表达式;
其中,所述第二分片模块包括:
分类单元,用于根据各所述目标字段值对各所述待处理借据进行分类,以得到相应的分类结果;
数据包确定单元,用于基于所述分类结果以及本地预设入账处理节点数,得到与各预设入账处理节点分别对应的待处理数据包;
数据包保存单元,用于将各所述待处理数据包保存至所述本地数据库中的预设数据库表中,以完成相应的分片操作;
所述借据批量入账模块包括:
表达式获取单元,用于获取预先确定的目标线性关系表达式以及预设借据处理耗时级别计算式;
其中,所述预设借据处理耗时级别计算式为:
time_cost_level为所述目标字段;h用于表征借据处理耗时信息;τ为耗时级别粒度,所述τ的数值越小,各耗时级别的差别越小,节点总耗时差异越小
字段值更新单元,用于基于所述目标线性关系表达式以及所述预设借据处理耗时级别计算式分别对各所述目标字段值执行相应的字段值更新操作。
7.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至5任一项所述的借据批量入账方法。
8.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的借据批量入账方法。
CN202311234433.9A 2023-09-22 2023-09-22 一种借据批量入账方法、装置、设备及存储介质 Active CN117251508B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311234433.9A CN117251508B (zh) 2023-09-22 2023-09-22 一种借据批量入账方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311234433.9A CN117251508B (zh) 2023-09-22 2023-09-22 一种借据批量入账方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN117251508A CN117251508A (zh) 2023-12-19
CN117251508B true CN117251508B (zh) 2024-06-14

Family

ID=89130842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311234433.9A Active CN117251508B (zh) 2023-09-22 2023-09-22 一种借据批量入账方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117251508B (zh)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060221850A1 (en) * 2005-03-31 2006-10-05 Teresa Buckley Field content based packet classification
KR100784353B1 (ko) * 2005-09-14 2007-12-13 굿맨소프트(주) 현금흐름표 자동 제공 방법 및 시스템과 현금흐름표 자동제공용 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
CN106933672B (zh) * 2015-12-30 2021-04-13 阿里巴巴集团控股有限公司 一种分布式环境协调消费队列方法和装置
CN110046988A (zh) * 2019-04-18 2019-07-23 重庆天蓬网络有限公司 一种批量处理系统业务方法、装置、介质和电子设备
CN111399851B (zh) * 2020-06-06 2021-01-15 四川新网银行股份有限公司 基于分布式系统的批处理执行方法
CN112148505A (zh) * 2020-09-18 2020-12-29 京东数字科技控股股份有限公司 数据跑批系统、方法、电子设备和存储介质
CN113342839A (zh) * 2021-08-06 2021-09-03 北京开科唯识技术股份有限公司 数据处理方法、装置、终端设备和存储介质
CN114816711A (zh) * 2022-05-13 2022-07-29 湖南长银五八消费金融股份有限公司 批量任务处理方法、装置、计算机设备和存储介质
CN115357390A (zh) * 2022-08-24 2022-11-18 晋商消费金融股份有限公司 一种基于借据的多任务分布式处理方法及系统
CN115729705A (zh) * 2022-11-24 2023-03-03 北京沐融信息科技股份有限公司 分布式任务批量处理方法、装置、设备及存储介质
CN116501783A (zh) * 2023-04-12 2023-07-28 上海浦东发展银行股份有限公司 一种分布式数据库数据导入方法及系统
CN116467266A (zh) * 2023-04-19 2023-07-21 维恩贝特科技有限公司 一种批量文件智能联机处理方法、装置及可存储介质
CN116737830A (zh) * 2023-06-13 2023-09-12 中国银行股份有限公司 批量数据同步方法、装置、电子设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于相对资源量的集群系统的研究与实现;潘文高;黄文明;;现代计算机;20130515(第14期);全文 *
基于知识获取的网络增量数据自动分片仿真;程显生;王俊;王寿东;;计算机仿真;20200515(第05期);全文 *

Also Published As

Publication number Publication date
CN117251508A (zh) 2023-12-19

Similar Documents

Publication Publication Date Title
Zhang et al. A weighted kernel possibilistic c‐means algorithm based on cloud computing for clustering big data
CN111046237B (zh) 用户行为数据处理方法、装置、电子设备及可读介质
CN105224606A (zh) 一种用户标识的处理方法及装置
CN110414569B (zh) 聚类实现方法及装置
AU2017410367B2 (en) System and method for learning-based group tagging
WO2017114276A1 (zh) 基于图的分析用户的方法和系统
CN116501711A (zh) 一种基于“存算分离”架构的算力网络任务调度方法
CN111782383A (zh) 任务分配方法、服务器、电子终端及计算机可读存储介质
CN113868351A (zh) 一种地址聚类方法、装置、电子设备及存储介质
CN117251508B (zh) 一种借据批量入账方法、装置、设备及存储介质
Nair et al. Data mining using hierarchical virtual k-means approach integrating data fragments in cloud computing environment
Khomonenko et al. Stochastic models for cloud computing performance evaluation
CN113962401A (zh) 联邦学习系统、联邦学习系统中的特征选择方法及装置
CN113766047A (zh) 一种任务分组方法、装置、计算机设备及存储介质
CN111611228B (zh) 一种基于分布式数据库的负载均衡调整方法及装置
CN112328392A (zh) 一种数据处理方法及相关设备
AU2020103440A4 (en) A method for optimizing the convergence performance of data learning with minimal computational steps
CN114115818A (zh) 一种微服务划分方法、装置、设备及介质
CN115221155A (zh) 数据分片方法、装置、电子设备和存储介质
CN105468603B (zh) 数据选择方法及装置
CN110222779B (zh) 分布式数据处理方法及系统
EP3559797A1 (en) Meta-join and meta-group-by indexes for big data
Rajamanickam et al. An Evaluation of the Zoltan Parallel Graph and Hypergraph Partitioners.
CN110851655B (zh) 一种用于简化复杂网络的方法和系统
de Moraes et al. An Efficiency Frontier based Model for Cloud Computing Provider Selection and Ranking.

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