CN114218173A - 传帐类交易文件的批处理系统、处理方法、介质和设备 - Google Patents
传帐类交易文件的批处理系统、处理方法、介质和设备 Download PDFInfo
- Publication number
- CN114218173A CN114218173A CN202111654541.2A CN202111654541A CN114218173A CN 114218173 A CN114218173 A CN 114218173A CN 202111654541 A CN202111654541 A CN 202111654541A CN 114218173 A CN114218173 A CN 114218173A
- Authority
- CN
- China
- Prior art keywords
- transaction
- processing
- file
- data structures
- service
- 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.)
- Granted
Links
Images
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/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24532—Query optimisation of parallel queries
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Abstract
本发明提供了传帐类交易文件的处理系统、处理方法、介质和设备,该方法包括:将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,分别对分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与分片文件对应的缓存分区中;将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在分片文件对应的缓存分区中;按照交易链路集合中的交易链路执行业务处理。本发明能够充分利用多资源计算的并行处理能力,通过对非标数据和标准数据处理的伸缩性设计,解决了多机器分摊计算压力的问题,和大数据高并发处理的吞吐性问题。
Description
技术领域
本发明涉及消费金融交易技术领域,尤其涉及一种传帐类交易文件的批处理系统、处理方法、介质和设备。
背景技术
在当前的银行业务系统中,工作人员在前端上传一个批量文件,需要后台系统对文件中的记录进行逐条处理,并返回所有明细处理结果,在研发过程中,发明人发现现有技术中至少存在如下问题:
由于贷款进件的交易数据协议不同,导致处理这些差异与通用流程没有抽离出来,致使代码实现复杂、逻辑混乱、管理和维护难度大、交付质量差、交付时间严重滞后等问题;
现有针对客户贷款核算的处理,是基于步骤驱动的处理流程(process-step),即按规划的每一步骤阶段处理所有贷款数据,如果因为该步骤内某一客户贷款数据错误,而导致所有贷款必须等待全部成功才能进入下一步骤,这种设计严重降低了单位时间内处理的吞吐量,又增加了大量后续计算资源的等待时间;
在大数据高并发的场景下,除了以上提到的技术问题外,通过将中间处理数据持久化到数据库的方式,也严重消耗了网络连接、数据库连接等昂贵资源,严重影响了处理的效率。
发明内容
有鉴于此,本发明实施例的目的在于提供一种传帐类交易文件的批处理系统、处理方法、介质和设备,以解决现有技术代码实现复杂、吞吐量低和耗费资源的技术问题。
为了达到上述目的,第一方面,本发明实施例提供了一种传帐类交易文件的处理方法,包括如下步骤:
将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数;
分别对所述分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与所述分片文件对应的缓存分区中;
将所述缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在所述分片文件对应的缓存分区中;
按照所述交易链路集合中的交易链路执行业务处理。
在一些可能的实施方式中,将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,具体包括:
根据原始文件的大小设置分片数N,根据所述分片数N对所述原始文件进行切割;
将所述原始文件中每个交易场景按照借据号或者客户名称进行哈希值取模的方式获得每个交易场景的分片索引;
按照所述分片索引确定所述原始文件中每个交易场景对应的分片文件,得到N个包含不同交易场景的分片文件。
在一些可能的实施方式中,所述的分别对所述分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与所述分片文件对应的缓存分区中,具体包括:
根据文件切割完毕标识监控文件切割处理的状态;
文件切割完毕后,分别对每一个分片文件进行解析处理,得到不同交易场景的原始数据结构,对所述原始数据结构进行拦截校验,如果校验出所述原始数据结构的格式错误,则立即终止解析;
对校验合格的原始数据结构进行标准化处理,获得不同交易场景的标准数据结构,对所述标准数据结构进行拦截校验,如果所述标准数据结构的格式错误,则立即终止解析;
将校验合格后的标准数据结构存储在与所述分片文件对应的缓存分区中。
在一些可能的实施方式中,所述的将所述缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在所述分片文件对应的缓存分区中,具体包括:
根据预先配置的交易链路控制信息,将缓存分区中的不同交易场景的标准数据结构在交易链路信息消息体中按照业务处理的时间顺序进行排列,得到包含多个交易链路的交易链路集合;
将所述交易链路集合缓存到所述分片文件对应的缓存分区中。
在一些可能的实施方式中,在所述的按照所述交易链路集合中的交易链路执行业务处理之前,还包括:
通过监控交易链路集合缓存完毕的标识,监控所述交易链路集合是否缓存完毕;
缓存完毕后,对每个缓存分区中的交易链路进行采集。
在一些可能的实施方式中,所述的按照所述交易链路集合中的交易链路执行业务处理,具体包括:
根据数据链路采集服务采集到的交易链路执行业务文件处理,对处理失败的业务文件重新执行业务文件处理;
当重新执行业务文件处理的次数小于预设的阈值时,将处理失败的业务文件存入延迟队列等待下次重新执行;
当重新执行业务文件处理的次数等于预设的阈值时,将所述交易处理放入异常数据存储模块等待人工处理。
在一些可能的实施方式中,所述的按照所述交易链路集合中的交易链路执行业务处理之后,还包括:
对业务文件处理结果进行核验;
对业务文件处理结果正常的业务文件进行分区缓存,对分区缓存中的全部数据持久化在数据库,并将所述分区缓存中的部分数据保存在所述分区缓存中。
第二方面,本发明实施例提供了一种传帐类交易文件的处理装置,所述处理装置包括:
切割单元,用于将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数;
标准化单元,用于分别对所述分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与所述分片文件对应的缓存分区中;
构建单元,用于将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合;
业务处理单元,用于按照所述交易链路集合中的交易链路执行业务处理。
第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任意一种传帐类交易文件的处理方法。
第四方面,本发明实施例提供了一种电子设备,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述任意一种传帐类交易文件的处理方法。
上述技术方案具有如下有益效果:
本发明实施例提供了一种传帐类交易文件的处理方法,包括:将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,分别对分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与分片文件对应的缓存分区中;将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在分片文件对应的缓存分区中;按照交易链路集合中的交易链路执行业务处理。本发明实施例能够充分利用多资源计算的并行处理能力,将非标准数据转化为标准数据,通过多机器分摊计算压力,从根本上解决了大数据高并发处理的吞吐性问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种传帐类交易文件的处理方法的流程图;
图2是本发明实施例的一种按照预设分片数N和预设切割规则进行切割处理得到N个包含不同交易场景的分片文件的流程图;
图3是本发明实施例的一种通过文件切割服务对文件进行切割处理的示意图;
图4是本发明实施例的一种对分片文件进行解析处理的示意图;
图5是本发明实施例的一种对缓存分区中的TS数据构建成交易链路集合的示意图;
图6是本发明是实施例的一种分割后的文件及缓存存储的示意图;
图7是本发明实施例提供的在TF信息消息体按照业务处理的时间顺序进行排列得到包含多个交易链路的交易链路集合示意图;
图8是本发明实施例的一种按照交易链路集合中的交易链路执行业务处理的示意图;
图9是本发明实施例的一种传帐类交易文件的处理系统的结构框图;
图10是本发明实施例的一种计算机可读存储介质的功能框图;
图11是本发明实施例的一种电子设备的功能框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下首先对相关技术术语进行定义和解释:
交易场景(简称TS,Transaction Scene),表示一笔独立的交易场景的数据结构,例如放款、还款、撤销等都称为一笔TS。TS又可细分为:Raw TS,其表示从文件解析出来的最原始的交易场景的数据结构;Standard TS,其表示统一定义的交易场景的标准数据结构。
交易链路(简称TF,Transaction Flow),表示客户当前所有发起的按时间顺序排序的交易步骤,该结构的组织粒度可以是以借据号为单位,也可以是以客户名称为单位。通常是以借据号为单位来组织交易场景。特别说明是,当有些交易场景不能提供交易时间或不能提供强依赖的交易时间时,则需要根据其他属性字段的特点来识别交易的先后顺序。
数据清洗,即对不同渠道文件数据的差异性进行处理,以期望达到系统易于理解的结构的过程,例如字段映射、格式转换、数据补全、完整性校验等。
step-driven mode(面向步骤的、由状态驱动的消费模式),按照系统目前的架构,例如借呗渠道,处理的特点是先处理所有的放款,再处理还款,在放款没有全部成功前,流程无法转到还款。
TF-driven mode(面向借据的、由TF驱动的消费模式),主要内容是以借据号(或客户名称)为单位组织相关的交易场景(TS),并为交易场景标记具有时间顺序的属性,最终以一个交易流(TF)为最终数据结构供后续服务使用。按照系统改造后的架构,以TF为单位,根据内部TS数据的先后顺序进行处理,每个TF之间没有依赖。
实施例一
图1是本发明实施例的一种传帐类交易文件的处理方法的流程图,如图1所示,其包括如下步骤:
S10,将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数。
具体的,在原始文件的数据量大而机器硬件的配置有限的情况下,先针对原始文件进行切割,按照预设的分片数N将原始文件切割成N片包含不同交易场景的文件,后续的所有处理均是针对每个分割文件进行并行处理,以便降低内存压力同时提升计算能力。其中,分片数N的取值是根据原始文件大小全局设置的,例如100G的文件,有10台机器处理,如果每台机器可以处理10G内容,那么分片数N就设置为10,切割后的每片文件都存储在共享磁盘对应的目录中,后续将会对共享磁盘对应目录中的分片文件进行解析处理。另外,当文件分割出现错误时,系统需要重新启动分割的任务,但启动分割的任务仅从有问题的文件开始重新处理。本发明实施例中,当原始文件过大时,需要将其拆分出来,增加更多的机器来处理,提升整体处理性能。
S20,分别对分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与分片文件对应的缓存分区中。
具体的,文件分割完毕后,根据分片个数,为每一分片文件启动一个文件处理服务,例如,分片数为10,就启动十个文件处理服务,分别对共享磁盘目录中的分片文件进行解析处理,从分片后的文件中解析出来的是最原始的交易场景的数据结构(即Raw TS),为了做到后续业务处理的标准化,需要对原始的交易场景的数据结构进行标准化处理(Standard TS),得到与每一个核算系统内部统一定义的标准交易数据结构,并存储在与分片文件对应的缓存分区中。需要说明的是,每一个分片文件都有一个对应的缓存分区,每个缓存分区都是独立的,多个缓存分区中的分片文件都是并行处理的。另外,在对数据文件解析时需要进行完整性的校验,比如各个文件记录条数与实际的文件核对信息中的记录条数不相符,针对这种情况,则需要针对该类文件发起重新进行解析处理。
S30,将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在分片文件对应的缓存分区中。
所有文件切割完毕并且标准化处理后,将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建成多个交易链路,生成具有顺序属性的交易链路集合,并将生成的交易链路集合对应地存储在分区缓存中。本发明实施例解决了如何将切割后的文件加工成标准的TS和TF信息,并且按照原始文件的分割规则存放到对应的缓存分区中。
S40,按照交易链路集合中的交易链路执行业务处理。
具体的,每一个分片文件业务处理服务将会按照TF标准信息执行业务处理。
作为一个举例说明,假设花呗在原始文件上每天都会上报huabei_loans.log、huabei_repays.log和huabei_revoke.log三个文件,总大小为100GB,包含了100万个借据相关的业务场景。本实施例以放款、还款和撤销为典型场景,部署10台机器进行并发处理,具体说明如下:
步骤1,对原始文件进行切割,即将下面这个三个大文件切割成10片小文件,分别为huabei_loans_0.log、huabei_repays_0.log、huabei_revoke_0.log、huabei_loans_1.log、huabei_repays_1.log、huabei_revoke_1.log……huabei_loans_9.log、huabei_repays_9.log、huabei_revoke_9.log,将这10片文件分别存储在共享磁盘对应的目录中。
步骤2,标准化处理,通过10台机器分别对共享磁盘目录中的10片文件进行解析,即每台机器分别对每片文件进行标准化处理,将从分片后的文件中解析出来的最原始的交易场景的数据结构(即Raw TS)进行标准化处理得到标准的交易场景的数据结构(StandardTS),并存储在与分片文件对应的缓存分区中。需要说明的是,每一个分片文件都有一个对应的缓存分区,每个缓存分区都是独立的,多个缓存分区中的分片文件都是并行处理的。
步骤3,构建交易链路,即每台机器分别构建交易链路,每台机器分别服务轮询对应的分片文件,然后按照一定的交易顺序填写交易链路信息,例如按照放款->还款->撤销的交易顺序进行填写链路信息,生成具有顺序属性的交易链路集合,并将生成的交易链路集合对应地存储在分区缓存中。
步骤4,业务处理,即在后续业务处理中,均按照交易链路集合中的交易链路执行业务处理。
另外,对于交易顺序为贷款发放->贷款还款->息费减免->日终核验的链路信息,如果此时没有对应该链路信息的交易场景的借据,仍然会写入一个空的交易场景的链路信息,保证后续在处理业务时能够按照交易链路的顺序去处理,如果后续没有该交易场景的借据时跳过该步骤;另外,相同的交易场景存在多笔情况下,在业务处理时应保证顺序不一致情况下最终的结果是一致的,都是按照交易链路信息执行的业务处理。
本发明实施例能够充分利用多资源计算的并行处理能力,通过多机器分摊计算压力,将非标准数据转化为标准数据,从根本上解决了大数据高并发处理的吞吐性问题。
在一些实施例中,将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,图2是本发明实施例的一种按照预设分片数N和预设切割规则进行切割处理得到N个包含不同交易场景的分片文件的流程图,其具体包括如下步骤:
S101,根据原始文件的大小设置分片数N,根据分片数N对原始文件进行切割。
本实施例会全局维护一个切割的片数,片数根据文件大小动态设定,所有交易场景的文件使用相同的分片数量的分片文件,即分片数N是根据原始文件大小全局设置的,例如100G的原始文件,10台机器,每台机器处理10G内容,那么分片数N为10。
S102,将原始文件中每个交易场景按照借据号或者客户名称进行哈希值取模的方式获得每个交易场景的分片索引。
具体的,按照借据号或者按照客户名称进行哈希值取模的方式获得每个交易场景的分片索引是根据业务来确定,每一个分片后的文件包含的交易场景的文件的数量取决于业务数据的分布情况,但为避免分布不均匀,通常对借据号进行哈希后再取模,分布就均匀了。
S103,按照分片索引确定原始文件中每个交易场景对应的分片文件,得到N个包含不同交易场景的分片文件。
根据分片索引决定该条记录的交易场景应该是存放到共享磁盘中的哪一个分片文件对应的目录中,例如,放款文件loan_file,读取每一行数据,根据借据号进行哈希处理和取模运算,或者直接进行取模运算得到文件分片索引,例如0索引,将该行数据写入共享磁盘中loan_0文件中,下一行通过借据号取模运算得到索引3,然后将该行写入共享磁盘中loan_3文件中。
需要说明的是,以借据号为例,不同的借据号会分散到不同的片区,唯一不同的是,相同借据号的不同场景必须在一个片区。例如借据号1009的,如果放款场景在片区1,那么归属于该借据号的所有场景(如还款、撤销等)都必须在片区1,如果在不同的片区,每个片区是并发处理的,如果每个片区都包含该借据的一部分场景,就无法保证该借据的顺序性处理了,例如片区1执行撤销,然后片区9在执行放款,那么之后的业务操作一定会失败。
在一些实施例中,步骤S20中,分别对分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与分片文件对应的缓存分区中,具体包括:
首先根据文件切割完毕标识监控文件切割处理的状态。图3是本发明实施例的一种通过文件切割服务对文件进行切割处理的示意图,如图3所示,例如,对共享磁盘目录中的/ip1、/home/dir/file1、/home/dir/file2、/home/dir/file3三个文件进行切割处理,分别将这三个文件均切割成N片小文件,在切割处理过程中,可以通过监控文件切割完毕标识来监控文件切割处理的状态,因为文件切割完毕后,文件切割服务会生成一个文件切割完毕标识,可以监控是否产生这个切割完毕标识来监控文件是否切割完毕,以避免文件未切割完毕后就对分片文件进行解析处理,造成相同借据号的交易场景分发到不同的片区,导致后续处理业务时,无法保证该借据的顺序性处理。在文件切割完毕后,分别对共享磁盘目录中的每一个分片文件进行解析处理,得到不同交易场景的原始数据结构。
图4是本发明实施例的一种对分片文件进行解析处理的示意图,如图4所示,包括如下步骤:
S201,在文件切割完毕后,分别对接入的分片文件(例如共享磁盘目录为/ip1中的/home/dir/file1被切割成“/home/dir/file1_0,/home/dir/file1_1……/home/dir/file1_n”这n个小文件)进行解析处理,分片文件解析后会得到原始数据结构;
S202,通过第一数据容忍度拦截器或者其他拦截器对解析得到的不同交易场景的原始数据结构进行拦截校验(即RawTS校验),如果通过拦截校验后的原始数据结构的格式错误,则立即终止解析处理,并对原始数据结构的格式错误的文件重新进行解析处理;
S203,对校验合格的原始数据结构进行标准化处理,将原始数据结构转化为标准数据结构,获得不同交易场景的标准数据结构(即RawTS->StandardTS);
S204,通过第二数据容忍度拦截器或者其他拦截器对解析得到的不同交易场景的标准数据结构进行拦截校验,如果校验出标准数据结构的格式错误,则立即终止解析,并对标准数据结构的格式错误的文件重新进行解析处理,校验合格后的标准数据结构分别缓存在对应的缓存分区中(目录为/ip1的/home/dir/TS_0,home/dir/TS_1……home/dir/TS_n)。
本发明实施例通过对原始数据结构和标准数据结构进行校验,能够保障后续业务处理的正确性。
在一些实施例中,步骤S30中,将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在分片文件对应的缓存分区中,具体包括:
图5是本发明实施例的一种对缓存分区中的TS数据构建成交易链路集合的示意图,如图5所示,包括如下步骤:
S301,根据预先配置的交易链路控制信息,将TS缓存分区中(目录为/ip1的/home/dir/TS_0,home/dir/TS_1……home/dir/TS_n)的不同交易场景的标准数据结构在TF构建器中按照业务处理的时间顺序进行排列(即StandardTS->TF),构建成多个TF交易链路集合(TF交易链路集合也可称为交易包);
S302,将TF交易链路集合(交易包)分别缓存到分片文件对应的缓存分区中(目录为/ip1的/home/dir/TF_0,home/dir/TF_1……home/dir/TF_n)。
具体的,图6是本发明是实施例的一种分割后的文件及缓存存储的示意图。如图6所示,本发明实施例中,分割后的不同的分片文件都存储在各自对应的缓存分区中,例如,分割后的分区1文件、分割后的分区2文件……分割后的分区n文件。
首先,分别对每一片文件进行数据清洗及加工(即标准化处理),分别缓存在对应的缓存分区中,例如缓存分区1交易数据标准TS信息、缓存分区2交易数据标准TS信息……缓存分区n交易数据标准TS信息。
其次,对这些缓存分区中标准TS信息按照TF控制信息在TF信息消息体中按照业务处理的时间顺序进行排列,得到包含多个交易链路的交易链路集合;
最后,当每一片缓存分区中的标准TS信息处理完毕后,将第n日的交易类信息(如借据信息、还款计划信息、放款信息、还款信息和XXXX信息)等到处理完成后将会持久化落数据库处理,便于业务人员后续查询,对于第(n-1)日的借据和还款计划信息保存在缓存分区中,便于在缓存分区中直接读取,提高数据处理的效率。
图7是本发明实施例提供的在TF信息消息体按照业务处理的时间顺序进行排列得到包含多个交易链路的交易链路集合示意图,如图7所示,按照TF控制信息在TF信息消息体中按照放款信息以借据号为单位将TS标准信息按照业务处理的时间顺序进行排列得到包含多个交易链路的交易链路。
作为一个举例说明,例如交易链路控制信息是“放款信息->还款信息->减免信息->检验信息”时,当解析放款的分片文件(放款、还款、减免和检验文件是并发读取的)时,先读取第一行,根据放款借据信息将流水号、借据号、放款日期、放款金额、利率……等存放至放款借据信息节点上,根据放款合约信息将借据号、还款日、本金、利息……等放到放款合约信息的节点上;
当另外一个还款信息也在解析时,也会一行一行地读取分片的文件,根据还款合约信息将流水号、借据号、放款日期、放款金额、利率……等存放至还款合约信息节点上,按照还款明细信息将借据号、还款日、本金、利息……等放到还款明细信息的节点上;如果当天有多笔还款信息,则在还款节点上按时间顺序追加到还款节点上。
本发明实施例在对接不同第三方渠道(即文件交易为主)的业务时,能够复用90%以上的业务逻辑和代码,实现了快速接入、质量高、维护简单、修改灵活的目的;
本发明实施例将step-driven mode(面向步骤的、由状态驱动的消费模式)改造为TF-driven mode(面向借据的、由TF驱动的消费模式),实现所有交易在所有可用的计算资源上充分的并行化,提升了处理的实时性目标;
本发明实施例通过分区技术实现交易处理被分摊到多个计算资源上,满足了大数据高并发交易场景下处理的性能目标,通过单片流量复制技术实现单片的高可靠目标。
图8是本发明实施例的一种按照交易链路集合中的交易链路执行业务处理的示意图,如图8所示,在一些实施例中,步骤S40中按照交易链路集合中的交易链路执行业务处理具体包括如下步骤:
S401,通过监控交易包分发完毕标识来监控交易包分发情况,交易包分发完毕后,会产生一个交易包分发完毕标识,通过监控是否产生这个标识来监控交易包分发情况;
S402,当交易包分发完毕后,通过交易包采集服务抓取TF包;
S403,业务文件处理服务根据交易包采集服务采集到的TF包执行业务文件处理,例如,TF包中的交易链路为放款->还款->核验,则业务服务将按照放款服务、还款服务和核验服务的顺序执行业务处理。
S404,通过业务异常处理服务实时的对业务文件处理服务在业务处理过程中的处理失败的业务文件重新执行业务文件处理,在重新执行业务处理时,当重新执行业务文件处理的次数小于预设的阈值时,将处理失败的业务文件存入延迟队列等待下次重新执行,当重新执行业务文件处理的次数等于预设的阈值时,将交易处理放入异常数据存储模块等待人工处理。
具体的,在业务处理过程中,系统会在缓存中记录目前处理到哪一笔,哪一笔有异常,目前已处理到哪一步,此时如果出现宕机,则系统从未处理的那一笔后续未处理的步骤接着处理。另外,当重新执行业务文件处理的次数等于预设的阈值时,就意味着重做也未必能解决该问题,所以针对这种错误,将交易处理放入异常数据存储模块等待人工处理。例如,因网络质量差、服务宕机、系统BUG导致的异常,通人工补偿业务处理。这样既可以避免无限次的重试浪费资源,还可以通过人工及时处理出现异常的数据。
S405,在按照交易链路集合中的交易链路执行业务处理之后,即业务文件处理服务按照交易包采集服务采集到的交易包执行完业务处理之后,对业务文件处理结果进行核验,业务的核验分为事前核验及事后核验,事前核检是在业务处理之前执行,此处的核验主要是指业务操作的事后核验处理,例如对于技术性的核验主要是在文件的解包及分割时进行的核验,事后核验是所有交易都完成后所做的核验,事前核验是检验出对方提供数据的问题,事后核验是验证双方的处理是否存在差异性问题,以保证业务处理的一致性。
S406,对业务文件处理结果进行核验后,对核验正确的文件进行分区缓存,对分区缓存中的全部数据持久化在数据库,以方便业务人员查询,例如,将每个分区中的还款日志、放款日志、借据信息、还款信息表等持久化至数据库。另外,将分区缓存中的部分数据保存在分区缓存中,可以直接在缓存中查询,提高业务处理效率。
本发明实施例在对接不同第三方渠道(即文件交易为主)的业务时,能够复用90%以上的业务逻辑和代码,实现了快速接入、质量高、维护简单、修改灵活的目的;
本发明实施例将step-driven mode(面向步骤的、由状态驱动的消费模式)转变为TF-driven mode(面向借据的、由TF驱动的消费模式),实现所有交易在所有可用的计算资源上充分的并行化,提升了处理的实时性目标;
本发明实施例通过分区技术实现交易处理被分摊到多个计算资源上,满足了大数据高并发交易场景下处理的性能目标,通过单片流量复制技术实现单片的高可靠目标。
实施例二
图9是本发明实施例的一种传帐类交易文件的处理系统的结构框图,该处理系统包括:
文件切割单元110,用于将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数。
本实施例中文件切割单元110会全局维护一个切割的片数,片数根据文件大小动态设定,所有交易场景的文件使用相同的分片数量的分片文件,即分片数N是根据原始文件大小全局设置的,例如100G的原始文件,10台机器,每台机器处理10G内容,那么分片数N为10。
具体的,文件切割单元110中有n个文件切割服务节点,分别对包含的贷款(loan)、还款(repay)和核验(check)交易场景的原始文件进行切割分片服务,分别通过文件切割分片节点0片、文件切割服务节点1片……文件切割服务节点n片按照借据号或按照客户名称进行哈希值取模的方式获得每个交易场景的分片索引,根据分片索引决定该条记录的交易场景应该是存放到共享磁盘中的哪一个分片文件中。例如,放款文件loan,读取每一行数据,根据借据号进行哈希取模得到文件分片索引,例如0索引,将该行数据写入loan_0文件中,下一行通过借据号取模得到索引3,然后将该行写入loan_3文件中,例如还款文件repay,索引为1,那么将该行数据写入repay_1的文件中,再例如,核验文件check,索引为n,那么将该行核验数据写入check_n中。
本发明实施例中,在数据量大而机器硬件的配置有限的情况下,先针对原始数据做一个切割,后续的所有处理均根据这一切割维度进行处理,以便降低计算服务内存压力,同时提升计算的并行能力。
标准化单元120,用于分别对分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与分片文件对应的缓存分区中。
具体的,在对文件进行分割完毕后,启动标准化单元120中的n个文件处理服务节点,分别对应的对切割后的分片文件中解析出来的最原始的交易场景的数据结构(即RawTS),为了做到后续业务处理的标准化,需要对原始的交易场景的数据结构进行标准化处理(即将Raw TS变为Standard TS),得到与每一个核算系统内部统一定义的标准交易数据结构(TS标准化数据),并存储在与分片文件对应的缓存分区中,需要说明的是,每一个分片文件都有一个对应的缓存分区,每个缓存分区都是独立的,多个缓存分区中的分片文件都是并行处理的。
构建单元130,用于将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合。
所有文件切割完毕并且标准化处理后,构建单元130分别将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建成多个交易链路,生成具有顺序属性的交易链路集合,并将生成的交易链路集合对应的存储在分区缓存中。本发明实施例解决了如何将切割后的文件加工成标准的TS和TF信息,并且按照原始文件的分割规则存放到对应的缓存分区中。
业务处理单元140,用于按照交易链路集合中的交易链路执行业务处理。
具体的,业务处理单元140通过监控交易链路集合缓存完毕的标识,监控交易链路集合是否缓存完毕;缓存完毕后,通过业务处理单元140中的n+1个业务处理服务节点分别对每个缓存分区中的交易链路进行采集,根据数据链路采集服务采集到的交易链路执行业务文件处理。例如,根据构建单元130构建的TF标准信息对业务执行放款服务,还款服务、核验服务、减免服务、持久化服务等,本发明实施例通过对数据标准化后按照交易链路的标准信息执行后续业务的处理,极大的减少了业务处理的差异。另外,对处理失败的业务文件重新执行业务文件处理,当重新执行业务文件处理的次数小于预设的阈值时,将处理失败的业务文件存入延迟队列等待下次重新执行,当重新执行业务文件处理的次数等于预设的阈值时,将交易处理放入异常数据存储模块等待人工处理。
本发明实施例中,TS标准化数据及TF标准信息的加工及存储遵循原始文件的分片规则,比如原始文件切割时分为10片,则加工后的标准化数据缓存TS及TF控制信息均分为10片,在每片的数据处理过程中片与片均不受互相影响,这样可以大大提升效率。
本发明实施例在对接不同第三方渠道(即文件交易为主)的业务时,能够复用90%以上的业务逻辑和代码,实现了快速接入、质量高、维护简单、修改灵活的目的;
本发明实施例将step-driven mode(面向步骤的、由状态驱动的消费模式)转变为TF-driven mode(面向借据的、由TF驱动的消费模式),实现所有交易在所有可用的计算资源上充分的并行化,提升了处理的实时性目标;
本发明实施例通过分区技术实现交易处理被分摊到多个计算资源上,满足了大数据高并发交易场景下处理的性能目标,通过单片流量复制技术实现单片的高可靠目标。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考方法实施例中的对应过程,在此不再赘述。
实施例三
如图10所示,本发明实施例还提供了一种计算机可读存储介质1000,计算机可读存储介质1000内存储有计算机程序1010,计算机程序被处理器执行时实现上述一种传帐类交易文件的处理方法的各步骤。例如,计算机程序被处理器执行时实现如下步骤:
将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数;
分别对分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与分片文件对应的缓存分区中;
将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在分片文件对应的缓存分区中;
按照交易链路集合中的交易链路执行业务处理。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
实施例四
请参见图11,本发明实施例还提供一种电子设备。图11是本发明的一个实施例电子设备的结构示意图。请参考图11,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是工业标准体系结构ISA总线、外设部件互连标准PCI总线或扩展工业标准结构EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成基于集中配置的自动化容灾系统。处理器,执行存储器所存放的程序,并具体用于执行图1和图3所示的任意一种分布式异步数据通讯的处理方法。
上述如图1至图8所示实施例揭示的一种传帐类交易文件的处理方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
当然,除了软件实现方式之外,本发明的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
虽然本发明提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。
本发明是参照根据本发明实施例的方法、设备、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备及可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种传帐类交易文件的处理方法,其特征在于,包括如下步骤:
将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数;
分别对所述分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与所述分片文件对应的缓存分区中;
将所述缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在所述分片文件对应的缓存分区中;
按照所述交易链路集合中的交易链路执行业务处理。
2.根据权利要求1所述的传帐类交易文件的处理方法,其特征在于,所述的将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,具体包括:
根据原始文件的大小设置分片数N,根据所述分片数N对所述原始文件进行切割;
将所述原始文件中每个交易场景按照借据号或者客户名称进行哈希值取模的方式获得每个交易场景的分片索引;
按照所述分片索引确定所述原始文件中每个交易场景对应的分片文件,得到N个包含不同交易场景的分片文件。
3.根据权利要求2所述的传帐类交易文件的处理方法,其特征在于,所述的分别对所述分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与所述分片文件对应的缓存分区中,具体包括:
根据文件切割完毕标识监控文件切割处理的状态;
在文件切割完毕后,分别对每一个分片文件进行解析处理,得到不同交易场景的原始数据结构,对所述原始数据结构进行拦截校验,如果所述原始数据结构的格式错误,则立即终止解析;
对校验合格的原始数据结构进行标准化处理,获得不同交易场景的标准数据结构,对所述标准数据结构进行拦截校验,如果校验出所述标准数据结构的格式错误,则立即终止解析;
将校验合格后的标准数据结构存储在与所述分片文件对应的缓存分区中。
4.根据权利要求3所述的传帐类交易文件的处理方法,其特征在于,所述的将所述缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合,并存储在所述分片文件对应的缓存分区中,具体包括:
根据预先配置的交易链路控制信息,将缓存分区中的不同交易场景的标准数据结构在交易链路信息消息体中按照业务处理的时间顺序进行排列,得到包含多个交易链路的交易链路集合;
将所述交易链路集合缓存到所述分片文件对应的缓存分区中。
5.根据权利要求1所述的传帐类交易文件的处理方法,其特征在于,在所述的按照所述交易链路集合中的交易链路执行业务处理之前,还包括:
通过监控交易链路集合缓存完毕的标识,监控所述交易链路集合是否缓存完毕;
在缓存完毕后,对每个缓存分区中的交易链路进行采集。
6.根据权利要求5所述的传帐类交易文件的处理方法,其特征在于,所述的按照所述交易链路集合中的交易链路执行业务处理,具体包括:
根据数据链路采集服务采集到的交易链路执行业务文件处理,对处理失败的业务文件重新执行业务文件处理;
当重新执行业务文件处理的次数小于预设的阈值时,将处理失败的业务文件存入延迟队列等待下次重新执行;
当重新执行业务文件处理的次数等于预设的阈值时,将所述交易处理放入异常数据存储模块等待人工处理。
7.根据权利要求5所述的传帐类交易文件的处理方法,其特征在于,所述的按照所述交易链路集合中的交易链路执行业务处理之后,还包括:
对业务文件处理结果进行核验;
对业务文件处理结果正常的业务文件进行分区缓存,对分区缓存中的全部数据持久化在数据库,并将所述分区缓存中的部分数据保存在所述分区缓存中。
8.一种传帐类交易文件的处理系统,其特征在于,所述处理系统包括:
文件切割单元,用于将原始文件按照预设分片数N和预设切割规则进行切割处理,得到N个包含不同交易场景的分片文件,其中,N为正整数;
标准化单元,用于分别对所述分片文件进行标准化处理,获得不同交易场景的标准数据结构,并存储在与所述分片文件对应的缓存分区中;
构建单元,用于将缓存分区中的不同交易场景的标准数据结构按照业务处理的时间顺序构建交易链路,生成具有顺序属性的交易链路集合;
业务处理单元,用于按照所述交易链路集合中的交易链路执行业务处理。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任意一项所述的一种传帐类交易文件的处理方法。
10.一种电子设备,其特征在于,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1-7中任意一项所述的一种传帐类交易文件的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111654541.2A CN114218173B (zh) | 2021-12-30 | 2021-12-30 | 传帐类交易文件的批处理系统、处理方法、介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111654541.2A CN114218173B (zh) | 2021-12-30 | 2021-12-30 | 传帐类交易文件的批处理系统、处理方法、介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114218173A true CN114218173A (zh) | 2022-03-22 |
CN114218173B CN114218173B (zh) | 2022-10-28 |
Family
ID=80707072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111654541.2A Active CN114218173B (zh) | 2021-12-30 | 2021-12-30 | 传帐类交易文件的批处理系统、处理方法、介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114218173B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116594961A (zh) * | 2023-07-19 | 2023-08-15 | 安徽华云安科技有限公司 | 文件处理方法、装置、设备以及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140372702A1 (en) * | 2013-06-12 | 2014-12-18 | Oracle International Corporation | Handling memory pressure in an in-database sharded queue |
US20190272537A1 (en) * | 2018-03-05 | 2019-09-05 | Capital One Services, Llc | Systems and Methods for Use of Distributed Ledger Technology for Recording and Utilizing Credit Account Transaction Information |
CN110287205A (zh) * | 2019-06-21 | 2019-09-27 | 中国银联股份有限公司 | 一种区块链跨分片交易数据处理方法及装置 |
CN110782351A (zh) * | 2019-10-30 | 2020-02-11 | 河北幸福消费金融股份有限公司 | 适于日终交易的数据处理方法、系统、装置及存储介质 |
US20200279308A1 (en) * | 2019-02-28 | 2020-09-03 | RIA Advisory LLC | System for High-Speed Billing Transaction Processing on a Processing Cluster |
CN111767143A (zh) * | 2020-06-24 | 2020-10-13 | 中国工商银行股份有限公司 | 交易数据处理方法、装置、设备及系统 |
CN112434036A (zh) * | 2020-11-24 | 2021-03-02 | 上海浦东发展银行股份有限公司 | 一种账户管理系统数据的处理方法 |
CN112732650A (zh) * | 2020-12-31 | 2021-04-30 | 中国工商银行股份有限公司 | 文件分片方法及装置 |
CN113032357A (zh) * | 2021-04-29 | 2021-06-25 | 中国工商银行股份有限公司 | 文件的存储方法、装置和服务器 |
CN113254457A (zh) * | 2021-07-01 | 2021-08-13 | 中邮消费金融有限公司 | 一种对账方法、系统及计算机可读存储介质 |
CN113486059A (zh) * | 2021-07-23 | 2021-10-08 | 重庆富民银行股份有限公司 | 基于多线程的对账方法及系统 |
-
2021
- 2021-12-30 CN CN202111654541.2A patent/CN114218173B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140372702A1 (en) * | 2013-06-12 | 2014-12-18 | Oracle International Corporation | Handling memory pressure in an in-database sharded queue |
US20190272537A1 (en) * | 2018-03-05 | 2019-09-05 | Capital One Services, Llc | Systems and Methods for Use of Distributed Ledger Technology for Recording and Utilizing Credit Account Transaction Information |
US20200279308A1 (en) * | 2019-02-28 | 2020-09-03 | RIA Advisory LLC | System for High-Speed Billing Transaction Processing on a Processing Cluster |
CN110287205A (zh) * | 2019-06-21 | 2019-09-27 | 中国银联股份有限公司 | 一种区块链跨分片交易数据处理方法及装置 |
CN110782351A (zh) * | 2019-10-30 | 2020-02-11 | 河北幸福消费金融股份有限公司 | 适于日终交易的数据处理方法、系统、装置及存储介质 |
CN111767143A (zh) * | 2020-06-24 | 2020-10-13 | 中国工商银行股份有限公司 | 交易数据处理方法、装置、设备及系统 |
CN112434036A (zh) * | 2020-11-24 | 2021-03-02 | 上海浦东发展银行股份有限公司 | 一种账户管理系统数据的处理方法 |
CN112732650A (zh) * | 2020-12-31 | 2021-04-30 | 中国工商银行股份有限公司 | 文件分片方法及装置 |
CN113032357A (zh) * | 2021-04-29 | 2021-06-25 | 中国工商银行股份有限公司 | 文件的存储方法、装置和服务器 |
CN113254457A (zh) * | 2021-07-01 | 2021-08-13 | 中邮消费金融有限公司 | 一种对账方法、系统及计算机可读存储介质 |
CN113486059A (zh) * | 2021-07-23 | 2021-10-08 | 重庆富民银行股份有限公司 | 基于多线程的对账方法及系统 |
Non-Patent Citations (3)
Title |
---|
ZHAO X , ET AL: "An Optimization Scheme for Bank Batch Processing Based on cloud computation", 《APPLIED MECHANICS AND MATERIALS》 * |
温长洋: "银行综合业务平台批处理框架的设计与实现", 《中国金融电脑》 * |
魏遵天: "基于分布式技术的金融核心交易系统的研究与设计", 《电子测试》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116594961A (zh) * | 2023-07-19 | 2023-08-15 | 安徽华云安科技有限公司 | 文件处理方法、装置、设备以及存储介质 |
CN116594961B (zh) * | 2023-07-19 | 2023-09-22 | 安徽华云安科技有限公司 | 文件处理方法、装置、设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114218173B (zh) | 2022-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109271411B (zh) | 报表生成方法、装置、计算机设备及存储介质 | |
CN109034993B (zh) | 对账方法、设备、系统及计算机可读存储介质 | |
US11823178B2 (en) | Optimization of high volume transaction performance on a blockchain | |
WO2020238066A1 (zh) | 一种软件的压力测试方法、装置、存储介质和服务器 | |
CN112948492A (zh) | 一种数据处理系统、方法、装置、电子设备及存储介质 | |
CN111611249A (zh) | 数据管理方法、装置、设备及存储介质 | |
CN110019271A (zh) | 数据一致性检测方法、装置、设备及计算机存储介质 | |
CN114218173B (zh) | 传帐类交易文件的批处理系统、处理方法、介质和设备 | |
CN113791586A (zh) | 一种新型的工业app与标识注册解析集成方法 | |
CN111897790A (zh) | 风控日志采集方法、装置、电子设备及存储介质 | |
CN114125015A (zh) | 一种数据采集方法及系统 | |
CN112363838A (zh) | 数据处理方法及装置、存储介质、电子装置 | |
CN116993523A (zh) | 配置化对账方法、装置、设备及存储介质 | |
CN114218303B (zh) | 一种交易数据的处理系统、处理方法、介质和设备 | |
CN110827001A (zh) | 一种会计事件记账方法、系统、设备和存储介质 | |
CN113282347B (zh) | 插件运行方法、装置、设备及存储介质 | |
CN113902415A (zh) | 财务数据核对方法、装置、计算机设备和存储介质 | |
CN113326064A (zh) | 划分业务逻辑模块的方法、电子设备及存储介质 | |
CN111045983A (zh) | 核电站电子文件管理方法、装置、终端设备及介质 | |
CN111708802B (zh) | 网络请求防重处理方法及装置 | |
CN117390106B (zh) | 数据处理方法、装置、存储介质和计算设备 | |
CN115499338B (zh) | 数据处理方法、设备、介质及云网络观测系统 | |
CN112907009B (zh) | 标准化模型的构建方法、装置、存储介质及设备 | |
CN113342744B (zh) | 调用链的并行构建方法、装置、设备及存储介质 | |
CN110196862B (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 |