发布信息

数据处理系统、方法、装置、电子设备及存储介质与流程

作者:admin      2022-09-02 18:18:41     959



计算;推算;计数设备的制造及其应用技术1.本发明实施例涉及计算机技术领域,尤其涉及一种数据处理系统、方法、装置、电子设备及存储介质。背景技术:2.随着互联网技术的不断发展,用户可以通过安装于智能终端上的app执行金融产品的申购等交易操作,基于该交易操作业务系统需要处理本次交易并进行记账处理,在进行记账处理时需要针对多个记账维度分别进行记账,比如用户在app上申购了多个基金产品,那么后台需要针对用户维度进行记账,还需要针对申购的各基金产品的产品维度分别进行记账。3.在实现本发明的过程中,发现现有技术中至少存在以下问题:4.上述方案中交易处理和记账处理均耦合在业务系统中执行,业务系统的压力较大,造成了业务系统处理效率下降的问题,并且需要针对多个记账维度分别进行记账,而不同维度的账分散在不同的账务系统中,需要调用多个记账服务进行记账,导致处理效率和资源的利用率低下。技术实现要素:5.本发明实施例提供了一种数据处理系统、方法、装置、电子设备及存储介质,以缓解业务系统的压力,并提高记账处理效率和资源利用率。6.第一方面,本发明实施例提供了一种数据处理系统,该系统包括:7.业务方服务器,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器发送携带业务方标识和所述记账调用参数的记账接口调用请求;其中,所述记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;8.应用服务器,用于接收所述记账接口调用请求,从数据库集群中确定所述业务方标识对应的数据库服务器,从所述数据库服务器读取所述业务方标识对应的账户层级结构的配置数据,根据所述配置数据对所述记账调用参数进行验证,并在验证通过后根据所述记账调用参数对所述数据库服务器中存储的所述账户层级结构中的多个账户节点的账户数据进行更新;9.数据库服务器,用于存储所述账户层级结构中各账户节点的账户数据。10.第二方面,本发明实施例还提供了一种数据处理方法,该方法包括:11.接收业务方服务器发送的携带业务方标识和记账调用参数的记账接口调用请求;其中,所述记账调用参数是所述业务方服务器根据当前交易记录生成的,所述记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;12.从数据库集群中确定所述业务方标识对应的数据库服务器,从所述数据库服务器读取所述业务方标识对应的账户层级结构的配置数据;13.根据所述配置数据对所述记账调用参数进行验证,并在验证通过后根据所述记账调用参数对所述数据库服务器中存储的所述账户层级结构中的多个账户节点的账户数据进行更新;其中,所述数据库服务器用于存储所述账户层级结构中各账户节点的账户数据。14.第三方面,本方明实施例还提供了一种数据处理装置,该装置包括:15.请求接收模块,用于接收业务方服务器发送的携带业务方标识和记账调用参数的记账接口调用请求;其中,所述记账调用参数是所述业务方服务器根据当前交易记录生成的,所述记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;16.配置读取模块,用于从数据库集群中确定所述业务方标识对应的数据库服务器,从所述数据库服务器读取所述业务方标识对应的账户层级结构的配置数据;17.数据更新模块,用于根据所述配置数据对所述记账调用参数进行验证,并在验证通过后根据所述记账调用参数对所述数据库服务器中存储的所述账户层级结构中的多个账户节点的账户数据进行更新;其中,所述数据库服务器用于存储所述账户层级结构中各账户节点的账户数据。18.第四方面,本发明实施例还提供了一种电子设备,所述电子设备包括:19.一个或多个处理器;20.存储装置,用于存储一个或多个程序,21.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例提供的数据处理方法。22.第五方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例提供的数据处理方法。23.上述发明中的实施例具有如下优点或有益效果:24.本发明实施例的数据处理系统包括业务方服务器、应用服务器和数据库服务器;其中,业务方服务器向当前业务方对应的应用服务器发送记账接口调用请求,应用服务器在接收到记账接口调用请求时,从数据库集群中确定业务方标识对应的数据库服务器,以从数据库服务器读取业务方标识对应的账户层级结构的配置数据,并进行验证处理以及对多个账务节点的账户数据的更新处理,从而实现了记账操作由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的记账操作,无需调用多个服务来分别记账,从而提高了交易记账的处理效率和资源利用率。附图说明25.为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。26.图1a为本发明实施例一所提供的一种数据处理系统的结构示意图;27.图1b为本发明实施例一所提供的一种账户层级结构示意图;28.图1c为本发明实施例一所提供的另一种账户层级结构示意图;29.图1d为本发明实施例一所提供的一种数据处理系统的结构示意图;30.图1e为本发明实施例一所提供的一种层级账户科目;31.图1f为本发明实施例一所提供的一种记账处理的交互过程示意图;32.图2为本发明实施例二所提供的一种应用服务器的结构示意图;33.图3为本发明实施例三所提供的一种冲销处理的交互过程示意图;34.图4为本发明实施例四所提供的一种余额查询处理的交互过程示意图;35.图5为本发明实施例五所提供的一种账户流水查询处理的交互过程示意图;36.图6a为本发明实施例六所提供的一种记账单元配置和记账项目配置示意图;37.图6b为本发明实施例六所提供的一种汇总配置示意图;38.图6c为本发明实施例六所提供的一种汇总配置样例示意图;39.图6d为本发明实施例六所提供的一种账务基本配置示意图;40.图6e为本发明实施例六所提供的一种账务基本配置样例示意图;41.图6f为本发明实施例六所提供的一种交易基本配置示意图;42.图6g为本发明实施例六所提供的一种账务基本配置样例示意图;43.图6h为本发明实施例六所提供的一种配置数据示意图;44.图6i为本发明实施例六所提供的一种数据处理系统的接入过程示意图;45.图6j为本发明实施例六所提供的一种开户流程示意图;46.图7为本发明实施例七所提供的一种数据处理方法的流程示意图;47.图8为本发明实施例八所提供的一种数据处理装置的结构示意图;48.图9为本发明实施例九所提供的一种电子设备的结构示意图。具体实施方式49.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。50.实施例一51.图1a为本发明实施例一提供的一种数据处理系统的结构示意图,本实施例可适用于对当前交易记录进行记账处理的情况,尤其适用于业务方服务器通过向独立部署的应用服务器发送记账接口调用请求,以使应用服务器对当前交易记录进行记账处理的情况,该系统可以由硬件和/或软件来实现。如图1a所示,该系统具体包括:52.业务方服务器110,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器120发送携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;53.应用服务器120,用于接收记账接口调用请求,从数据库集群中确定业务方标识对应的数据库服务器130,从数据库服务器130读取业务方标识对应的账户层级结构的配置数据,根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对数据库服务器130中存储的账户层级结构中的多个账户节点的账户数据进行更新;54.数据库服务器130,用于存储账户层级结构中各账户节点的账户数据。55.其中,不同的业务方可以具备其对应的业务方服务器110;例如,甲业务对应业务方服务器a,丁业务对应业务方服务器b,丙业务对应业务方服务器c。业务方服务器110可以接收客户端发送的交易处理请求,根据交易处理请求进行交易处理并生成当前交易记录。示例性的,客户端可以是京东科技内的应用程序,如京东金融等,客户端也可以是微信小程序,本技术对此不作限定,客户端可以是任意向用户提供交易服务的程序。56.在本实施例中,当前业务方可以是当前交易记录对应的业务方,业务方标识可以是当前业务方的识别信息。业务方服务器110还用于确定当前业务方对应的应用服务器120。具体的,业务方服务器110可以根据当前业务方的业务方标识,从应用服务器集群中确定当前业务方对应的应用服务器120。示例性的,甲业务的业务方标识为“account_xjk”。在一种实施方式中,业务方服务器110 可以根据当前业务方的业务方标识,从应用服务器集群中确定当前业务方对应的应用服务器120,包括:业务方服务器110根据当前业务方的业务方标识生成对应的哈希值,根据预先建立的哈希值与各应用服务器标识的对应关系,确定当前业务方对应的应用服务器120。57.本实施例部署应用服务器集群,以使业务方服务器110从应用服务器集群中确定当前业务方对应的应用服务器的好处在于:在业务方服务器接收大量当前交易记录的场景下,通过多个应用服务器分别对各当前交易记录进行记账处理,提高记账处理效率,保证记账处理的实时性。58.业务方服务器110还用于根据当前交易记录生成记账调用参数,并向当前业务方对应的应用服务器120发送携带业务方标识和记账调用参数的记账接口调用请求。其中,记账调用参数包括但不限于需要更新的各账户节点对应的标识信息以及更新方式信息。需要说明的是,账户节点可以是根据各账户的层级所确定的节点。如图1b所示,展示了一种账户层级结构示意图,该账户层级结构包括3层,三级账户属于二级账户的子账户,二级账户属于根节点账户的子账户,则账户节点包括根账户节点、各二级账户节点、以及各三级账户节点。59.可以理解的是,各账户的层级可以根据账号的业务类型确定。以甲业务为例,如图1c所示,展示了一种账户层级结构示意图,甲业务可以分为个人账和产品账两类账户,则产品账属于个人账的子账户,则个人账和产品账属于不同层级,账户节点包括个人账节点、产品账1节点、产品账2节点。60.在本实施例中,记账调用参数由需要更新的各账户节点对应的标识信息以及更新方式信息生成。其中,需要更新的账户节点对应的标识信息可以是需要更新的账户节点的识别信息。可选的,标识信息包括层级账户信息,层级账户信息包括账户编码;其中,账户编码可以是账户节点的层级编码。61.更新方式信息可以包括需要更新的各账户节点的变更金额信息以及变更操作符。其中,变更操作符包括加(+)和减(-);即,加变更操作符表示在账户节点的原金额基础上增加变更金额,减变更操作符表示在账户节点的原金额基础上减少变更金额。在一种实施方式中,更新方式信息还包括金额限制信息,其中,金额限制信息可以是对变更金额的限制,包括但不限于变更金额需大于预设值、变更金额需小于预设值和变更金额需固定为预设值等。例如,变更金额大于零,或变更金额小于一万元,或变更金额固定为一千元等。62.在一种实施方式中,记账调用参数不仅包括需要更新的各账户节点对应的标识信息以及更新方式信息,还包括用户账号信息、交易码、金额信息和产品编码。其中,产品编码可以是当前交易记录关联的产品的编码。63.业务方服务器110在向应用服务器120发送携带业务方标识和记账调用参数的记账接口调用请求后,应用服务器120接收该记账接口调用请求,并从数据库集群中确定业务方标识对应的数据库服务器130。在一种实施方式中,应用服务器120可以基于动态数据源(dynamic datasource)和内容分发 (completed database splitter,cds)模块,从数据库集群中确定业务方标识对应的数据库服务器130。或者,基于r2m client确定出缓存服务器;其中,缓存服务器用于缓存数据库服务器中的热点数据,热点数据是指预设时间段内被查询频次高于设定阈值的数据。示例性的,如图1d所示,以甲业务服务器和乙业务服务器为例,展示了一种数据处理系统的结构示意图。在图1d中,业务方服务器分别在其对应的应用服务器集群中确定出当前业务方对应的应用服务器。确定出的应用服务器可以基于dynamic datasource和cds模块在数据库集群中确定出数据库服务器;或,基于r2m client确定出缓存服务器。其中, cds模块部署在应用服务器上;cds模块可以是用于进行数据库分库分表的中间件。各应用服务器还可以提供标准调用(javaserver faces,jsf)服务。64.在本实施例中,各数据库服务器还可以分别存储各业务方标识对应的账户层级结构的配置数据。应用服务器120在从数据库集群中确定业务方标识对应的数据库服务器130后,从数据库服务器130读取当前业务方的业务方标识对应的账户层级结构的配置数据。其中,账户层级结构可以是各账户节点的层级结构;账户层级接口的配置数据可以包括各账户节点的配置信息。65.具体的,应用服务器120在从数据库服务器130读取业务方标识对应的账户层级结构的配置数据后,根据配置数据对记账调用参数进行验证,例如,对记账调用参数中的层级账户编码进行验证等。若对记账调用参数的验证通过,则根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;其中,账户数据可以包括各账户节点的金额信息和流水信息等。即,在记账调用参数的验证通过时,根据记账调用参数即可完成需要更新的多个账户节点的记账处理。66.示例性的,记账调用参数包括产品账1账户节点对应的标识信息、个人账账户节点对应的标识信息、变更金额1元以及变更操作符为增加;数据库服务器中存储的产品账1账户节点的账户数据包括金额200元,个人账账户节点的账户数据包括金额500元,则更新后的产品账1账户节点的账户数据包括金额 201元,更新后的个人账账户节点的账户数据包括金额501元。67.可选的,标识信息中的层级账户信息还包括层级账户科目;其中,层级账户科目可以是账户节点的业务科目。如图1e所示,展示了一种层级账户科目,示例性的,层级账户科目可以是总金额、可用金额、冻结金额等。68.以甲业务为例,层级账户科目包括总金额、可用金额、冻结金额和累计收益中的至少一个。相应的,根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新,还可以是对各账户节点的层级账户科目的账户数据进行更新。例如,记账调用参数包括产品账1账户节点的可用余额,个人账账户节点对应的可用余额,变更金额2元以及变更操作符为增加,数据库服务器中存储的产品账1账户节点的可用余额的账户数据包括金额100元,个人账账户节点的可用余额的账户数据包括金额300元,则更新后的产品账1账户节点的可用余额的账户数据包括金额102元,更新后的个人账账户节点的可用余额的账户数据包括金额302元。69.在一种实施方式中,根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新,包括:调用数据库服务器130开启数据库事务,通过开启的数据库事务以及记账调用参数,对账户层级结构中的多个账户节点的账户数据进行更新。在另一种实施方式中,可以在应用服务器中部署账户核心处理层,由应用服务器中的账户核心处理层执行根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新的操作,70.考虑到部分账户的账户层级结构简单,部分账户的账户层级结构复杂,针对不同复杂程度的账户层级结构,可以分别采用不同的记账方式。例如,层级复杂的账户层级结构可以采用异步记账方式,以减少同步记账方式的处理时长,进而提高记账效率,保证记账的实时性;层级简单的账户层级结构可以采用同步记账方式,以各账户节点记账的同步性。因此,可选的,根据记账调用参数对数据库服务器130中存储的账户层级结构中的多个账户节点的账户数据进行更新,包括:若根据记账调用参数中的交易码确定采用同步记账方式,则按照从根账户节点到叶子账户节点的顺序,对账户层级结构中各层级的账户节点进行遍历;对于遍历到的需要更新的账户节点,根据账户节点的账户编码确定用于记录账户节点的账户数据的数据表,根据账户节点的更新方式信息将数据表中记录的账户节点的账户数据进行更新;在更新完成后向业务方服务器110发送记账完成通知消息。71.在该可选的实施方式中,记账调用参数包括交易码;其中,交易码基于当前交易记录的交易类型以及各账户节点的记账方式生成。例如,交易类型可以是转入金额、转出金额、冻结金额等;记账方式包括同步记账方式和异步记账方式。可选的,各账户节点的记账方式可以基于账户层级结构的层级数量确定。示例性的,若账户层级结构的层级数量未超过设定层级阈值,则确定账户层级结构的各账户节点为同步记账方式;或者,若账户层级结构对应的账户节点的数量未超过设定数量阈值,则确定账户层级结构的各账户节点为同步记账方式。其中,设定层级阈值和设定数量阈值可以根据实际业务对调用实时性的需求进行确定,本技术对此不作限定。在一种实施方式中,还可以将交易类型为转出金额的各账户节点的记账方式配置为同步记账方式,以保证各账户节点的账户数据的同步更新。72.需要说明的是,账户层级结构的各账户节点形成树状层级关系,如图1b所示。叶子账户节点是根账户节点的子账户。遍历到的需要更新的账户节点的账户编码可以基于记账调用参数确定。具体的,可以根据已预先存储的各账户节点的账户编码以及记录各账户节点的账户数据的数据表之间的对应关系,确定遍历到的需要更新的账户节点所对应的数据表;其中,各数据表存储于数据库服务器中,存储有账户节点的账户数据。在确定出遍历到的需要更新的账户节点的数据表后,基于账户节点的更新方式信息,对数据表中的账户数据进行更新。73.该可选的实施方式列举出了同步记账方式下的一种记账流程,采用同步记账方式完成记账处理的好处在于:针对账户层级结构较为简单的各账户节点来说,通过同步记账方式可以保证各账户节点记账的同步性。74.可选的,根据记账调用参数对数据库服务器130中存储的账户层级结构中的多个账户节点的账户数据进行更新,包括:若根据记账调用参数中的交易码确定采用异步记账方式,则根据记账调用参数确定账户层级结构中需要更新的叶子账户节点,根据叶子账户节点的账户编码确定用于记录叶子账户节点的账户数据的数据表,根据叶子账户节点的更新方式信息将数据表中记录的叶子账户节点的账户数据进行更新,在更新完成后向业务方服务器110发送记账完成通知消息;开启异步记账线程,通过异步记账线程将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。75.具体的,在该可选的实施方式中,若各账户节点的记账方式为异步记账方式,则对需要更新的叶子账户节点的账户数据进行更新,在叶子账户节点的账户数据更新完成后,通过开启异步记账线程,更新账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据。示例性的,如图1b所示,若各账户节点为异步记账方式,则先对各三级账户节点的账户数据进行更新,在更新完成后开启异步记账线程,通过异步记账线程更新各二级账户节点以及根账户节点的账户数据。76.在一种实施方式中,可以将交易类型为转入金额的各账户节点的记账方式配置为异步记账方式,以保证记账处理的实时性。在该可选的实施方式中,采用同步记账方式完成记账处理的好处在于:减少同步记账方式的处理时长,进而提高记账效率,保证记账的实时性。可选的,通过异步记账线程将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新,包括:创建异步记账任务,并将异步记账任务的任务信息发送至预设消息队列mq 中;通过开启的异步记账线程从mq中读取任务信息,根据任务信息执行异步记账任务,以将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。77.其中,异步记账任务可以是用于处理除叶子账户节点之外的其他账户节点的账户数据更新的任务。预设消息队列(message queue,mq)用于缓存各异步记账任务的任务信息。可选的,预设消息队列可以是预设的一个全局共享的缓存空间,用于缓存各异步记账任务的任务信息。在一种实施方式中,异步记账线程可以周期性地从mq中读取任务信息,并根据读取到的任务信息执行对应的异步记账任务,进而对账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。78.本实施例的数据处理系统包括业务方服务器、应用服务器和数据库服务器;其中,业务方服务器向当前业务方对应的应用服务器发送记账接口调用请求,应用服务器在接收到记账接口调用请求时,从数据库集群中确定业务方标识对应的数据库服务器,以从数据库服务器读取业务方标识对应的账户层级结构的配置数据,并进行验证处理以及对多个账务节点的账户数据的更新处理,从而实现了记账操作由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力,帮助业务线零开发量的拥有记账能力,快速响应业务需求。同时,通过和业务服务器的解耦,使得交易和记账分开,进而应用服务器可以接入业务方现有的消息,进行记账处理。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的记账操作,无需调用多个服务来分别记账,如果为层级账户,业务方服务器只需要调用一次记账,系统自动记账到各层级账户上并进行统计处理,从而提高了交易记账的处理效率和资源利用率。79.以图1f为例,展示了一种业务方服务器与应用服务器进行记账处理的交互过程示意图。具体的,业务方服务器根据应用服务器要求生成记账接口调用请求发送至应用服务器,应用服务器调用账户查询服务,并进行入参验证,在验证通过后,调用记账服务对账户数据进行更新,并将记账结果反馈至业务方服务器。80.实施例二81.本实施例在上述各实施例的基础上,可选的,根据配置数据对记账调用参数进行验证,包括:根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证。82.其中与上述各实施例相同或相应的术语的解释在此不再赘述。本实施例提供的数据处理系统包括:83.业务方服务器,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器发送携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;84.应用服务器,用于接收记账接口调用请求,从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据,根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证,并在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;85.数据库服务器,用于存储账户层级结构中各账户节点的账户数据。86.即,本实施例的应用服务器在对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,需要对记账调用参数进行入参验证。87.在本实施例中,配置数据包括模型配置数据;其中,模型配置数据可以包括各账户节点之间的树状层级关系;例如,如图1b-1c。记账调用参数中的账户层级可以基于记账调用参数中需要更新的账户节点的账户编码确定。具体的,根据记账调用参数中的账户层级与配置数据中的模型配置数据,验证记账调用参数中的账户层级是否匹配。88.或者,配置数据包括节点配置数据;其中,节点配置数据可以包括各账户节点。具体的,可以根据记账调用参数中的账户层级与配置数据中的节点配置数据,验证需要更新的账户节点是否存在。89.或者,配置数据包括交易记账配置数据;其中,交易记账配置数据可以包括各层级账户科目的变更操作符和金额限制信息。具体的,可以根据记账调用参数中账户节点的更新方式信息与配置数据中的交易记账配置数据,验证记账调用参数中账户节点的更新方式信息是否符合规则。90.在本实施例中,可以对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及所述记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证。本实施例对进行验证的项目数量不进行限定,可以根据实际业务对验证精度或验证时间的需求进行调整。91.可选的,还可以对记账调用参数是否为空数据,记账调用参数中各字段的长度是否满足预设长度要求以及记账调用参数中需要更新的各账户节点是否异常中的至少一项进行验证。92.在一种实施方式中,可以在应用服务器中部署数据校验层;由应用服务器的数据校验层执行根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证的操作。93.本实施例提供的数据处理系统中的应用服务器,根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证,避免在账户节点的账户数据更新时由于账户层级不匹配,或账户节点不存在,或更新方式进行不符合规则,导致的账户数据更新错误,从而确保了账户数据更新的准确性,进一步的,提高了用户的体验感。94.考虑到存在账户层级结构的配置数据中不包含部分需要更新的账户节点的情形,例如,用户新申购了一个产品账。可选的,应用服务器还用于:在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,若账户层级结构中不存在记账调用参数中包括的任一需要更新的账户节点,则根据配置数据确定是否能够自动创建新账户,若是,则在账户层级结构中添加任一需要更新的账户节点。95.例如,甲业务的用户可以申购多个产品账,多个产品账的账户编码无需预先设置在配置数据中,在用户申购新的产品账后,可以自动创建该产品账对应的新账户,即,在账户层级结构中添加该产品账的账户节点。在一种可选的实施方式中,配置数据中可以包括申购标识;其中,申购标识用于表示是否可以创建新账户,根据配置数据中的申购标识可以确定是否能够自动创建新账户。96.在一种实施方式中,可以在应用服务器中部署记账模型处理层。由记账模型处理层执行在账户层级结构中不存在记账调用参数中包括的任一需要更新的账户节点时,根据配置数据确定是否能够自动创建新账户,若是,则在账户层级结构中添加任一需要更新的账户节点的操作。97.在这些可选的实施方式中,在账户层级结构的配置数据中不包含部分需要更新的账户节点的场景下,提供了一种根据配置数据在账户层级结构中添加需要更新的账户节点的方式,避免了出现在用户购买新产品时无法完成相应的记账处理的情形,进而保证了记账的准确性。98.考虑到对于每一个记账接口调用请求,在进行多账户节点的账户数据的更新处理时,还可以生成并存储对应的交易记录。可选的,应用服务器还用于:在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,根据记账调用参数生成一条作为交易记录,将交易记录写入到数据库服务器的交易表中,在交易表中记录交易状态为处理中;以及,在对多个账户节点的账户数据进行更新后,将交易表中的交易状态标记为成功。99.其中,交易表用于存储各交易记录以及各交易记录对应的交易状态;交易表可以存储于数据库服务器中。可选的,交易记录包括交易时间、用户账号、交易码、金额信息、产品编码、账户编码、层级账户科目以及变更操作符等。100.换言之,该可选的实施方式,在一个记账接口调用请求中的记账调用参数验证通过后,可以先根据记账调用参数生成对应的交易记录,并存储于交易表中,并将交易状态标记为处理中,在需要更新的账户节点的账户数据更新完成后,将交易表中的交易状态标记为成功。101.在一种实施方式中,可以通过数据库服务器开启数据库事务,通过开启的数据库事务,根据记账调用参数生成一条作为交易记录,将交易记录写入到数据库服务器的交易表中,在交易表中记录交易状态为处理中;以及,在对多个账户节点的账户数据进行更新后,将交易表中的交易状态标记为成功。102.在另一种可选的实施方式中,还可以在应用服务器中部署记账订单处理层。由记账订单处理层执行根据记账调用参数生成一条交易记录,将交易记录写入到数据库服务器的交易表中,在交易表中记录交易状态为处理中;以及,在对多个账户节点的账户数据进行更新后,将交易表中的交易状态标记为成功的操作。103.在这些可选的实施方式中,根据记账调用参数生成交易纪录,将交易记录写入数据库服务器中的交易表,并对交易表中交易状态进行记录的好处在于:,在进行每一个记账调用参数的多账户节点的账户数据的更新处理时,可以通过生成对应的交易记录以及标记对应的交易状态,实现了交易过程中记账处理的监控,以便于对未完成记账的交易进行监管,进而避免出现交易成功但记账失败的情形。同时,通过生成各交易记录并进行存储,便于后续对各交易记录的查询。104.考虑到在对需要更新的账户节点的账户数据进行更新之后,可以生成相应的账户流水数据,以便于对账户节点的每次记账处理进行记录。可选的,应用服务器还用于:在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之后,根据对各账户数据的更新操作生成各账户节点的账户流水数据,将账户流水数据写入到数据库服务器的流水表中。105.其中,账户流水数据可以包括账户编码、本次交易金额、交易前金额、交易编码、账户流水id、操作版本、记账时间、外部账户别名等核心字段。可选的,账户流水数据还可以包括产品编码、用户账号和层级账户科目等。账户流水数据可以存储在数据库服务器的流水表中,在查询账户流水数据之前,可以对账户入参进行验证,如,验证账户是否存在、账户状态是否正常等;在验证通过后,对账户流水数据进行查询。106.在一种实施方式中,通过数据库服务器开启数据库事务,通过开启的数据库事务,根据对各账户数据的更新操作生成各账户节点的账户流水数据,将账户流水数据写入到数据库服务器的流水表中。107.在另一种实施方式中,可以在应用服务器中部署账户核心处理层,由账户核心处理层执行根据对各账户数据的更新操作生成各账户节点的账户流水数据,将账户流水数据写入到数据库服务器的流水表中的步骤。108.在这些可选的实施方式中,根据对各账户数据的更新操作生成各账户节点的账户流水数据,并将账户流水数据写入到数据库服务器的流水表中的好处在于:通过对账户节点的每次记账处理进行记录,便于后续对各账户流水数据的查询。109.本实施例还提供一种优选的应用服务器,应用服务器包括数据校验层、记账模型处理层、记账订单处理层以及账户核心处理层。示例性的,如图2所示,展示一种部署有数据校验层、记账模型处理层、记账订单处理层以及账户核心处理层的应用服务器的结构示意图。110.其中,数据校验层用于:根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证。111.记账模型处理层用于:在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,若账户层级结构中不存在记账调用参数中包括的任一需要更新的账户节点,则根据配置数据确定是否能够自动创建新账户,若是,则在账户层级结构中添加所述任一需要更新的账户节点。112.记账订单处理层:用于在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,根据记账调用参数生成一条作为交易记录,将交易记录写入到数据库服务器的交易表中,在交易表中记录交易状态为处理中;以及,在对多个账户节点的账户数据进行更新后,将交易表中的交易状态标记为成功。113.账户核心处理层用于:根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;以及,根据对各账户数据的更新操作生成各账户节点的账户流水数据,将账户流水数据写入到所述数据库服务器的流水表中。114.实施例三115.本实施例在上述各实施例的基础上,可选的,应用服务器还用于:在接收到来自业务方服务器的冲销请求时,根据冲销请求对历史执行的对账户数据的更新操作,进行回退操作。116.其中与上述各实施例相同或相应的术语的解释在此不再赘述。本实施例提供的数据处理系统包括:117.业务方服务器,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器发送携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;118.应用服务器,用于接收记账接口调用请求,从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据,根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;在接收到来自业务方服务器的冲销请求时,根据冲销请求对历史执行的对账户数据的更新操作,进行回退操作;119.数据库服务器,用于存储账户层级结构中各账户节点的账户数据。120.其中,冲销请求可以是业务方服务器发送的,用于对额抵消原记账的请求。可选的,冲销请求包括原记账请求号、冲销账请求号、记账金额和冲销原因等。其中,原记账请求号可以是需要进行对额抵消的原记账编号。需要说明的是,需要在保证原记账成功的前提下,才能根据冲销请求进行冲销请求对历史执行的对账户数据的更新操作进行回退操作,121.示例性的,根据冲销请求对历史执行的对账户数据的更新操作,进行回退操作,包括:确定历史执行的对账户数据的更新操作中更新的各账户节点,从确定出的各账户节点中的根账户节点开始,直至至叶子账户节点,逐步进行扣回记账处理。可选的,逐步进行扣回记账处理包括:对账户节点的层级账户科目取反向记账操作。需要说明的是,在对层级账户科目取反向记账操作时,可以对一些已预先配置了不为幅值的层级账户科目进行验证,若金额为负值,则需要返回该层级账户科目金额不足的错误提示。122.在一种实施方式中,在从确定出的各账户节点中的根账户节点开始,直至至叶子账户节点,逐步进行扣回记账处理的过程中,还可以生成相应的反向操作的账户流水数据。123.以图3为例,展示了一种业务方服务器与应用服务器进行冲销处理的交互过程示意图。具体的,业务方服务器根据交易冲销处理,整理冲销数据,生成冲销请求发送至应用服务器,应用服务器调用冲销服务,以根据冲销请求进行回退操作。124.本实施例的数据处理系统,应用服务器在接收到来自业务方服务器的冲销请求时,根据冲销请求对历史执行的对账户数据的更新操作,进行回退操作,以实现冲销处理由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的冲销操作,无需调用多个服务来分别冲销,从而提高了交易冲销的处理效率和资源利用率。125.实施例四126.本实施例在上述各实施例的基础上,可选的,应用服务器还用于:在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果。127.其中与上述各实施例相同或相应的术语的解释在此不再赘述。本实施例提供的数据处理系统包括:128.业务方服务器,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器发送携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;129.应用服务器,用于接收记账接口调用请求,从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据,根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果;130.数据库服务器,用于存储账户层级结构中各账户节点的账户数据。131.其中,余额查询请求可以是业务方服务器发送的,用于对账户节点的账户数据进行查询的请求。可选的,余额查询请求包括账户编号;相应的,根据余额查询请求确定需要查询的目标账户层级,包括:根据余额查询请求中的账户编号,确定需要查询的目标账户层级。需要说明的是,确定出的目标账户层级的数量可以是一个,也可以是多个,即可以一次查询一个或多个账户层级的账户节点的账户数据。在确定出需要查询的目标账户层级后,从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户数据。132.可选的,余额查询请求还可以包括层级账户科目;应用服务器在接收到余额查询请求时,根据账户编号以及层级账户科目,从数据库服务器查询账户层级结构中目标账户层级的账户节点的层级账户科目的账户数据。133.以图4为例,展示了一种业务方服务器与应用服务器进行余额查询处理的交互过程示意图。具体的,业务方服务器根据实际需要生成不同层级的账户的余额查询请求,并发送至应用服务器,应用服务器调用查询余额服务,以根据余额查询请求从数据库服务器中查询账户节点的账户数据,并返回查询结果至业务方服务器。134.本实施例的数据处理系统,应用服务器在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果,以实现余额查询由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的余额查询操作,无需调用多个服务来分别进行余额查询,从而提高了余额查询的处理效率和资源利用率。同时,可以灵活查询不同层级的账户余额。135.实施例五136.本实施例在上述各实施例的基础上,可选的,应用服务器还用于:在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果。137.其中与上述各实施例相同或相应的术语的解释在此不再赘述。本实施例提供的数据处理系统包括:138.业务方服务器,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器发送携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;139.应用服务器,用于接收记账接口调用请求,从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据,根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果;140.数据库服务器,用于存储账户层级结构中各账户节点的账户数据。141.其中,账户流水查询请求可以是业务方服务器发送的,用于查询庄户流水数据的请求。账户流水数据可以包括账户编码、本次交易金额、交易前金额、交易编码、账户流水id、操作版本、记账时间、外部账户别名等核心字段。可选的,账户流水数据还可以包括产品编码、用户账号和层级账户科目等。142.在另一种实施方式中,账户流水查询请求可以用于:查询某账户的账户流水数据,或者,查询根账户节点的账户流水数据等。143.具体的,账户流水查询请求可以包括账户编号;相应的,根据账户流水查询请求确定需要查询的目标账户层级,包括:根据账户流水查询请求中的账户编号,确定需要查询的目标账户层级。需要说明的是,确定出的目标账户层级的数量可以是一个,也可以是多个,即可以一次查询一个或多个账户层级的账户节点的账户流水数据。在确定出需要查询的目标账户层级后,从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据。144.在一种实施方式中,各账户节点的账户流水数据存储于数据库服务器的流水表中;相应的,从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,包括:从数据库服务器的流水表中查询账户层级结构中目标账户层级的账户节点的账户流水数据。145.可选的,在从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,包括:对账户流水查询请求中的参数进行验证,若验证通过,则从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据。其中,对账户流水查询请求中的参数进行验证可以包括如下至少一种:验证账户是否存在、账户状态是否正常。146.以图5为例,展示了一种业务方服务器与应用服务器进行账户流水查询处理的交互过程示意图。具体的,业务方服务器根据实际需要生成账户流水查询请求,并发送至应用服务器,应用服务器调用账户流水查询服务,以确定需要查询的目标账户层级,并从数据库服务器查询账户节点的账户流水数据,并返回查询结果至业务方服务器。147.本实施例的数据处理系统,应用服务器在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果,以实现账户流水查询请求由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的账户流水查询操作,无需调用多个服务来分别进行查询,从而提高了账户流水查询的处理效率和资源利用率。同时,可以灵活的查询不同层级的账户流水数据。148.可选的,数据处理系统还包括缓存服务器,用于缓存数据库服务器中的热点数据,热点数据是指预设时间段内被查询频次高于设定阈值的数据。149.如,图1d中所示的缓存服务器,可以用于缓存数据库服务器中的热点数据。其中,热点数据可以是账户节点的账户数据,也可以是账户流水数据等。在一种实施方式中,可以根据数据库服务器的访问量来配置是否启用缓存服务器。示例性的,业务方服务器多次向应用服务器发送账户流水查询请求时,可以通过启动缓存服务器,将账户流水数据缓存至缓存服务器中,以在缓存服务器中查询相应数据,进而提高查询效率。示例性的,缓存服务器可以是redis服务器。150.在一种实施方式中,在启动缓存服务器后,若应用服务器接收到的账户流水查询请求或余额查询请求为首次请求,则先从数据库服务器中进行查询,并将查询结果缓存至缓存服务器,同时,已缓存的数据发生变更时需要对缓存服务器中的缓存数据进行更新;在应用服务器接收到非首次的账户流水查询请求或余额查询请求时,可以从缓存服务器中查询相应的数据。151.在该可选的实施方式中,设置缓存服务器的目的在于:通过设置缓存服务器并在缓存服务器中缓存热点数据,减少了数据库服务器的访问量,从而提高了查询效率。152.实施例六153.本实施例在上述各实施例的基础上,可选的,应用服务器还用于:接收输入的账户层级结构的配置数据,将配置数据存储到数据库服务器中;其中,配置数据包括:归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据、记账单元配置数据、记账项目配置数据、汇总配置数据、交易配置数据、以及交易记账配置数据中的至少一项。154.其中与上述各实施例相同或相应的术语的解释在此不再赘述。本实施例提供的数据处理系统包括:155.业务方服务器,用于根据当前交易记录生成记账调用参数,向当前业务方对应的应用服务器发送携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;156.应用服务器,用于接收输入的账户层级结构的配置数据,将配置数据存储到数据库服务器中;其中,配置数据包括:归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据、记账单元配置数据、记账项目配置数据、汇总配置数据、交易配置数据、以及交易记账配置数据中的至少一项;接收记账接口调用请求,从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据,根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;157.数据库服务器,用于存储账户层级结构中各账户节点的账户数据。158.其中,归属方配置可以是对业务方进行配置,如甲业务、丙业务、乙业务等。账套配置可以是对账务的资产类型进行配置,如,资金账、份额账、红包、积分等。业务科目配置可以是对业务科目进行配置,如,总金额、可用金额、冻结金额等。节点配置可以是对各账户节点进行配置,如个人账、产品账等。模型配置可以是对各账户节点之间的树状层级关系进行配置,如图1b-1c所示。159.记账单元配置可以是对参与记账的最小单位进行配置,记账单元可以是参与记账的最小记账单位,由账户节点和业务科目组成。如图6a所示,展示了一种记账单元配置和记账项目配置示意图,记账单元可以是个人账-资产金额,或,个人账-可用金额。记账项目配置可以是对直接参与记账的项目进行配置,需要说明的是,记账项目需为叶子账户节点。例如图6a,在甲业务中产品账账户节点为叶子账户节点,则记账项目为产品账-资产金额,或,产品账-可用金额。160.汇总配置可以是对各账户节点的账户数据的汇总策略进行配置。如图6b所示,展示了一种汇总配置示意图,由于直接参与记账的为叶子账户节点(三级账户节点),因此,二级账户节点和根账户节点可以通过汇总策略进行自动汇总处理。示例性的,汇总策略可以是异步记账方式,如图6c所示,展示了一种汇总配置样例示意图,对于一些业务账户层级比较多,且向上汇总的层数比较多的场景,可以进行异步记账方式配置,减少同步汇总处理时长的问题。161.交易配置可以是对交易类型进行配置;如,转入金额、转出金额、冻结金额等。交易记账配置可以是对各交易类型对应的需要操作的记账项目的变更操作符和/或金额限制信息进行配置,如,加、减、大于零、小于零、固定任意值等。162.在一种实施方式中,归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据以及记账单元配置数据可以组成账务基本配置数据,如图6d所示,展示了一种账务基本配置示意图。示例性的,图6e展示了一种账务基本配置样例示意图,以甲业务为例,科目包括总金额、可用金额、冻结金额和累计收益,账户层级为2;1层对应的模型为1个,即,甲业务+总金额,或,可用金额、冻结金额和累计收益;2层对应的模型包括2个,其中,模型1可以是甲业务+产品+总金额,或,可用金额、冻结金额和累计收益,模型2可以是甲业务+冻结池+产品+总金额,或,可用金额、冻结金额和累计收益。163.在一种实施方式中,配置数据还包括交易码配置。可选的,记账项目配置数据、汇总配置数据、交易记账配置数据、以及交易码配置数据可以组成交易基本配置数据,如图6f所示,展示了一种交易基本配置示意图。示例性的,图 6g展示了一种账务基本配置样例示意图,以甲业务为例,记账项目为只允许交易操作的树形结构的最底层子节点,即,产品账总金额等;汇总配置包括允许交易操作的子节点以及自动汇总的父节点;若交易码配置为转入,则交易记账配置包括转入、产品可用金额+、产品总金额+。164.在一种优选的实施方式中,配置数据包括归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据、记账单元配置数据、记账项目配置数据、汇总配置数据、交易配置数据以及交易记账配置数据。如图6h 所示,展示了一种配置数据。165.可选的,配置数据可以是应用服务器的运营人员根据业务方需求所配置的数据。示例性的,如图6i所示,展示了一种数据处理系统的接入过程示意图。具体的,业务方根据产品需求整理出需要记账的科目、账户层级、对应的交易场景等,发送给应用服务器的运营人员,以使应用服务器的运营人员进行相应的配置(生成配置数据),并根据业务方提供的测试样例进行线上验证,将验证结果以及配置数据反馈给业务方,业务方后续可以调用开户、记账、冲销、查询等接口联调并上线。其中,开户流程可参见图6j,图6j展示了一种开户流程示意图。166.本实施例的数据处理系统,应用服务器还用于接收输入的账户层级结构的配置数据,将配置数据存储到所述数据库服务器中;其中,配置数据包括:归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据、记账单元配置数据、记账项目配置数据、汇总配置数据、交易配置数据、以及交易记账配置数据中的至少一项,实现了账户层级、记账科目、账户节点等灵活配置,便于业务快速扩展。167.实施例七168.图7为本发明实施例七提供的一种数据处理方法的流程示意图,本实施例可适用于对当前交易记录进行记账处理的情况,尤其适用于业务方服务器通过向独立部署的应用服务器发送记账接口调用请求,以使应用服务器对当前交易记录进行记账处理的情况,该方法可以由应用服务器执行。如图7所示,该方法具体包括如下步骤:169.s710、接收业务方服务器发送的携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数是业务方服务器根据当前交易记录生成的,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息。170.s720、从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据。171.s730、根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对所述数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;其中,数据库服务器用于存储所述账户层级结构中各账户节点的账户数据。172.可选的,根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新,包括:若根据记账调用参数中的交易码确定采用同步记账方式,则按照从根账户节点到叶子账户节点的顺序,对账户层级结构中各层级的账户节点进行遍历;对于遍历到的需要更新的账户节点,根据账户节点的账户编码确定用于记录账户节点的账户数据的数据表,根据账户节点的更新方式信息将数据表中记录的账户节点的账户数据进行更新;在更新完成后向业务方服务器发送记账完成通知消息。173.可选的,根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新,包括:若根据记账调用参数中的交易码确定采用异步记账方式,则根据记账调用参数确定账户层级结构中需要更新的叶子账户节点,根据叶子账户节点的账户编码确定用于记录叶子账户节点的账户数据的数据表,根据叶子账户节点的更新方式信息将数据表中记录的叶子账户节点的账户数据进行更新,在更新完成后向业务方服务器发送记账完成通知消息;开启异步记账线程,通过异步记账线程将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。174.可选的,通过异步记账线程将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新,包括:创建异步记账任务,并将异步记账任务的任务信息发送至预设消息队列mq中;通过开启的异步记账线程从 mq中读取任务信息,根据任务信息执行异步记账任务,以将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。175.可选的,根据配置数据对记账调用参数进行验证,包括:根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证。176.可选的,在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,还包括:若账户层级结构中不存在记账调用参数中包括的任一需要更新的账户节点,则根据配置数据确定是否能够自动创建新账户,若是,则在账户层级结构中添加任一需要更新的账户节点。177.可选的,在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之前,还包括:根据记账调用参数生成一条作为交易记录,将交易记录写入到数据库服务器的交易表中,在交易表中记录交易状态为处理中;以及,在对多个账户节点的账户数据进行更新后,将交易表中的交易状态标记为成功。178.可选的,在根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新之后,还包括:根据对各账户数据的更新操作生成各账户节点的账户流水数据,将账户流水数据写入到数据库服务器的流水表中。179.可选的,所述方法还包括:在接收到来自业务方服务器的冲销请求时,根据冲销请求对历史执行的对账户数据的更新操作,进行回退操作。180.可选的,所述方法还包括:在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果。181.可选的,所述方法还包括:在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果。182.可选的,所述方法还包括:在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从缓存服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果;其中,缓存服务器用于缓存数据库服务器中的热点数据,热点数据是指预设时间段内被查询频次高于设定阈值的数据,热点数据包括各账户节点的账户数据。183.可选的,所述方法还包括:在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从缓存服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果;其中,缓存服务器用于缓存数据库服务器中的热点数据,热点数据是指预设时间段内被查询频次高于设定阈值的数据,热点数据包括账户节点的账户流水数据。184.可选的,所述方法还包括:接收输入的账户层级结构的配置数据,将配置数据存储到所述数据库服务器中;其中,配置数据包括:归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据、记账单元配置数据、记账项目配置数据、汇总配置数据、交易配置数据、以及交易记账配置数据中的至少一项。185.本实施例的技术方案,在接收到记账接口调用请求时,应用服务器从数据库集群中确定业务方标识对应的数据库服务器,以从数据库服务器读取业务方标识对应的账户层级结构的配置数据,并进行验证处理以及对多个账务节点的账户数据的更新处理,从而实现了记账操作由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的记账操作,无需调用多个服务来分别记账,从而提高了交易记账的处理效率和资源利用率。186.实施例八187.图8为本发明实施例八提供的一种数据处理装置的结构示意图,本实施例可适用于对当前交易记录进行记账处理的情况,尤其适用于业务方服务器通过向独立部署的应用服务器发送记账接口调用请求,以使应用服务器对当前交易记录进行记账处理的情况,该装置具体包括:请求接收模块810、配置读取模块820和数据更新模块830。188.请求接收模块810,用于接收业务方服务器发送的携带业务方标识和记账调用参数的记账接口调用请求;其中,记账调用参数是业务方服务器根据当前交易记录生成的,记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;189.配置读取模块820,用于从数据库集群中确定业务方标识对应的数据库服务器,从数据库服务器读取业务方标识对应的账户层级结构的配置数据;190.数据更新模块830,用于根据配置数据对记账调用参数进行验证,并在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新;其中,数据库服务器用于存储账户层级结构中各账户节点的账户数据。191.可选的,数据更新模块830包括验证单元和更新单元,其中,验证单元用于根据配置数据对记账调用参数进行验证,更新单元用于在验证通过后根据记账调用参数对数据库服务器中存储的账户层级结构中的多个账户节点的账户数据进行更新。192.可选的,更新单元包括同步更新子单元,其中,同步更新子单元用于若根据记账调用参数中的交易码确定采用同步记账方式,则按照从根账户节点到叶子账户节点的顺序,对账户层级结构中各层级的账户节点进行遍历;对于遍历到的需要更新的账户节点,根据账户节点的账户编码确定用于记录账户节点的账户数据的数据表,根据账户节点的更新方式信息将数据表中记录的账户节点的账户数据进行更新;在更新完成后向业务方服务器发送记账完成通知消息。193.可选的,更新单元包括异步更新子单元,其中,异步更新子单元用于若根据记账调用参数中的交易码确定采用异步记账方式,则根据记账调用参数确定账户层级结构中需要更新的叶子账户节点,根据叶子账户节点的账户编码确定用于记录叶子账户节点的账户数据的数据表,根据叶子账户节点的更新方式信息将数据表中记录的叶子账户节点的账户数据进行更新,在更新完成后向业务方服务器发送记账完成通知消息;开启异步记账线程,通过异步记账线程将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。194.可选的,异步更新子单元具体用于创建异步记账任务,并将异步记账任务的任务信息发送至预设消息队列mq中;通过开启的异步记账线程从mq中读取任务信息,根据任务信息执行异步记账任务,以将账户层级结构中需要更新的除叶子账户节点外的其他账户节点的账户数据进行更新。195.可选的,验证单元具体用于根据配置数据,对记账调用参数中的账户层级是否匹配、需要更新的账户节点是否存在、以及记账调用参数中账户节点的更新方式信息是否符合规则中的至少一项进行验证。196.可选的,数据更新模块830还包括节点添加单元,用于若账户层级结构中不存在记账调用参数中包括的任一需要更新的账户节点,则根据配置数据确定是否能够自动创建新账户,若是,则在账户层级结构中添加任一需要更新的账户节点。197.可选的,数据更新模块830还包括交易记录生成单元,用于根据记账调用参数生成一条作为交易记录,将交易记录写入到数据库服务器的交易表中,在交易表中记录交易状态为处理中;以及,在对多个账户节点的账户数据进行更新后,将交易表中的交易状态标记为成功。198.可选的,数据更新模块830还包括流水生成单元,用于根据对各账户数据的更新操作生成各账户节点的账户流水数据,将账户流水数据写入到数据库服务器的流水表中。199.可选的,数据处理装置还包括数据冲销模块,用于在接收到来自业务方服务器的冲销请求时,根据冲销请求对历史执行的对账户数据的更新操作,进行回退操作。200.可选的,数据处理装置还包括余额查询模块,用于在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果。201.可选的,数据处理装置还包括流水查询模块,用于在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从数据库服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果。202.可选的,余额查询模块还包括缓存数据库查询单元,用于在接收到来自业务方服务器的余额查询请求时,根据余额查询请求确定需要查询的目标账户层级;从缓存服务器查询账户层级结构中目标账户层级的账户节点的账户数据,并向业务方服务器返回查询结果;其中,缓存服务器用于缓存数据库服务器中的热点数据,热点数据是指预设时间段内被查询频次高于设定阈值的数据,热点数据包括各账户节点的账户数据。203.可选的,流水查询模块还包括缓存数据库查询单元,用于在在接收到来自业务方服务器的账户流水查询请求时,根据账户流水查询请求确定需要查询的目标账户层级;从缓存服务器查询账户层级结构中目标账户层级的账户节点的账户流水数据,并向业务方服务器返回查询结果;其中,缓存服务器用于缓存数据库服务器中的热点数据,热点数据是指预设时间段内被查询频次高于设定阈值的数据,热点数据包括账户节点的账户流水数据。204.可选的,数据处理装置还包括配置接收模块,用于接收输入的账户层级结构的配置数据,将配置数据存储到所述数据库服务器中;其中,配置数据包括:归属方配置数据、账套配置数据、业务科目配置数据、节点配置数据、模型配置数据、记账单元配置数据、记账项目配置数据、汇总配置数据、交易配置数据、以及交易记账配置数据中的至少一项。205.在本实施例中,通过业务方服务器向当前业务方对应的应用服务器发送记账接口调用请求,使得应用服务器在接收到记账接口调用请求时,从数据库集群中确定业务方标识对应的数据库服务器,以从数据库服务器读取业务方标识对应的账户层级结构的配置数据,并进行验证处理以及对多个账务节点的账户数据的更新处理,从而实现了记账操作由独立部署的应用服务器来执行,与业务方服务器完全解耦,进而缓解了业务方服务器的压力。并且,业务方服务器通过一次接口调用,即可完成各个层级节点的记账操作,无需调用多个服务来分别记账,从而提高了交易记账的处理效率和资源利用率。本发明实施例所提供的数据处理装置可执行本发明任意实施例所提供的数据处理方法,具备执行方法相应的功能模块和有益效果。206.值得注意的是,上述系统所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。207.实施例九208.图9是本发明实施例九提供的一种电子设备的结构示意图。图9示出了适于用来实现本发明实施方式的示例性电子设备12的框图。图9显示的电子设备 12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。设备12典型的是承担记账处理功能的电子设备。209.如图9所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,存储器28,连接不同组件(包括存储器28和处理单元16)的总线18。210.总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构 (industry standard architecture,isa)总线,微通道体系结构(micro channelarchitecture,mca)总线,增强型isa总线、视频电子标准协会(video electronicsstandards association,vesa)局域总线以及外围组件互连(peripheral componentinterconnect,pci)总线。211.电子设备12典型地包括多种计算机可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。212.存储器28可以包括易失性存储器形式的计算机装置可读介质,例如随机存取存储器(random access memory,ram)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机存储介质。仅作为举例,存储装置34可以用于读写不可移动的、非易失性磁介质(图 9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘(compact disc-read only memory,cd-rom)、数字视盘(digital video disc-read only memory,dvd-rom)或者其它光介质) 读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品40,该程序产品 40具有一组程序模块42,这些程序模块被配置以执行本发明各实施例的功能。程序产品40,可以存储在例如存储器28中,这样的程序模块42包括但不限于一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。213.电子设备12也可以与一个或多个外部设备14(例如键盘、鼠标、摄像头等和显示器)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o) 接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(local area network,lan),广域网wide area network, wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(redundant arrays of independent disks,raid)装置、磁带驱动器以及数据备份存储装置等。214.处理器16通过运行存储在存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明上述实施例所提供的数据处理方法,包括:215.接收业务方服务器发送的携带业务方标识和记账调用参数的记账接口调用请求;其中,所述记账调用参数是所述业务方服务器根据当前交易记录生成的,所述记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;216.从数据库集群中确定所述业务方标识对应的数据库服务器,从所述数据库服务器读取所述业务方标识对应的账户层级结构的配置数据;217.根据所述配置数据对所述记账调用参数进行验证,并在验证通过后根据所述记账调用参数对所述数据库服务器中存储的所述账户层级结构中的多个账户节点的账户数据进行更新;其中,所述数据库服务器用于存储所述账户层级结构中各账户节点的账户数据。218.当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的数据处理方法的技术方案。219.实施例十220.本发明实施例十还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的数据处理方法步骤,该方法包括:221.接收业务方服务器发送的携带业务方标识和记账调用参数的记账接口调用请求;其中,所述记账调用参数是所述业务方服务器根据当前交易记录生成的,所述记账调用参数包括需要更新的各账户节点对应的标识信息以及更新方式信息;222.从数据库集群中确定所述业务方标识对应的数据库服务器,从所述数据库服务器读取所述业务方标识对应的账户层级结构的配置数据;223.根据所述配置数据对所述记账调用参数进行验证,并在验证通过后根据所述记账调用参数对所述数据库服务器中存储的所述账户层级结构中的多个账户节点的账户数据进行更新;其中,所述数据库服务器用于存储所述账户层级结构中各账户节点的账户数据。224.本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。225.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。226.计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。227.可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如 java、smalltalk、c++,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。228.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部