Data processing systems, methods, apparatus, electronic devices and storage media

By introducing a separate application server for accounting processing into the business system, the system pressure problem caused by the coupling of transaction and accounting processing was solved, achieving efficient accounting operations and resource utilization, and improving the system's processing efficiency.

CN114996281BActive Publication Date: 2026-05-26JINGDONG TECH HLDG CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
JINGDONG TECH HLDG CO LTD
Filing Date
2021-03-02
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

In existing technologies, transaction processing and accounting processing are coupled in the business system, resulting in high system pressure, low processing efficiency, and the need to perform accounting for multiple accounting dimensions separately, leading to low resource utilization.

Method used

The accounting call parameters are generated by the business server and an interface call request is sent to the independently deployed application server. The application server determines the database server from the database cluster, reads the configuration data, and verifies and updates the account data. This decouples the accounting operation, reduces the pressure on the business server, and completes the accounting of multiple account nodes with a single interface call.

Benefits of technology

It alleviated the pressure on the business system, improved the processing efficiency and resource utilization of transaction accounting, and ensured the independence and efficiency of accounting operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114996281B_ABST
    Figure CN114996281B_ABST
Patent Text Reader

Abstract

This invention discloses a data processing system, method, apparatus, electronic device, and storage medium. The system includes a business server, an application server, and a database server. The business server sends an accounting interface call request to the application server corresponding to the current business. Upon receiving the accounting interface call request, the application server determines the corresponding database server from the database cluster, reads the corresponding configuration data from the database server, performs verification processing, and updates the account data for multiple accounting nodes. This allows the accounting operation to be performed by an independently deployed application server, completely decoupled from the business server, thereby alleviating the pressure on the business server. Furthermore, the business server can complete the accounting operations for each level of nodes with a single interface call, eliminating the need to call multiple services for separate accounting, thus improving the processing efficiency and resource utilization of transaction accounting.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a data processing system, method, apparatus, electronic device and storage medium. Background Technology

[0002] With the continuous development of Internet technology, users can perform transactions such as subscribing to financial products through APPs installed on smart terminals. Based on these transactions, the business system needs to process the transactions and perform accounting. When performing accounting, it is necessary to record the transactions for multiple accounting dimensions. For example, if a user subscribes to multiple fund products on the APP, the backend needs to record the transactions for the user dimension and also for the product dimension of each fund product.

[0003] In the process of realizing this invention, at least the following problems were found in the prior art:

[0004] In the above solution, both transaction processing and accounting processing are coupled and executed in the business system, which puts a lot of pressure on the business system and causes a decrease in the processing efficiency of the business system. In addition, accounting needs to be performed separately for multiple accounting dimensions, and the accounts of different dimensions are scattered in different accounting systems. Multiple accounting services need to be called for accounting, resulting in low processing efficiency and low resource utilization. Summary of the Invention

[0005] This invention provides a data processing system, method, apparatus, electronic device, and storage medium to alleviate the pressure on business systems and improve accounting processing efficiency and resource utilization.

[0006] In a first aspect, embodiments of the present invention provide a data processing system, the system comprising:

[0007] The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and the accounting call parameters to the application server corresponding to the current business; wherein, the accounting call parameters include the identifier information and update method information corresponding to each account node that needs to be updated;

[0008] An application server is configured to receive the accounting interface call request, determine the database server corresponding to the business party identifier from the database cluster, read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, verify the accounting call parameters according to the configuration data, and update the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after the verification is successful.

[0009] A database server is used to store account data for each account node in the account hierarchy.

[0010] Secondly, embodiments of the present invention also provide a data processing method, the method comprising:

[0011] Receive an accounting interface call request sent by the business party server, which carries the business party identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business party server based on the current transaction records, and the accounting call parameters include the identifier information and update method information corresponding to each account node that needs to be updated;

[0012] Determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server;

[0013] The accounting call parameters are verified according to the configuration data, and after successful verification, the account data of multiple account nodes in the account hierarchy stored in the database server are updated according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy.

[0014] Thirdly, the present invention also provides a data processing apparatus, which includes:

[0015] The request receiving module is used to receive an accounting interface call request sent by the business party server, which carries the business party identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business party server based on the current transaction records, and the accounting call parameters include the identifier information corresponding to each account node that needs to be updated and the update method information;

[0016] The configuration reading module is used to determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server;

[0017] The data update module is used to verify the accounting call parameters according to the configuration data, and after the verification is successful, to update the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy.

[0018] Fourthly, embodiments of the present invention also provide an electronic device, the electronic device comprising:

[0019] One or more processors;

[0020] Storage device for storing one or more programs.

[0021] When the one or more programs are executed by the one or more processors, the one or more processors implement the data processing method provided in any embodiment of the present invention.

[0022] Fifthly, embodiments of the present invention also provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the data processing method provided in any embodiment of the present invention.

[0023] The embodiments of the above invention have the following advantages or beneficial effects:

[0024] The data processing system of this invention includes a business server, an application server, and a database server. The business server sends an accounting interface call request to the application server corresponding to the current business. Upon receiving the accounting interface call request, the application server determines the database server corresponding to the business identifier from the database cluster. It then reads the configuration data of the account hierarchy corresponding to the business identifier from the database server, performs verification processing, and updates the account data for multiple accounting nodes. This allows the accounting operation to be executed by an independently deployed application server, completely decoupled from the business server, thereby alleviating the pressure on the business server. Furthermore, the business server can complete the accounting operations for each level node with a single interface call, eliminating the need to call multiple services for separate accounting, thus improving the processing efficiency and resource utilization of transaction accounting. Attached Figure Description

[0025] To more clearly illustrate the technical solutions of exemplary embodiments of the present invention, the accompanying drawings used in describing the embodiments are briefly introduced below. Obviously, the accompanying drawings described are only a portion of the drawings of the embodiments to be described in this invention, and not all of the drawings. For those skilled in the art, other drawings can be obtained from these drawings without any creative effort.

[0026] Figure 1A This is a schematic diagram of the structure of a data processing system provided in Embodiment 1 of the present invention;

[0027] Figure 1B This is a schematic diagram of an account hierarchy structure provided in Embodiment 1 of the present invention;

[0028] Figure 1C This is a schematic diagram of another account hierarchy structure provided in Embodiment 1 of the present invention;

[0029] Figure 1D This is a schematic diagram of the structure of a data processing system provided in Embodiment 1 of the present invention;

[0030] Figure 1E This is a hierarchical account subject provided in Embodiment 1 of the present invention;

[0031] Figure 1F This is a schematic diagram of an interactive accounting process provided in Embodiment 1 of the present invention;

[0032] Figure 2 This is a schematic diagram of the structure of an application server provided in Embodiment 2 of the present invention;

[0033] Figure 3 This is a schematic diagram of the interactive process of a cancellation process provided in Embodiment 3 of the present invention;

[0034] Figure 4 This is a schematic diagram of the interactive process of balance query processing provided in Embodiment 4 of the present invention;

[0035] Figure 5 This is a schematic diagram of the interactive process of account transaction query processing provided in Embodiment 5 of the present invention;

[0036] Figure 6A This is a schematic diagram of an accounting unit configuration and accounting item configuration provided in Embodiment Six of the present invention;

[0037] Figure 6B This is a schematic diagram of a summary configuration provided in Embodiment Six of the present invention;

[0038] Figure 6C This is a schematic diagram of a summary configuration example provided in Embodiment Six of the present invention;

[0039] Figure 6D This is a schematic diagram of a basic accounting configuration provided in Embodiment Six of the present invention;

[0040] Figure 6E This is a schematic diagram of a basic accounting configuration example provided in Embodiment Six of the present invention;

[0041] Figure 6F This is a schematic diagram of a basic transaction configuration provided in Embodiment Six of the present invention;

[0042] Figure 6G This is a schematic diagram of a basic accounting configuration example provided in Embodiment Six of the present invention;

[0043] Figure 6H This is a schematic diagram of configuration data provided in Embodiment Six of the present invention;

[0044] Figure 6I This is a schematic diagram of the access process of a data processing system provided in Embodiment Six of the present invention;

[0045] Figure 6JThis is a schematic diagram of an account opening process provided in Embodiment Six of the present invention;

[0046] Figure 7 This is a flowchart illustrating a data processing method provided in Embodiment 7 of the present invention;

[0047] Figure 8 This is a schematic diagram of the structure of a data processing device provided in Embodiment 8 of the present invention;

[0048] Figure 9 This is a schematic diagram of the structure of an electronic device provided in Embodiment 9 of the present invention. Detailed Implementation

[0049] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present invention, and not all of the structures.

[0050] Example 1

[0051] Figure 1A This is a schematic diagram of a data processing system provided in Embodiment 1 of the present invention. This embodiment is applicable to situations where current transaction records are processed for accounting purposes, and is particularly suitable for situations where the business server sends an accounting interface call request to an independently deployed application server, so that the application server can process the current transaction records for accounting purposes. This system can be implemented by hardware and / or software. Figure 1A As shown, the system specifically includes:

[0052] The business server 110 is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server 120 corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated.

[0053] Application server 120 is used to receive accounting interface call requests, determine the database server 130 corresponding to the business party identifier from the database cluster, read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server 130, verify the accounting call parameters according to the configuration data, and update the account data of multiple account nodes in the account hierarchy structure stored in the database server 130 according to the accounting call parameters after the verification is successful.

[0054] Database server 130 is used to store account data for each account node in the account hierarchy.

[0055] Different business units can have their corresponding business unit servers 110; for example, business unit A corresponds to business unit server A, business unit D corresponds to business unit server B, and business unit C corresponds to business unit server C. Business unit server 110 can receive transaction processing requests sent by clients, process transactions according to the requests, and generate the current transaction record. For example, the client can be an application within JD Technology, such as JD Finance, or a WeChat mini-program; this application does not limit this, and the client can be any program that provides transaction services to users.

[0056] In this embodiment, the current business party can be the business party corresponding to the current transaction record, and the business party identifier can be the identification information of the current business party. The business party server 110 is also used to determine the application server 120 corresponding to the current business party. Specifically, the business party server 110 can determine the application server 120 corresponding to the current business party from the application server cluster based on the business party identifier of the current business party. For example, the business party identifier of business A is "account_xjk". In one implementation, the business party server 110 can determine the application server 120 corresponding to the current business party from the application server cluster based on the business party identifier of the current business party, including: the business party server 110 generates a corresponding hash value based on the business party identifier of the current business party, and determines the application server 120 corresponding to the current business party based on a pre-established correspondence between the hash value and each application server identifier.

[0057] The advantage of deploying an application server cluster in this embodiment, so that the business server 110 can determine the application server corresponding to the current business from the application server cluster, is that in scenarios where the business server receives a large number of current transaction records, multiple application servers can perform accounting processing on each current transaction record separately, thereby improving accounting processing efficiency and ensuring the real-time nature of accounting processing.

[0058] The business server 110 is also used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server 120 corresponding to the current business. The accounting call parameters include, but are not limited to, the identifier information and update method information corresponding to each account node that needs to be updated. It should be noted that the account node can be a node determined according to the hierarchy of each account. For example... Figure 1B The diagram illustrates an account hierarchy structure, which includes three levels. Third-level accounts are sub-accounts of second-level accounts, and second-level accounts are sub-accounts of the root node account. The account nodes include the root account node, each second-level account node, and each third-level account node.

[0059] Understandably, the hierarchical structure of each account can be determined based on the account's business type. Taking business type A as an example... Figure 1C As shown, a diagram illustrating an account hierarchy is presented. Business A can be divided into two types of accounts: personal accounts and product accounts. Product accounts are sub-accounts of personal accounts. Thus, personal accounts and product accounts belong to different levels. Account nodes include personal account node, product account 1 node, and product account 2 node.

[0060] In this embodiment, the accounting call parameters are generated from the identification information and update method information corresponding to each account node that needs to be updated. The identification information corresponding to the account node that needs to be updated can be the identification information of the account node. Optionally, the identification information includes hierarchical account information, which includes account codes; wherein the account code can be the hierarchical code of the account node.

[0061] The update method information may include the changed amount information for each account node that needs to be updated, as well as the change operator. The change operator includes addition (+) and subtraction (-); that is, the addition change operator indicates that the changed amount is increased based on the original amount of the account node, and the subtraction change operator indicates that the changed amount is decreased based on the original amount of the account node. In one embodiment, the update method information also includes amount restriction information, which may be a restriction on the changed amount, including but not limited to the changed amount being greater than a preset value, the changed amount being less than a preset value, or the changed amount being fixed at a preset value. For example, the changed amount may be greater than zero, or the changed amount may be less than 10,000 yuan, or the changed amount may be fixed at 1,000 yuan.

[0062] In one implementation, the accounting call parameters include not only the identification information and update method information corresponding to each account node that needs to be updated, but also user account information, transaction code, amount information, and product code. The product code can be the code of the product associated with the current transaction record.

[0063] After the business server 110 sends an accounting interface call request carrying the business identifier and accounting call parameters to the application server 120, the application server 120 receives the accounting interface call request and determines the database server 130 corresponding to the business identifier from the database cluster. In one embodiment, the application server 120 can determine the database server 130 corresponding to the business identifier from the database cluster based on the Dynamic DataSource and Completed Database Splitter (CDS) modules. Alternatively, it can determine the cache server based on the R2M Client; wherein the cache server is used to cache hot data in the database server, and hot data refers to data whose query frequency is higher than a set threshold within a preset time period. For example, Figure 1DAs shown, taking Service Server A and Service Server B as examples, a schematic diagram of a data processing system is illustrated. Figure 1D In this process, each business server determines its corresponding application server within its respective application server cluster. The determined application server can be the database server within the database cluster based on the Dynamic DataSource and CDS modules; or, the cache server can be determined based on the R2M Client. The CDS module is deployed on the application server; the CDS module can be middleware used for database sharding and partitioning. Each application server can also provide standard call (JavaServer Faces, JSF) services.

[0064] In this embodiment, each database server may also store configuration data for the account hierarchy structure corresponding to each business entity identifier. After determining the database server 130 corresponding to the business entity identifier from the database cluster, the application server 120 reads the configuration data for the account hierarchy structure corresponding to the current business entity identifier from the database server 130. The account hierarchy structure can be a hierarchical structure of each account node; the configuration data for the account hierarchy interface may include the configuration information of each account node.

[0065] Specifically, after reading the configuration data of the account hierarchy structure corresponding to the business identifier from the database server 130, the application server 120 verifies the accounting call parameters based on the configuration data, such as verifying the hierarchical account code in the accounting call parameters. If the verification of the accounting call parameters passes, the account data of multiple account nodes in the account hierarchy structure stored in the database server is updated according to the accounting call parameters; the account data may include the amount information and transaction information of each account node. That is, when the verification of the accounting call parameters passes, the accounting processing of multiple account nodes that need to be updated can be completed according to the accounting call parameters.

[0066] For example, the accounting call parameters include the identification information corresponding to the product account 1 account node, the identification information corresponding to the personal account node, the change amount of 1 yuan, and the change operator as "add". The account data of the product account 1 account node stored in the database server includes an amount of 200 yuan, and the account data of the personal account node includes an amount of 500 yuan. Then, the updated account data of the product account 1 account node includes an amount of 201 yuan, and the updated account data of the personal account node includes an amount of 501 yuan.

[0067] Optionally, the hierarchical account information in the identification information may also include hierarchical account subjects; wherein, the hierarchical account subjects may be the business subjects of the account nodes. For example... Figure 1EAs shown, a hierarchical account category is illustrated. For example, a hierarchical account category can be total amount, available amount, frozen amount, etc.

[0068] Taking business A as an example, the hierarchical account categories include at least one of total amount, available amount, frozen amount, and accumulated revenue. Correspondingly, the account data of multiple account nodes in the account hierarchy stored in the database server can be updated according to the accounting call parameters. This can also involve updating the account data of the hierarchical account categories for each account node. For example, if the accounting call parameters include the available balance of product account 1, the available balance of the corresponding personal account node, a change amount of 2 yuan, and the change operator being "increase," and the account data stored in the database server for the available balance of product account 1 includes 100 yuan, and the account data for the available balance of the personal account node includes 300 yuan, then the updated account data for the available balance of product account 1 includes 102 yuan, and the updated account data for the available balance of the personal account node includes 302 yuan.

[0069] In one implementation, updating account data for multiple account nodes in the account hierarchy stored in the database server according to accounting call parameters includes: initiating a database transaction on the database server 130, and updating the account data for multiple account nodes in the account hierarchy using the initiated database transaction and the accounting call parameters. In another implementation, an account core processing layer can be deployed in the application server, and this layer performs the operation of updating the account data for multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters.

[0070] Considering that some accounts have simple hierarchical structures while others have complex ones, different accounting methods can be adopted for accounts with varying degrees of complexity. For example, complex hierarchical structures can use asynchronous accounting to reduce the processing time of synchronous accounting, thereby improving accounting efficiency and ensuring real-time accounting; simple hierarchical structures can use synchronous accounting to ensure the synchronization of accounting across all account nodes. Therefore, optionally, the account data of multiple account nodes in the account hierarchy stored in the database server 130 is updated according to the accounting call parameters, including: if the synchronous accounting method is determined according to the transaction code in the accounting call parameters, the account nodes at each level in the account hierarchy are traversed in the order from the root account node to the leaf account node; for the account nodes that need to be updated, the data table used to record the account data of the account node is determined according to the account code of the account node, and the account data of the account node recorded in the data table is updated according to the update method information of the account node; after the update is completed, an accounting completion notification message is sent to the business server 110.

[0071] In this optional implementation, the accounting call parameters include a transaction code; wherein the transaction code is generated based on the transaction type of the current transaction record and the accounting method of each account node. For example, the transaction type can be an inflow amount, an outflow amount, a frozen amount, etc.; the accounting method includes synchronous accounting and asynchronous accounting. Optionally, the accounting method of each account node can be determined based on the number of levels in the account hierarchy. For example, if the number of levels in the account hierarchy does not exceed a set level threshold, then each account node in the account hierarchy is determined to use synchronous accounting; or, if the number of account nodes corresponding to the account hierarchy does not exceed a set number threshold, then each account node in the account hierarchy is determined to use synchronous accounting. The set level threshold and the set number threshold can be determined according to the actual business requirements for real-time calls, and this application does not limit this. In one implementation, the accounting method of each account node with a transaction type of outflow amount can also be configured as synchronous accounting to ensure the synchronous update of account data for each account node.

[0072] It should be noted that the account nodes in the account hierarchy form a tree-like hierarchical relationship, such as... Figure 1BAs shown. Leaf account nodes are child accounts of the root account node. The account code of the account node that needs to be updated during traversal can be determined based on the accounting call parameters. Specifically, the data table corresponding to the account node that needs to be updated during traversal can be determined based on the pre-stored account codes of each account node and the correspondence between the data tables that record the account data of each account node; where each data table is stored in the database server and stores the account data of the account node. After determining the data table of the account node that needs to be updated during traversal, the account data in the data table is updated based on the update method information of the account node.

[0073] This optional implementation describes one accounting process under the synchronous accounting method. The advantage of using the synchronous accounting method to complete the accounting process is that, for each account node with a relatively simple account hierarchy structure, the synchronous accounting method can ensure the synchronization of accounting for each account node.

[0074] Optionally, the account data of multiple account nodes in the account hierarchy stored in the database server 130 is updated according to the accounting call parameters. This includes: if the transaction code in the accounting call parameters determines that an asynchronous accounting method is used, then the leaf account nodes in the account hierarchy that need to be updated are determined according to the accounting call parameters; the data table used to record the account data of the leaf account nodes is determined according to the account code of the leaf account nodes; the account data of the leaf account nodes recorded in the data table is updated according to the update method information of the leaf account nodes; and an accounting completion notification message is sent to the business server 110 after the update is completed. An asynchronous accounting thread is started, and the account data of other account nodes in the account hierarchy that need to be updated, excluding the leaf account nodes, are updated through the asynchronous accounting thread.

[0075] Specifically, in this optional implementation, if the accounting method for each account node is asynchronous, the account data of the leaf account nodes that need updating is updated. After the account data of the leaf account nodes is updated, an asynchronous accounting thread is started to update the account data of the other account nodes in the account hierarchy that need updating, excluding the leaf account nodes. For example, as shown... Figure 1B As shown, if each account node uses asynchronous accounting, the account data of each third-level account node is updated first. After the update is completed, the asynchronous accounting thread is started to update the account data of each second-level account node and the root account node.

[0076] In one implementation, the accounting method for each account node with a transaction type of "transfer amount" can be configured as asynchronous accounting to ensure real-time accounting processing. In this optional implementation, the advantage of using synchronous accounting is that it reduces the processing time of synchronous accounting, thereby improving accounting efficiency and ensuring real-time accounting. Optionally, the account data of other account nodes in the account hierarchy (excluding leaf account nodes) that need updating can be updated via an asynchronous accounting thread. This includes: creating an asynchronous accounting task and sending the task information of the asynchronous accounting task to a preset message queue (MQ); reading the task information from the MQ through the started asynchronous accounting thread, and executing the asynchronous accounting task according to the task information to update the account data of other account nodes in the account hierarchy (excluding leaf account nodes).

[0077] Asynchronous accounting tasks can be used to update account data for account nodes other than leaf account nodes. A preset message queue (MQ) is used to cache task information for each asynchronous accounting task. Optionally, the preset message queue can be a preset globally shared cache space used to cache task information for each asynchronous accounting task. In one implementation, the asynchronous accounting thread can periodically read task information from the MQ and execute the corresponding asynchronous accounting task according to the read task information, thereby updating the account data of account nodes other than leaf account nodes in the account hierarchy that need to be updated.

[0078] The data processing system in this embodiment includes a business server, an application server, and a database server. The business server sends an accounting interface call request to the application server corresponding to the current business entity. Upon receiving the request, the application server determines the database server corresponding to the business entity's identifier from the database cluster. It then reads the configuration data of the account hierarchy corresponding to the business entity's identifier from the database server, performs verification processing, and updates the account data for multiple accounting nodes. This allows the accounting operation to be executed by an independently deployed application server, completely decoupled from the business server, thus alleviating the pressure on the business server and enabling business lines to acquire accounting capabilities with zero development effort, quickly responding to business needs. Simultaneously, decoupling from the business server separates transactions and accounting, allowing the application server to access existing messages from the business entity for accounting processing. Furthermore, the business server can complete the accounting operations for each level node with a single interface call, eliminating the need to call multiple services for separate accounting. For hierarchical accounts, the business server only needs to call the accounting function once; the system automatically records the transactions to each level account and performs statistical processing, thereby improving the efficiency and resource utilization of transaction accounting.

[0079] by Figure 1F For example, a schematic diagram illustrates the interaction process between a business server and an application server for accounting processing. Specifically, the business server generates an accounting interface call request based on the application server's requirements and sends it to the application server. The application server calls the account query service and verifies the input parameters. After successful verification, it calls the accounting service to update the account data and sends the accounting result back to the business server.

[0080] Example 2

[0081] Based on the above embodiments, this embodiment optionally verifies the accounting call parameters according to the configuration data, including: verifying whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules according to the configuration data.

[0082] The explanations of terms that are the same as or corresponding to those in the above embodiments will not be repeated here. The data processing system provided in this embodiment includes:

[0083] The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated.

[0084] The application server is used to receive accounting interface call requests, determine the database server corresponding to the business party identifier from the database cluster, read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, and verify whether the account hierarchy in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters meets at least one of the rules, and update the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after the verification is passed.

[0085] A database server is used to store account data for each account node in the account hierarchy.

[0086] That is, before updating the account data of multiple account nodes in the account hierarchy stored in the database server, the application server in this embodiment needs to verify the input parameters of the accounting call.

[0087] In this embodiment, the configuration data includes model configuration data; wherein, the model configuration data may include a tree-like hierarchical relationship between each account node; for example, such as Figure 1B-1CThe account hierarchy in the accounting call parameters can be determined based on the account code of the account node that needs to be updated in the accounting call parameters. Specifically, the account hierarchy in the accounting call parameters is verified to match the model configuration data in the configuration data.

[0088] Alternatively, the configuration data can include node configuration data; whereby the node configuration data can include each account node. Specifically, the existence of the account node that needs to be updated can be verified based on the account hierarchy in the accounting call parameters and the node configuration data in the configuration data.

[0089] Alternatively, the configuration data may include transaction posting configuration data; this data may include change operators and amount limit information for each level of account subject. Specifically, the update method information of the account node in the posting call parameters can be compared with the transaction posting configuration data in the configuration data to verify whether the update method information of the account node in the posting call parameters conforms to the rules.

[0090] In this embodiment, verification can be performed on at least one of the following: whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to the rules. This embodiment does not limit the number of items to be verified and can adjust the verification accuracy or verification time according to the actual business requirements.

[0091] Optionally, at least one of the following can be verified: whether the accounting call parameters are empty, whether the length of each field in the accounting call parameters meets the preset length requirement, and whether each account node that needs to be updated in the accounting call parameters is abnormal.

[0092] In one implementation, a data verification layer can be deployed in the application server. The data verification layer of the application server performs operations to verify, based on the configuration data, whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules.

[0093] The application server in the data processing system provided in this embodiment verifies, based on the configuration data, whether the account level in the accounting call parameters matches, whether the account node to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules. This avoids account data update errors caused by mismatched account levels, non-existent account nodes, or non-compliant update methods when updating account data, thereby ensuring the accuracy of account data updates and further improving the user experience.

[0094] Considering scenarios where the configuration data for an account hierarchy does not include some account nodes that need updating, such as when a user subscribes to a new product account, the application server may optionally further: before updating the account data of multiple account nodes in the account hierarchy stored in the database server based on the accounting call parameters, if any of the account nodes that need updating, included in the accounting call parameters, are not present in the account hierarchy, the application server may determine, based on the configuration data, whether a new account can be automatically created; if so, then add any account node that needs updating to the account hierarchy.

[0095] For example, a user of Business A can subscribe to multiple product accounts. The account codes for these product accounts do not need to be pre-set in the configuration data. After a user subscribes to a new product account, the corresponding new account can be automatically created; that is, an account node for that product account is added to the account hierarchy. In an optional implementation, the configuration data may include a subscription identifier; this identifier indicates whether a new account can be created, and the ability to automatically create a new account can be determined based on the subscription identifier in the configuration data.

[0096] In one implementation, an accounting model processing layer can be deployed in the application server. When the accounting model processing layer executes an operation to add any account node requiring updating (as specified in the accounting call parameters) to the account hierarchy if no such account exists in the account hierarchy, it determines, based on configuration data, whether a new account can be automatically created. If so, it adds the account node requiring updating to the account hierarchy.

[0097] In these alternative implementations, in scenarios where the configuration data of the account hierarchy does not include some account nodes that need to be updated, a method is provided to add the account nodes that need to be updated in the account hierarchy based on the configuration data. This avoids situations where the corresponding accounting processing cannot be completed when a user purchases a new product, thereby ensuring the accuracy of accounting.

[0098] Considering that for each accounting interface call request, when updating account data across multiple account nodes, a corresponding transaction record can be generated and stored, the application server can optionally further: before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, generate a transaction record based on the accounting call parameters, write the transaction record to the transaction table of the database server, and record the transaction status as "processing" in the transaction table; and after updating the account data of multiple account nodes, mark the transaction status in the transaction table as successful.

[0099] The transaction table stores each transaction record and its corresponding transaction status; it can be stored on a database server. Optionally, transaction records include transaction time, user account, transaction code, amount information, product code, account code, hierarchical account subject, and change operators.

[0100] In other words, in this optional implementation, after the accounting call parameters in an accounting interface call request are verified, the corresponding transaction record can be generated according to the accounting call parameters and stored in the transaction table. The transaction status is marked as processing. After the account data of the account node that needs to be updated is updated, the transaction status in the transaction table is marked as successful.

[0101] In one implementation, a database transaction can be initiated through the database server. Through the initiated database transaction, a transaction record is generated according to the accounting call parameters. The transaction record is written into the transaction table of the database server, and the transaction status is recorded as "processing" in the transaction table. After updating the account data of multiple account nodes, the transaction status in the transaction table is marked as successful.

[0102] In another alternative implementation, an accounting order processing layer can also be deployed in the application server. This layer performs the following operations: generating a transaction record based on the accounting call parameters; writing the transaction record to the transaction table on the database server; recording the transaction status as "processing" in the transaction table; and marking the transaction status in the transaction table as successful after updating the account data for multiple account nodes.

[0103] In these optional implementations, the advantages of generating transaction records based on the accounting call parameters, writing these records to the transaction table in the database server, and recording the transaction status in the transaction table are as follows: When updating account data for each multi-account node based on each accounting call parameter, generating corresponding transaction records and marking the corresponding transaction status enables monitoring of the accounting process during the transaction. This facilitates the supervision of transactions that have not been fully accounted for, thereby preventing situations where a transaction succeeds but the accounting fails. Furthermore, generating and storing each transaction record facilitates subsequent retrieval of these records.

[0104] Considering that after updating the account data of the account nodes that need to be updated, corresponding account transaction data can be generated to record each accounting process of the account nodes, the application server is also used to: after updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, generate account transaction data for each account node according to the update operation of each account data, and write the account transaction data into the transaction table of the database server.

[0105] Account transaction data can include core fields such as account code, transaction amount, previous transaction amount, transaction code, account transaction ID, operation version, posting time, and external account alias. Optionally, account transaction data can also include product code, user account, and hierarchical account subject. Account transaction data can be stored in a transaction table on a database server. Before querying account transaction data, account input parameters can be validated, such as verifying account existence and account status. After successful validation, the account transaction data can be queried.

[0106] In one implementation, a database transaction is initiated through the database server. Through the initiated database transaction, account transaction data for each account node is generated based on the update operations on each account data, and the account transaction data is written into the transaction table of the database server.

[0107] In another implementation, an account core processing layer can be deployed in the application server. The account core processing layer performs the steps of generating account transaction data for each account node based on the update operations of each account data, and writing the account transaction data into the transaction table of the database server.

[0108] In these alternative implementations, the advantage of generating account transaction data for each account node based on the update operations of each account data and writing the account transaction data into the transaction table of the database server is that recording each accounting process of the account node facilitates subsequent querying of the transaction data of each account.

[0109] This embodiment also provides a preferred application server, which includes a data verification layer, an accounting model processing layer, an accounting order processing layer, and an account core processing layer. For example, such as... Figure 2 The diagram shows the structure of an application server that is deployed with a data verification layer, an accounting model processing layer, an accounting order processing layer, and an account core processing layer.

[0110] The data validation layer is used to verify, based on the configuration data, whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules.

[0111] The accounting model processing layer is used to: before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, if there is no account node in the account hierarchy that needs to be updated included in the accounting call parameters, determine whether a new account can be automatically created according to the configuration data. If so, add the account node that needs to be updated to the account hierarchy.

[0112] The accounting order processing layer is used to generate a transaction record based on the accounting call parameters before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters. The transaction record is written to the transaction table of the database server, and the transaction status is recorded as "processing" in the transaction table. After updating the account data of multiple account nodes, the transaction status in the transaction table is marked as successful.

[0113] The core account processing layer is used to: update the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters; and generate account transaction data for each account node according to the update operation of each account data, and write the account transaction data into the transaction table of the database server.

[0114] Example 3

[0115] In addition to the above embodiments, the application server may optionally be further configured to: upon receiving a reversal request from the business server, perform a rollback operation on the previously executed update operations on account data according to the reversal request.

[0116] The explanations of terms that are the same as or corresponding to those in the above embodiments will not be repeated here. The data processing system provided in this embodiment includes:

[0117] The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated.

[0118] The application server receives accounting interface call requests, determines the database server corresponding to the business party identifier from the database cluster, reads the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, verifies the accounting call parameters according to the configuration data, and updates the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after successful verification; when receiving a reversal request from the business party server, it performs a rollback operation on the previously executed account data update operation according to the reversal request.

[0119] A database server is used to store account data for each account node in the account hierarchy.

[0120] The reversal request can be sent by the business server to offset the original accounting entry. Optionally, the reversal request includes the original accounting entry request number, the reversal request number, the accounting amount, and the reason for reversal. The original accounting entry request number can be the original accounting entry number that needs to be offset. It should be noted that the reversal request can only be used to roll back previously executed account data update operations if the original accounting entry was successful.

[0121] For example, based on the reversal request, a rollback operation is performed on historically executed account data update operations. This includes: identifying each account node updated in the historical account data update operations, and progressively performing the deduction posting process from the root account node to the leaf account nodes. Optionally, the progressive deduction posting process includes: performing a reverse posting operation on the hierarchical account accounts of the account node. It should be noted that when performing a reverse posting operation on the hierarchical account accounts, some hierarchical account accounts that have been pre-configured with non-amplitude values ​​can be verified. If the amount is negative, an error message indicating insufficient amount for that hierarchical account account should be returned.

[0122] In one implementation, during the process of gradually deducting and recording transactions from the root account node to the leaf account node, corresponding reverse operation account transaction data can also be generated.

[0123] by Figure 3 For example, a schematic diagram illustrates the interaction process between a business server and an application server in reversal processing. Specifically, the business server organizes reversal data according to the transaction reversal processing, generates a reversal request, and sends it to the application server. The application server then calls the reversal service to perform a rollback operation based on the reversal request.

[0124] In this embodiment's data processing system, when the application server receives a reversal request from the business server, it rolls back the previously executed account data update operations based on the reversal request. This allows the reversal processing to be performed by an independently deployed application server, completely decoupling it from the business server and thus alleviating the pressure on the business server. Furthermore, the business server can complete the reversal operations at each level node through a single interface call, eliminating the need to call multiple services for separate reversals, thereby improving the processing efficiency and resource utilization of transaction reversals.

[0125] Example 4

[0126] In addition to the above embodiments, the application server may optionally be further configured to: upon receiving a balance query request from the business server, determine the target account level to be queried based on the balance query request; query the account data of the account node of the target account level in the account hierarchy structure from the database server, and return the query results to the business server.

[0127] The explanations of terms that are the same as or corresponding to those in the above embodiments will not be repeated here. The data processing system provided in this embodiment includes:

[0128] The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated.

[0129] The application server receives accounting interface call requests, determines the database server corresponding to the business party identifier from the database cluster, reads the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, verifies the accounting call parameters according to the configuration data, and updates the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after successful verification; when receiving a balance query request from the business party server, it determines the target account hierarchy to be queried according to the balance query request; it queries the account data of the account nodes of the target account hierarchy in the account hierarchy structure from the database server, and returns the query results to the business party server;

[0130] A database server is used to store account data for each account node in the account hierarchy.

[0131] The balance query request can be sent by the business server to query account data of account nodes. Optionally, the balance query request includes an account number. Correspondingly, determining the target account level to be queried based on the balance query request includes: determining the target account level to be queried based on the account number in the balance query request. It should be noted that the number of determined target account levels can be one or more; that is, account data of account nodes at one or more account levels can be queried at once. After determining the target account level to be queried, the account data of the account nodes at the target account level in the account hierarchy structure is retrieved from the database server.

[0132] Optionally, the balance query request may also include hierarchical account subjects; when the application server receives the balance query request, it queries the database server for the account data of the hierarchical account subjects of the account node of the target account level in the account hierarchy structure, based on the account number and the hierarchical account subjects.

[0133] by Figure 4 For example, a schematic diagram illustrates the interaction process between a business server and an application server for balance query processing. Specifically, the business server generates balance query requests for accounts at different levels according to actual needs and sends them to the application server. The application server calls the balance query service to query the account data of the account node from the database server based on the balance query request and returns the query results to the business server.

[0134] In this embodiment's data processing system, when the application server receives a balance query request from the business server, it determines the target account level to be queried based on the request. It then queries the account data of the account nodes at the target account level in the account hierarchy from the database server and returns the query results to the business server. This allows the balance query to be performed by an independently deployed application server, completely decoupled from the business server, thus alleviating the pressure on the business server. Furthermore, the business server can complete the balance query operation for each level node with a single interface call, eliminating the need to call multiple services separately, thereby improving the processing efficiency and resource utilization of the balance query. Simultaneously, it allows for flexible querying of account balances at different levels.

[0135] Example 5

[0136] In addition to the above embodiments, the application server may optionally be further configured to: upon receiving an account transaction history query request from the business server, determine the target account level to be queried based on the account transaction history query request; query the account transaction history data of the account node of the target account level in the account hierarchy structure from the database server, and return the query results to the business server.

[0137] The explanations of terms that are the same as or corresponding to those in the above embodiments will not be repeated here. The data processing system provided in this embodiment includes:

[0138] The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated.

[0139] The application server receives accounting interface call requests, determines the database server corresponding to the business party identifier from the database cluster, reads the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, verifies the accounting call parameters according to the configuration data, and updates the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after successful verification; when receiving an account transaction query request from the business party server, it determines the target account hierarchy to be queried according to the account transaction query request; it queries the account transaction data of the account nodes of the target account hierarchy in the account hierarchy structure from the database server, and returns the query results to the business party server;

[0140] A database server is used to store account data for each account node in the account hierarchy.

[0141] The account transaction history query request can be sent by the business server to query the transaction history data of individual account holders. Account transaction history data can include core fields such as account code, transaction amount, previous transaction amount, transaction code, account transaction ID, operation version, posting time, and external account alias. Optionally, account transaction history data may also include product code, user account, and hierarchical account subject.

[0142] In another implementation, an account transaction history query request can be used to: query the account transaction history data of a specific account, or query the account transaction history data of the root account node, etc.

[0143] Specifically, an account transaction history query request may include an account number. Correspondingly, the target account level to be queried is determined based on the query request, including: determining the target account level based on the account number in the query request. It should be noted that the number of target account levels can be one or more; that is, account transaction history data for account nodes at one or more account levels can be queried at once. After determining the target account level, the account transaction history data for the account nodes at the target account level in the account hierarchy structure is retrieved from the database server.

[0144] In one implementation, the account transaction data of each account node is stored in the transaction table of the database server; correspondingly, querying the account transaction data of the account node at the target account level in the account hierarchy from the database server includes: querying the account transaction data of the account node at the target account level in the account hierarchy from the transaction table of the database server.

[0145] Optionally, retrieving account transaction data for the target account level in the account hierarchy from the database server includes: validating the parameters in the account transaction query request; if the validation passes, retrieving the account transaction data for the target account level in the account hierarchy from the database server. Validating the parameters in the account transaction query request may include at least one of the following: verifying whether the account exists and whether the account status is normal.

[0146] by Figure 5 For example, this diagram illustrates the interaction process between a business server and an application server for account transaction history querying. Specifically, the business server generates an account transaction history query request based on actual needs and sends it to the application server. The application server calls the account transaction history query service to determine the target account level to be queried, retrieves the account transaction history data of the account node from the database server, and returns the query results to the business server.

[0147] In this embodiment's data processing system, when the application server receives an account transaction history query request from the business server, it determines the target account level to be queried based on the request. It then queries the database server for the account transaction history data of the target account level's nodes within the account hierarchy and returns the query results to the business server. This allows the account transaction history query request to be executed by an independently deployed application server, completely decoupled from the business server, thus alleviating the pressure on the business server. Furthermore, the business server can complete the account transaction history query operation for each level node with a single interface call, eliminating the need to call multiple services for separate queries, thereby improving the processing efficiency and resource utilization of account transaction history queries. Simultaneously, it allows for flexible querying of account transaction history data at different levels.

[0148] Optionally, the data processing system also includes a cache server, which is used to cache hot data in the database server. Hot data refers to data that is queried more frequently than a set threshold within a preset time period.

[0149] like, Figure 1D The caching server shown can be used to cache frequently accessed data from the database server. This frequently accessed data can be account data from account nodes, or account transaction history data, etc. In one implementation, the caching server can be configured to be enabled or disabled based on the database server's access volume. For example, when the business server sends multiple account transaction history query requests to the application server, the caching server can be started to cache the account transaction history data, allowing for faster retrieval of the corresponding data from the cache server, thereby improving query efficiency. For example, the caching server can be a Redis server.

[0150] In one implementation, after the cache server is started, if the account transaction query request or balance query request received by the application server is the first request, the query is first performed from the database server and the query result is cached in the cache server. At the same time, when the cached data changes, the cached data in the cache server needs to be updated. When the application server receives an account transaction query request or balance query request that is not the first request, it can query the corresponding data from the cache server.

[0151] In this optional implementation, the purpose of setting up a cache server is to reduce the number of accesses to the database server and thus improve query efficiency by setting up a cache server and caching hot data in the cache server.

[0152] Example 6

[0153] In addition to the above embodiments, the application server may optionally be further configured to: receive input configuration data of the account hierarchy structure and store the configuration data in the database server; wherein the configuration data includes at least one of the following: attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data.

[0154] The explanations of terms that are the same as or corresponding to those in the above embodiments will not be repeated here. The data processing system provided in this embodiment includes:

[0155] The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and accounting call parameters to the application server corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated.

[0156] The application server receives the input configuration data of the account hierarchy structure and stores the configuration data in the database server. The configuration data includes at least one of the following: attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data. It receives accounting interface call requests, determines the database server corresponding to the business party identifier from the database cluster, reads the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, verifies the accounting call parameters based on the configuration data, and updates the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after successful verification.

[0157] A database server is used to store account data for each account node in the account hierarchy.

[0158] The configuration options include: **Attribution Configuration:** This allows you to configure the business entity, such as Business A, Business C, Business B, etc. **Account Configuration:** This allows you to configure the asset types in the accounts, such as funds account, share account, bonus, points, etc. **Business Subject Configuration:** This allows you to configure business subjects, such as total amount, available amount, frozen amount, etc. **Node Configuration:** This allows you to configure individual account nodes, such as personal account, product account, etc. **Model Configuration:** This allows you to configure the hierarchical tree-like relationship between account nodes, such as... Figure 1B-1C As shown.

[0159] The accounting unit configuration allows you to configure the smallest unit involved in accounting. An accounting unit is the smallest unit involved in accounting, consisting of an account node and a business subject. For example... Figure 6A The diagram illustrates a configuration of accounting units and accounting items. An accounting unit can be a personal account with asset amounts or a personal account with available funds. Accounting item configuration allows you to configure items that directly participate in the accounting process. It's important to note that accounting items must be leaf account nodes. For example... Figure 6A In business A, if the product account node is a leaf account node, then the accounting item is Product Account - Asset Amount, or Product Account - Available Amount.

[0160] The aggregation configuration allows you to configure the aggregation strategy for account data across different account nodes. For example... Figure 6B The diagram illustrates a summary configuration. Since the leaf account nodes (third-level account nodes) directly participate in accounting, the second-level account nodes and the root account node can be automatically summarized using a summary strategy. For example, the summary strategy can be an asynchronous accounting method, such as... Figure 6C The diagram shows a sample summary configuration. For scenarios with many business account levels and many upward summary levels, asynchronous accounting can be configured to reduce the processing time of synchronous summary.

[0161] Transaction configuration can be configured for transaction types, such as incoming amount, outgoing amount, and frozen amount. Transaction posting configuration can be configured for the change operators and / or amount limits for the posting items corresponding to each transaction type, such as addition, subtraction, greater than zero, less than zero, and fixed arbitrary value.

[0162] In one implementation, the attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, and accounting unit configuration data can constitute the basic accounting configuration data, such as... Figure 6D The diagram shown illustrates a basic accounting configuration. For example, Figure 6E The diagram illustrates a basic accounting configuration example. Taking business A as an example, the accounts include total amount, available amount, frozen amount, and accumulated revenue, with an account level of 2. Level 1 corresponds to one model, namely, business A + total amount, or available amount, frozen amount, and accumulated revenue. Level 2 corresponds to two models, where model 1 can be business A + product + total amount, or available amount, frozen amount, and accumulated revenue, and model 2 can be business A + frozen pool + product + total amount, or available amount, frozen amount, and accumulated revenue.

[0163] In one implementation, the configuration data also includes transaction code configuration. Optionally, accounting item configuration data, summary configuration data, transaction accounting configuration data, and transaction code configuration data can constitute basic transaction configuration data, such as... Figure 6F As shown, a basic transaction configuration diagram is illustrated. For example, Figure 6G shows a sample diagram of a basic accounting configuration. Taking business A as an example, the accounting item is the bottom-level child node of a tree structure that only allows transaction operations, such as the total amount of the product account; the summary configuration includes child nodes that allow transaction operations and parent nodes that automatically summarize; if the transaction code is configured as transfer in, then the transaction accounting configuration includes transfer in, available product amount +, and total product amount +.

[0164] In a preferred embodiment, the configuration data includes attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data. For example... Figure 6H As shown, this illustrates a configuration data set.

[0165] Optionally, the configuration data can be data configured by the application server operators according to the business needs. For example, such as... Figure 6I The diagram illustrates the access process of a data processing system. Specifically, the business side compiles the accounts to be recorded, account levels, and corresponding transaction scenarios based on product requirements, and sends this information to the application server operations personnel. The operations personnel then configure the application server accordingly (generating configuration data) and conduct online verification based on test samples provided by the business side. The verification results and configuration data are then fed back to the business side, which can subsequently call interfaces for account opening, recording, reversal, and querying for integration testing and deployment. The account opening process can be found in [reference needed]. Figure 6J , Figure 6J A diagram illustrating the account opening process is shown.

[0166] In this embodiment of the data processing system, the application server is also used to receive the input configuration data of the account hierarchy structure and store the configuration data in the database server. The configuration data includes at least one of the following: attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data. This enables flexible configuration of account hierarchy, accounting subject, account node, etc., which facilitates rapid business expansion.

[0167] Example 7

[0168] Figure 7 This is a flowchart illustrating a data processing method provided in Embodiment 7 of the present invention. This embodiment is applicable to situations where accounting processing is performed on current transaction records, and is particularly applicable to situations where the business server sends an accounting interface call request to an independently deployed application server, so that the application server can perform accounting processing on the current transaction records. This method can be executed by the application server. Figure 7 As shown, the method specifically includes the following steps:

[0169] S710, Receive an accounting interface call request sent by the business server, which carries the business identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business server based on the current transaction records, and the accounting call parameters include the identifier information and update method information corresponding to each account node that needs to be updated.

[0170] S720: Determine the database server corresponding to the business entity identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business entity identifier from the database server.

[0171] S730. Verify the accounting call parameters according to the configuration data, and after successful verification, update the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy.

[0172] Optionally, the account data of multiple account nodes in the account hierarchy stored in the database server is updated according to the accounting call parameters. This includes: if the synchronous accounting method is determined based on the transaction code in the accounting call parameters, the account nodes at each level of the account hierarchy are traversed in the order from the root account node to the leaf account node; for the account nodes that need to be updated, the data table used to record the account data of the account node is determined based on the account code of the account node, and the account data of the account node recorded in the data table is updated according to the update method information of the account node; after the update is completed, an accounting completion notification message is sent to the business server.

[0173] Optionally, the account data of multiple account nodes in the account hierarchy stored in the database server is updated according to the accounting call parameters. This includes: if the transaction code in the accounting call parameters determines that an asynchronous accounting method is used, then the leaf account nodes in the account hierarchy that need to be updated are determined according to the accounting call parameters; the data table used to record the account data of the leaf account nodes is determined according to the account code of the leaf account nodes; the account data of the leaf account nodes recorded in the data table is updated according to the update method information of the leaf account nodes; and an accounting completion notification message is sent to the business server after the update is completed. An asynchronous accounting thread is started, and the account data of other account nodes in the account hierarchy that need to be updated, excluding the leaf account nodes, are updated through the asynchronous accounting thread.

[0174] Optionally, the account data of other account nodes in the account hierarchy that need to be updated, excluding leaf account nodes, can be updated through an asynchronous accounting thread. This includes: creating an asynchronous accounting task and sending the task information of the asynchronous accounting task to a preset message queue (MQ); reading the task information from the MQ through the started asynchronous accounting thread, and executing the asynchronous accounting task according to the task information to update the account data of other account nodes in the account hierarchy that need to be updated, excluding leaf account nodes.

[0175] Optionally, the accounting call parameters can be validated based on the configuration data, including: verifying whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules.

[0176] Optionally, before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, the method further includes: if there is no account node in the account hierarchy that needs to be updated as included in the accounting call parameters, then determine whether a new account can be created automatically according to the configuration data; if so, then add any account node that needs to be updated in the account hierarchy.

[0177] Optionally, before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, the method further includes: generating a transaction record according to the accounting call parameters, writing the transaction record to the transaction table of the database server, and recording the transaction status as "processing" in the transaction table; and marking the transaction status in the transaction table as "successful" after updating the account data of multiple account nodes.

[0178] Optionally, after updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, the method further includes: generating account transaction data for each account node based on the update operation of each account data, and writing the account transaction data into the transaction table of the database server.

[0179] Optionally, the method further includes: upon receiving a reversal request from the business server, performing a rollback operation on the previously executed update operations on account data according to the reversal request.

[0180] Optionally, the method further includes: upon receiving a balance query request from the business server, determining the target account level to be queried based on the balance query request; querying the account data of the account node of the target account level in the account hierarchy structure from the database server, and returning the query results to the business server.

[0181] Optionally, the method further includes: upon receiving an account transaction history query request from the business server, determining the target account level to be queried based on the account transaction history query request; querying the account transaction history data of the account node of the target account level in the account hierarchy structure from the database server, and returning the query results to the business server.

[0182] Optionally, the method further includes: upon receiving a balance query request from the business server, determining the target account level to be queried based on the balance query request; querying the account data of the account nodes of the target account level in the account hierarchy structure from the cache server, and returning the query results to the business server; wherein, the cache server is used to cache hot data in the database server, and hot data refers to data whose query frequency is higher than a set threshold within a preset time period, and hot data includes the account data of each account node.

[0183] Optionally, the method further includes: upon receiving an account transaction history query request from the business server, determining the target account level to be queried based on the account transaction history query request; querying the account transaction history data of the account node of the target account level in the account hierarchy structure from the cache server, and returning the query results to the business server; wherein, the cache server is used to cache hot data in the database server, and hot data refers to data whose query frequency is higher than a set threshold within a preset time period, and hot data includes the account transaction history data of the account node.

[0184] Optionally, the method further includes: receiving input configuration data of the account hierarchy structure and storing the configuration data in the database server; wherein the configuration data includes at least one of the following: attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data.

[0185] In this embodiment, upon receiving an accounting interface call request, the application server determines the database server corresponding to the business party identifier from the database cluster. It then reads the configuration data of the account hierarchy corresponding to the business party identifier from the database server, performs verification processing, and updates the account data for multiple accounting nodes. This allows the accounting operation to be executed by an independently deployed application server, completely decoupling it from the business party server and thus alleviating its load. Furthermore, the business party server can complete the accounting operations for each level of nodes with a single interface call, eliminating the need to call multiple services for separate accounting, thereby improving the processing efficiency and resource utilization of transaction accounting.

[0186] Example 8

[0187] Figure 8 This is a schematic diagram of the structure of a data processing device provided in Embodiment 8 of the present invention. This embodiment is applicable to the situation of performing accounting processing on the current transaction record, and is particularly applicable to the situation where the business server sends an accounting interface call request to an independently deployed application server so that the application server can perform accounting processing on the current transaction record. The device specifically includes: a request receiving module 810, a configuration reading module 820, and a data updating module 830.

[0188] The request receiving module 810 is used to receive the accounting interface call request sent by the business server, which carries the business identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business server based on the current transaction record, and the accounting call parameters include the identifier information and update method information of each account node that needs to be updated;

[0189] The configuration reading module 820 is used to determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server.

[0190] The data update module 830 is used to verify the accounting call parameters according to the configuration data, and after the verification is successful, to update the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy.

[0191] Optionally, the data update module 830 includes a verification unit and an update unit. The verification unit is used to verify the accounting call parameters according to the configuration data, and the update unit is used to update the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters after the verification is passed.

[0192] Optionally, the update unit includes a synchronous update subunit. The synchronous update subunit is used to traverse the account nodes at each level of the account hierarchy in the order from the root account node to the leaf account node if the synchronous accounting method is determined based on the transaction code in the accounting call parameters. For each account node that needs updating, the subunit determines the data table for recording the account data based on the account node's account code, updates the account data recorded in the data table according to the update method information, and sends an accounting completion notification message to the business server after the update is complete.

[0193] Optionally, the update unit includes an asynchronous update subunit. The asynchronous update subunit is used to determine the leaf account nodes that need updating in the account hierarchy based on the transaction code in the accounting call parameters, determine the data table for recording the account data of the leaf account nodes based on the account code of the leaf account nodes, update the account data of the leaf account nodes recorded in the data table according to the update method information of the leaf account nodes, and send an accounting completion notification message to the business server after the update is completed. It also starts an asynchronous accounting thread to update the account data of other account nodes in the account hierarchy that need updating, excluding the leaf account nodes.

[0194] Optionally, the asynchronous update subunit is specifically used to create asynchronous accounting tasks and send the task information of the asynchronous accounting tasks to a preset message queue (MQ); the asynchronous accounting thread reads the task information from the MQ and executes the asynchronous accounting tasks according to the task information to update the account data of other account nodes in the account hierarchy that need to be updated, except for the leaf account nodes.

[0195] Optionally, the verification unit is specifically used to verify, based on the configuration data, whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules.

[0196] Optionally, the data update module 830 also includes a node adding unit, which is used to determine whether a new account can be automatically created based on the configuration data if any of the account nodes that need to be updated included in the accounting call parameters do not exist in the account hierarchy. If so, any account node that needs to be updated is added to the account hierarchy.

[0197] Optionally, the data update module 830 also includes a transaction record generation unit, which generates a transaction record based on the accounting call parameters, writes the transaction record to the transaction table of the database server, records the transaction status as "processing" in the transaction table, and marks the transaction status in the transaction table as "successful" after updating the account data of multiple account nodes.

[0198] Optionally, the data update module 830 also includes a transaction generation unit, which generates account transaction data for each account node based on the update operation of each account data, and writes the account transaction data into the transaction table of the database server.

[0199] Optionally, the data processing device also includes a data reversal module, which, upon receiving a reversal request from the business server, performs a rollback operation on previously executed account data update operations based on the reversal request.

[0200] Optionally, the data processing device also includes a balance query module, which, upon receiving a balance query request from the business server, determines the target account level to be queried based on the balance query request; queries the account data of the account node of the target account level in the account hierarchy structure from the database server; and returns the query results to the business server.

[0201] Optionally, the data processing device also includes a transaction history query module, which, upon receiving an account transaction history query request from the business server, determines the target account level to be queried based on the account transaction history query request; queries the account transaction history data of the account node of the target account level in the account hierarchy structure from the database server; and returns the query results to the business server.

[0202] Optionally, the balance query module also includes a cached database query unit, which, upon receiving a balance query request from the business server, determines the target account level to be queried based on the balance query request; queries the account data of the account nodes of the target account level in the account hierarchy structure from the cache server, and returns the query results to the business server; wherein, the cache server is used to cache hot data in the database server, hot data refers to data whose query frequency is higher than a set threshold within a preset time period, and hot data includes the account data of each account node.

[0203] Optionally, the transaction history query module also includes a cached database query unit, which, upon receiving an account transaction history query request from the business server, determines the target account level to be queried based on the account transaction history query request; queries the account transaction history data of the account node at the target account level in the account hierarchy structure from the cache server, and returns the query results to the business server; wherein, the cache server is used to cache hot data in the database server, hot data refers to data whose query frequency is higher than a set threshold within a preset time period, and hot data includes the account transaction history data of the account node.

[0204] Optionally, the data processing device further includes a configuration receiving module for receiving input configuration data of the account hierarchy structure and storing the configuration data in the database server; wherein, the configuration data includes at least one of the following: attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data.

[0205] In this embodiment, the business server sends an accounting interface call request to the application server corresponding to the current business. Upon receiving the request, the application server determines the database server corresponding to the business identifier from the database cluster. It then reads the configuration data of the account hierarchy corresponding to the business identifier from the database server, performs verification processing, and updates the account data for multiple accounting nodes. This allows the accounting operation to be executed by an independently deployed application server, completely decoupled from the business server, thus alleviating the pressure on the business server. Furthermore, the business server can complete the accounting operations for each level node with a single interface call, eliminating the need to call multiple services for separate accounting, thereby improving the processing efficiency and resource utilization of transaction accounting. The data processing apparatus provided in this embodiment can execute the data processing method provided in any embodiment of this invention, possessing the corresponding functional modules and beneficial effects of the execution method.

[0206] It is worth noting that the various units and modules included in the above system are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be achieved; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of the present invention.

[0207] Example 9

[0208] Figure 9 This is a schematic diagram of the structure of an electronic device provided in Embodiment 9 of the present invention. Figure 9 A block diagram is shown of an exemplary electronic device 12 suitable for implementing embodiments of the present invention. Figure 9The electronic device 12 shown is merely an example and should not be construed as limiting the functionality or scope of the embodiments of the present invention. Device 12 is typically an electronic device that performs accounting processing functions.

[0209] like Figure 9 As shown, the electronic device 12 is represented in the form of a general-purpose computing device. The components of the electronic device 12 may include, but are not limited to: one or more processors or processing units 16, memory 28, and bus 18 connecting different components (including memory 28 and processing unit 16).

[0210] Bus 18 represents one or more of several bus architectures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus architectures. Examples of these architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MCA) bus, the Enhanced ISA bus, the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI) bus.

[0211] Electronic device 12 typically includes a variety of computer-readable media. These media can be any available media that can be accessed by electronic device 12, including volatile and non-volatile media, removable and non-removable media.

[0212] Memory 28 may include computer device readable media in the form of volatile memory, such as Random Access Memory (RAM) 30 and / or cache memory 32. Electronic device 12 may further include other removable / non-removable, volatile / non-volatile computer storage media. By way of example only, storage device 34 may be used to read and write non-removable, non-volatile magnetic media (not shown in Figure 9, commonly referred to as a "hard disk drive"). Although Figure 9Not shown, disk drives for reading and writing to removable non-volatile disks (e.g., "floppy disks") and optical disc drives for reading and writing to removable non-volatile optical discs (e.g., Compact Disc-Read Only Memory (CD-ROM), Digital Video Disc-Read Only Memory (DVD-ROM), or other optical media) may be provided. In these cases, each drive may be connected to bus 18 via one or more data media interfaces. Memory 28 may include at least one program product 40 having a set of program modules 42 configured to perform the functions of the embodiments of the present invention. Program product 40 may be stored, for example, in memory 28. Such program modules 42 include, but are not limited to, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment. Program modules 42 typically perform the functions and / or methods described in the embodiments of the present invention.

[0213] Electronic device 12 can also communicate with one or more external devices 14 (e.g., keyboard, mouse, camera, etc., and monitor), and with one or more devices that enable a user to interact with electronic device 12, and / or with any device that enables electronic device 12 to communicate with one or more other computing devices (e.g., network card, modem, etc.). This communication can be performed via input / output (I / O) interface 22. Furthermore, electronic device 12 can also communicate with one or more networks (e.g., Local Area Network (LAN), Wide Area Network (WAN) and / or public networks, such as the Internet) via network adapter 20. As shown, network adapter 20 communicates with other modules of electronic device 12 via bus 18. It should be understood that, although not shown in the figure, other hardware and / or software modules can be used in conjunction with electronic device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, Redundant Arrays of Independent Disks (RAID) devices, tape drives, and data backup storage devices.

[0214] Processor 16 executes various functional applications and data processing by running programs stored in memory 28, such as implementing the data processing method provided in the above embodiments of the present invention, including:

[0215] Receive an accounting interface call request sent by the business party server, which carries the business party identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business party server based on the current transaction records, and the accounting call parameters include the identifier information and update method information corresponding to each account node that needs to be updated;

[0216] Determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server;

[0217] The accounting call parameters are verified according to the configuration data, and after successful verification, the account data of multiple account nodes in the account hierarchy stored in the database server are updated according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy.

[0218] Of course, those skilled in the art will understand that the processor can also implement the technical solutions of the data processing methods provided in any embodiment of the present invention.

[0219] Example 10

[0220] Embodiment 10 of the present invention also provides a computer-readable storage medium having a computer program stored thereon. When executed by a processor, the program implements the data processing method steps provided in any embodiment of the present invention, the method comprising:

[0221] Receive an accounting interface call request sent by the business party server, which carries the business party identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business party server based on the current transaction records, and the accounting call parameters include the identifier information and update method information corresponding to each account node that needs to be updated;

[0222] Determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server;

[0223] The accounting call parameters are verified according to the configuration data, and after successful verification, the account data of multiple account nodes in the account hierarchy stored in the database server are updated according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy.

[0224] The computer storage medium of this invention can be any combination of one or more computer-readable media. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0225] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.

[0226] Program code contained on a computer-readable medium may be transmitted using any suitable medium, including—but not limited to—wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0227] Computer program code for performing the operations of embodiments of the present invention can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0228] Note that the above description is merely a preferred embodiment of the present invention and the technical principles employed. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in detail through the above embodiments, the present invention is not limited to the above embodiments, and may include many other equivalent embodiments without departing from the concept of the present invention, the scope of which is determined by the scope of the appended claims.

Claims

1. A data processing system, characterized in that, include: The business server is used to generate accounting call parameters based on the current transaction record and send an accounting interface call request carrying the business identifier and the accounting call parameters to the application server corresponding to the current business. The accounting call parameters include the identifier information and update method information of each account node that needs to be updated. The application server corresponding to the current business is determined from the application server cluster. An application server is configured to receive the accounting interface call request, determine the database server corresponding to the business party identifier from the database cluster, read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server, verify the accounting call parameters according to the configuration data, and update the account data of multiple account nodes in the account hierarchy structure stored in the database server according to the accounting call parameters after the verification is successful. A database server is used to store account data for each account node in the account hierarchy. The step of updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters includes: If the synchronous accounting method is determined to be used based on the transaction code in the accounting call parameters, then the account nodes at each level of the account hierarchy are traversed in the order from the root account node to the leaf account node. For each account node that needs to be updated during traversal, a data table for recording the account data of the account node is determined based on the account code of the account node, and the account data of the account node recorded in the data table is updated according to the update method information of the account node. After the update is completed, a notification message for completion of accounting is sent to the server of the business party. or, If the asynchronous accounting method is determined based on the transaction code in the accounting call parameters, then the leaf account nodes that need to be updated in the account hierarchy are determined based on the accounting call parameters. The data table used to record the account data of the leaf account nodes is determined based on the account code of the leaf account nodes. The account data of the leaf account nodes recorded in the data table is updated according to the update method information of the leaf account nodes. After the update is completed, an accounting completion notification message is sent to the business server. An asynchronous accounting thread is started, and the account data of other account nodes in the account hierarchy that need to be updated, excluding leaf account nodes, is updated through the asynchronous accounting thread.

2. The system according to claim 1, characterized in that, The asynchronous accounting thread updates the account data of all account nodes in the account hierarchy that need updating, excluding leaf account nodes, including: Create an asynchronous accounting task and send the task information of the asynchronous accounting task to a preset message queue (MQ); The asynchronous accounting thread reads the task information from the MQ and executes the asynchronous accounting task according to the task information to update the account data of other account nodes in the account hierarchy that need to be updated, excluding the leaf account nodes.

3. The system according to claim 1, characterized in that, The accounting call parameters are validated based on the configuration data, including: Based on the configuration data, the system verifies whether the account level in the accounting call parameters matches, whether the account node that needs to be updated exists, and whether the update method information of the account node in the accounting call parameters conforms to at least one of the rules.

4. The system according to claim 1, characterized in that, The application server is also used for: Before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, if there is no account node in the account hierarchy that needs to be updated as included in the accounting call parameters, then it is determined whether a new account can be automatically created according to the configuration data. If so, then the account node that needs to be updated is added to the account hierarchy.

5. The system according to claim 1, characterized in that, The application server is also used for: Before updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, a transaction record is generated according to the accounting call parameters, the transaction record is written to the transaction table of the database server, and the transaction status is recorded as "processing" in the transaction table; and, After updating the account data of the multiple account nodes, the transaction status in the transaction table is marked as successful.

6. The system according to claim 1, characterized in that, The application server is also used for: After updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters, the account transaction data of each account node is generated according to the update operation of each account data, and the account transaction data is written into the transaction table of the database server.

7. The system according to claim 1, characterized in that, The application server is also used for: Upon receiving a balance query request from the business server, the target account level to be queried is determined based on the balance query request; The database server queries the account data of the account node at the target account level in the account hierarchy and returns the query results to the business server.

8. The system according to claim 1, characterized in that, The application server is also used for: Upon receiving an account transaction history query request from the business party's server, the target account level to be queried is determined based on the account transaction history query request; The database server is consulted to retrieve the account transaction data of the account node at the target account level in the account hierarchy, and the query results are returned to the business server.

9. The system according to any one of claims 1-8, characterized in that, The application server is also used for: Receive input configuration data for the account hierarchy structure and store the configuration data in the database server; The configuration data includes at least one of the following: attribution configuration data, account set configuration data, business subject configuration data, node configuration data, model configuration data, accounting unit configuration data, accounting item configuration data, summary configuration data, transaction configuration data, and transaction accounting configuration data.

10. A data processing method, characterized in that, include: The application server receives an accounting interface call request sent by the business party server, which carries the business party identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business party server based on the current transaction records, and the accounting call parameters include the identifier information and update method information corresponding to each account node that needs to be updated; the application server is the application server corresponding to the current business party obtained from the application server cluster. Determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server; The accounting call parameters are verified according to the configuration data, and after successful verification, the account data of multiple account nodes in the account hierarchy stored in the database server are updated according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy. The step of updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters includes: If the synchronous accounting method is determined to be used based on the transaction code in the accounting call parameters, then the account nodes at each level of the account hierarchy are traversed in the order from the root account node to the leaf account node. For each account node that needs to be updated during traversal, a data table for recording the account data of the account node is determined based on the account code of the account node, and the account data of the account node recorded in the data table is updated according to the update method information of the account node. After the update is completed, a notification message for completion of accounting is sent to the server of the business party. or, If the asynchronous accounting method is determined based on the transaction code in the accounting call parameters, then the leaf account nodes that need to be updated in the account hierarchy are determined based on the accounting call parameters. The data table used to record the account data of the leaf account nodes is determined based on the account code of the leaf account nodes. The account data of the leaf account nodes recorded in the data table is updated according to the update method information of the leaf account nodes. After the update is completed, an accounting completion notification message is sent to the business server. An asynchronous accounting thread is started, and the account data of other account nodes in the account hierarchy that need to be updated, excluding leaf account nodes, is updated through the asynchronous accounting thread.

11. A data processing apparatus, characterized in that, include: The request receiving module is used by the application server to receive an accounting interface call request sent by the business party server, which carries the business party identifier and accounting call parameters; wherein, the accounting call parameters are generated by the business party server based on the current transaction records, and the accounting call parameters include the identifier information corresponding to each account node that needs to be updated and the update method information; the application server is the application server corresponding to the current business party obtained from the application server cluster. The configuration reading module is used to determine the database server corresponding to the business party identifier from the database cluster, and read the configuration data of the account hierarchy structure corresponding to the business party identifier from the database server; The data update module is used to verify the accounting call parameters according to the configuration data, and after the verification is successful, update the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters; wherein, the database server is used to store the account data of each account node in the account hierarchy. The step of updating the account data of multiple account nodes in the account hierarchy stored in the database server according to the accounting call parameters includes: If the synchronous accounting method is determined to be used based on the transaction code in the accounting call parameters, then the account nodes at each level of the account hierarchy are traversed in the order from the root account node to the leaf account node. For each account node that needs to be updated during traversal, a data table for recording the account data of the account node is determined based on the account code of the account node, and the account data of the account node recorded in the data table is updated according to the update method information of the account node. After the update is completed, a notification message for completion of accounting is sent to the server of the business party. or, If the asynchronous accounting method is determined based on the transaction code in the accounting call parameters, then the leaf account nodes that need to be updated in the account hierarchy are determined based on the accounting call parameters. The data table used to record the account data of the leaf account nodes is determined based on the account code of the leaf account nodes. The account data of the leaf account nodes recorded in the data table is updated according to the update method information of the leaf account nodes. After the update is completed, an accounting completion notification message is sent to the business server. An asynchronous accounting thread is started, and the account data of other account nodes in the account hierarchy that need to be updated, excluding leaf account nodes, is updated through the asynchronous accounting thread.

12. An electronic device, characterized in that, The electronic device includes: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the data processing method as described in claim 10.

13. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the data processing method as described in claim 10.