Data processing method and device, electronic equipment, storage medium and program product

By pre-processing the ordered data in batch collection and payment services, assigning group data flags and serial numbers, and adopting a group data scheduling algorithm, the problem of system capacity degradation caused by strict data processing sequence requirements is solved, and efficient concurrent processing and resource optimization are achieved.

CN114118992BActive Publication Date: 2025-10-10CHINA CONSTRUCTION BANK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111411462.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-25
Publication Date
2025-10-10
Estimated Expiration
2041-11-25

AI Technical Summary

Technical Problem

When processing batch collection and payment services, the existing technology has strict requirements on the data processing order of continuous deductions and sequential deductions. However, due to the large difference in data volume, the system processing capacity is reduced and resources are wasted.

Method used

By preprocessing the data that needs to be processed sequentially, assigning group data flags, batch numbers and group serial numbers, using group data scheduling algorithms to control the data processing order, and unifying it with ordinary data for concurrent processing, queuing time is reduced.

Benefits of technology

It improves the system's business processing capabilities and data processing efficiency, simplifies the sequence issues in the data entry stage, and optimizes resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114118992B_ABST
    Figure CN114118992B_ABST
Patent Text Reader

Abstract

The application belongs to the technical field of data processing, and specifically discloses a data processing method, device, electronic equipment, storage medium and program product. The method specifically discloses a data processing method, which comprises the following steps: a judging step, obtaining current data from to-be-processed data, and determining that the current data is ordered data in the case that the current data contains group data marks, wherein the group data is a collection of a group of ordered data that are mutually associated; a group data scheduling step, determining whether the current data is the same as data that should be processed first in group data to which the current data belongs according to the group data marks, if yes, taking the current data as current to-be-processed data, and if not, taking the data that should be processed first as the current to-be-processed data; and a processing step, assigning the current to-be-processed data to an online transaction process to process the current to-be-processed data. Compared with the prior art, the application improves the business processing capacity of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data processing technology, and in particular to a data processing method, device, electronic device, storage medium and program product. Background Art

[0002] With the increasing transaction volume of batch collection and payment services conducted by commercial banks, banks are generally adopting a method of batch splitting and concurrent processing to improve processing capacity in order to efficiently and reliably process this transaction data. However, some types of batch collection and payment services have strict requirements on the order in which data is processed. For example, continuous deduction services and sequential deduction services both operate in groups, and data within a group must be processed sequentially. This type of data cannot be processed concurrently like other data. To address this, the technology typically separates and isolates these two types of data, placing data requiring sequential processing and data requiring non-sequential processing into sequential and concurrent processing queues, respectively, for differential processing. However, due to the random nature of business data, the data volumes in these two queues often differ significantly, resulting in significant differences in processing time. This ultimately reduces overall processing capacity and wastes system resources. Summary of the Invention

[0003] In view of the above problems in the prior art, the present invention aims to provide a data processing method that can be used in electronic devices, wherein the data includes ordered data that needs to be processed sequentially, comprising the following steps:

[0004] a judgment step of obtaining current data from the data to be processed, and determining that the current data is the ordered data if the current data contains a group data flag, wherein the group data is a set of mutually related ordered data;

[0005] a group data scheduling step, determining, based on the group data flag, whether the current data is the same as the data that should be processed first in the group data to which it belongs; if so, using the current data as the current data to be processed; if not, using the data that should be processed first as the current data to be processed;

[0006] The processing step is to distribute the current data to be processed to an online transaction process to process the current data to be processed.

[0007] In the above-mentioned data processing method, the data also includes ordinary data that does not need to be processed sequentially. In the judgment step, when the data does not contain the group data flag, the data is determined to be the ordinary data; in the step of determining the current data to be processed, the data is used as the data to be processed, and the data to be processed is assigned to a concurrent processing queue to process the data to be processed.

[0008] The above data processing method further includes a pre-processing step, wherein the pre-processing step assigns a group data mark to a group of mutually related ordered data in the data to be processed.

[0009] In the above data processing method, the pre-processing step further includes assigning group sequence numbers to the data in the group data according to the required processing order.

[0010] In the above-mentioned data processing method, the preprocessing step also includes assigning a batch number and a group number to the data in the group data, one batch number corresponds to multiple group numbers, and a piece of data in the ordered data is uniquely determined by the group data flag, the batch number, the group number and the serial number within the group.

[0011] In the above-mentioned data processing method, the group data flag is used to indicate that the data is the ordinary data or the ordered data that needs to be deducted continuously or the ordered data that needs to be deducted in sequence.

[0012] In the above data processing method, in the group data scheduling step, the data with the smallest sequence number in the group and the processing status flag indicating that it is not processed is selected as the current data to be processed.

[0013] The present invention further provides a data processing device for implementing the above method, comprising:

[0014] a pre-processing unit, configured to assign a group data flag to a group of sequential data that are mutually related in all the data to be processed;

[0015] A judgment unit, configured to determine whether the current data in the data to be processed is the ordered data;

[0016] a group data scheduling unit, configured to determine the current data to be processed when the current data is the ordered data;

[0017] The present invention also provides an electronic device, comprising:

[0018] at least one memory for storing computer instructions;

[0019] At least one processor implements the above-mentioned data processing method when the at least one processor executes the computer instructions.

[0020] The present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores at least one computer instruction, and the at least one instruction is loaded and executed by a processor to implement the above-mentioned data processing method.

[0021] The present invention also provides a computer program product, which includes computer instructions. When the computer instructions are executed, the above-mentioned data processing method is implemented.

[0022] Compared to the existing technology, this application unifies the data that originally needed to be processed separately (concurrently processed data and sequentially processed data) into one type of data (concurrently processed data), and proposes a scheduling algorithm for group data (i.e., data that needs to be processed sequentially) to control the processing order of records (i.e., data) in the same group of data, so that only one type of concurrent queue needs to be called in the system, thereby improving the system's business processing capabilities. Specifically, for systems that need to process large quantities of data services in a short period of time (such as collection and payment services), simplifying the processing logic can improve processing speed and increase the ability to process data volume.

[0023] In addition, in terms of entering the data to be processed, after adopting the technical solution of the present application, it is possible to identify whether the current data record is sequential data or concurrent data through fields such as the batch number and the sequence number within the group in the data record, and therefore it is no longer sensitive to the order in which the data is arranged in the database. Therefore, when entering data into the database, there is no need to enter the data that needs to be processed sequentially in sequence, thereby solving the concurrency problem that may arise in the data entry stage (i.e., the problem of sequential data being entered in parallel). BRIEF DESCRIPTION OF THE DRAWINGS

[0024] To more clearly illustrate the technical solution of the present invention, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present invention, and those skilled in the art can derive other drawings based on these drawings without inventive effort.

[0025] Figure 1 It is a schematic diagram of existing processing of ordered data and normal data;

[0026] Figure 2 It is a schematic diagram of processing ordered data and normal data provided by one embodiment of the present invention;

[0027] Figure 3 is a flow chart of data processing provided by one embodiment of the present invention;

[0028] Figure 4 is a flow chart of data processing provided by another embodiment of the present invention;

[0029] Figure 5 It is a module diagram of a data processing device in the present invention;

[0030] Figure 6Fig. 1 is a structural schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0031] In order to make the persons skilled in the art better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all the other embodiments obtained by the persons skilled in the art without creative effort belong to the protection scope of the present application.

[0032] It should be noted that the terms "first", "second", and the like in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or a chronological sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, device, product, or apparatus including a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to the process, method, product, or apparatus.

[0033] It should also be stated that the numbering of the methods and processes in the present application is for the convenience of reference, and is not limited to the order. If there is a sequence between the steps, the written description shall prevail.

[0034] The focus of the inventive concept of the present application is that the business data that needs to be sequentially processed in the batch collection and payment service is sequentially numbered, and then the numbered business data is concurrently processed with other ordinary data. In the process of concurrent processing, the group data (i.e. a group of numbered business data) is controlled by a group data scheduling algorithm to ensure that the records (i.e. business data) in the same group of business data are sequentially processed. Thus, for the entire batch collection and payment system, only one type of concurrent queue is needed to achieve the purpose of improving the business processing capacity.

[0035] Before starting the description of the specific embodiments, some terms that will appear in the present application will be simply explained.

[0036] Batch collection and payment service: is a designated period of deduction or payment service, including collection of electricity, water, communication fees, etc., and payment of wages, pensions, insurance, etc. The characteristics of these services are that a single payee collects money from multiple payers or a single payer pays multiple payees.

[0037] Batch number: A unique number used to identify a batch of collection and payment services.

[0038] Batch file: refers to the collection of business information of all payers or payees in a batch collection and payment business. Each record in the batch file contains information such as customer account number, payment amount, etc. In addition, each batch file corresponds to a batch number.

[0039] Continuous deduction: refers to deducting a specified total amount from a group of accounts. If the first account in the group has not received the full amount, the remaining amount will be deducted from the second account in the group. The remaining accounts in the group will be deducted in sequence until the full amount is deducted or the last account in the group is reached.

[0040] Sequential deduction: refers to deducting funds from a group of accounts. Except for the first account in the group, the deduction of other accounts must be successful before the previous account is deducted.

[0041] Group data: refers to a group consisting of multiple data records. The data records in the group must be processed sequentially. For example, group data is used in the continuous deduction and sequential deduction business scenarios.

[0042] In order to make the purpose, technical solutions and advantages disclosed in the embodiments of the present invention more clearly understood, the embodiments of the present invention are further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the embodiments of the present invention and are not intended to limit the embodiments of the present invention.

[0043] The acquisition, storage, use, and processing of data in the technical solutions disclosed in the various embodiments of this application comply with the relevant provisions of national laws and regulations.

[0044] Figure 1 A schematic diagram of the existing processing of ordered data and ordinary data is shown. As shown in the figure, ordered data refers to a group of data similar to the above that need to be deducted continuously or a group of data similar to the above that need to be deducted in sequence. Ordinary data refers to data that are not related to each other. When processing ordinary data, a piece of data can be randomly obtained to be processed (that is, it can be processed by a concurrent processing process), and when processing ordered data, it needs to be processed in the order of the processing of the ordered data, that is, it is necessary to process other ordered data before the ordered data is sorted, and then process the ordered data (that is, it can be processed by a sequential processing process). For example, Figure 1The data to be processed 11 includes ordinary data A, B, C... and ordered data x1, x2, x3... When the acquired data is one of the ordinary data A, B, C..., the data is assigned to the concurrent processing process 12. In other words, there is no relationship between ordinary data A, B, C such that A must be processed first and then B. When ordinary data A is assigned to the concurrent processing process 12, the data can be processed directly without considering whether ordinary data B or C has been processed. For a group of ordered data x1, x2, x3..., the acquisition of this group of data needs to be orderly, that is, x1 needs to be acquired first, and then x2, and x1 and x2 are also queued in the sequential processing process 13 in order, waiting to be processed.

[0045] Figure 1 In the data processing method shown, since the sequential processing process 13 must process the same group of ordered data in a certain order, when the amount of ordered data x1, x2, x3... is large, the processing time of the sequential processing process 13 may be relatively long, affecting the efficiency of data processing.

[0046] In order to improve the above shortcomings and improve the processing efficiency of ordered data (especially in the case of large amounts of data), this application proposes a new data processing method, the schematic diagram of which is shown in FIG. Figure 2 shown.

[0047] exist Figure 2 In the schematic diagram of processing ordered data and ordinary data, the data to be processed 21 includes ordinary data A, B, C, X1, X2, X3, etc. Among them, the ordinary data A, B, C correspond to Figure 1 The normal data A, B, C shown in the figure, and the normal data X1, X2, X3 correspond to Figure 1 In this embodiment, the original ordered data x1, x2, x3 are first pre-processed and encapsulated into ordinary data X1, X2, X3 (i.e., the existing data are "transformed"), so that all the to-be-processed data 21 can be processed by the concurrent processing process 22, thereby reducing the queuing time and improving the efficiency of data processing.

[0048] On the other hand, in Figure 1 In the embodiment shown, when data is input into the database, the ordered data needs to be input (or stored) in sequence in the database, which affects the efficiency of inputting data to a certain extent. Figure 2 In the illustrated embodiment, when data is input into the database (ie, when new data is created), all data may be directly input without considering the order of the data, that is, ordered data or ordinary data may be input in a random order.

[0049] Furthermore, for ordinary data X1, X2, and X3, when they enter the concurrent processing process 22, they are first identified by the judgment unit 221 and processed differently from ordinary data A, B, and C. That is, when the judgment unit 221 determines that the currently processed data is one of ordinary data A, B, C, etc., it can directly execute the same processing as the ordinary data A, B, C, etc. Figure 1 The same processing process as in the embodiment shown; and when the judgment unit 221 determines that the currently processed data is one of the ordinary data X1, X2, and X3, it is necessary to make another judgment to determine whether the currently processed data is the data that should be processed first in the group of ordered data, and then determine the current data to be processed, and then process the current data to be processed in the same way as processing the ordinary data A, B, and C.

[0050] Figure 2 In the processing method shown, the ordered data is "encapsulated" through preprocessing, so that the ordered data and ordinary data are unified into one type of data, and both can be processed using concurrent processing, which reduces the waiting time for data and improves the efficiency of data processing.

[0051] The data processing method proposed in this application is described in detail below from the perspective of data processing flow. Figure 3 The flow chart shown illustrates one possible embodiment.

[0052] S31: First, all data to be processed is preprocessed. The purpose of data preprocessing is to unify the data. That is, it is not necessary to distinguish whether the data is ordered data or ordinary data. Therefore, all data can be processed using the same processing method (e.g., concurrent processing), rather than using two processing processes (concurrent processing and sequential processing) to process ordered data and ordinary data separately. Specifically, the preprocessing method may include labeling the data, for example, assigning a group data flag to a group of related ordered data in all the data to be processed. After preprocessing, the data to be processed 21 is acquired under the same rules and assigned to the concurrent processing process 22. In subsequent steps, while the data to be processed 21 is being processed, the concurrent processing process 22 uses the labeled content to identify whether the data currently being processed needs to be processed sequentially. If so, the group data scheduling algorithm is invoked to process the data (see S34 for details) and then the online transaction data processing step S33 is executed. If not, the online transaction data processing step S33 is directly executed.

[0053] Data annotation can be achieved by expanding the data fields, adding fields such as group data flag, batch number, group number, and intra-group sequence number. These fields can be used in the group data scheduling algorithm to help determine the processing order of common data X1, X2, X3, etc.

[0054] Table 1 shows an example of data preprocessing (adding data fields) in a bank's batch collection and payment service, as proposed in this embodiment. Those skilled in the art will appreciate that for data newly added to a database, the new data can be directly created using the format shown in Table 1, including the newly added fields, without first creating the new data using the existing data fields and then adding the new fields through annotation. Furthermore, when creating the new data using the format shown in Table 1, including the newly added fields, there is no longer a requirement for the order in which the newly created ordered data is input (stored); the data can be created in a random order.

[0055] Table 1

[0056]

[0057] In Table 1, other fields (XXXXXX) represent fields used in both the original data fields and the newly added fields, and are not described in this embodiment. The original data field portion also includes a processing flag field, which is used to identify group data in the original data processing method, wherein the S flag is used to indicate that the data starting from this data to the next empty flag or the data before the T flag are all the same group of continuous deduction data, and the T flag indicates that the data starting from this data to the next empty flag or the data before the S flag are all the same group of sequential deduction data. Moreover, under the flag of the original processing flag, the same group of data needs to be stored and read in order, otherwise, the same group of continuous deduction data or the same group of sequential deduction data cannot be processed in the correct order.

[0058] In this embodiment, to enable parallel processing of all data, several fields are added to the data to be processed. First, a group data flag field is added. This field uses the same flag symbols as the processing flags in the original data field, with an S flag and a T flag used to identify continuous deduction data and sequential deduction data, respectively. The difference is that each data item is marked with an S flag, a T flag, or a null flag, which allows the determination unit 221 to identify whether the data currently being processed is normal data or sequential data.

[0059] In the embodiment shown below, the group data flag field replaces the function of the processing flag field in the original data field and can be used to determine whether the data is ordered data or ordinary data.

[0060] Secondly, because the ordered data in the database typically includes many groups, new batch number and group number fields are added to distinguish different groups of ordered data in different batch files. For example, as shown in Table 1, symbols such as P1, P2, etc. are used to identify batch numbers, and symbols such as 0000001, 0000002, 0000003, etc. are used to identify different group numbers. The batch number and group number do not need to be consecutive symbols; they can simply be used to identify different batches or groups. The concurrent processing process 22 needs to use the batch number and group number information to distinguish which group the data currently being processed belongs to.

[0061] The newly added intra-group sequence number field needs to be regularly increased (or decreased). In most cases, the sequence numbers such as 001, 002, 003, etc. as shown in Table 1 can be used. When the concurrent processing process 22 calls the group data scheduling algorithm, it determines which data in the group should be processed first based on the intra-group sequence number. Among them, group data is a combination of a group of related ordered data. For the bank's payment and deduction business, there may be many batch payment and deduction businesses, and in each batch of business, there may be many group data. Therefore, for a piece of data, it needs to be uniquely identified by the batch number, group number and intra-group sequence number.

[0062] In a distributed system, a large amount of data is generally entered into a high-frequency database through a high-frequency framework. Therefore, similar preprocessing can also be performed on the high-frequency database table to add new group data flag fields, batch number fields, group number fields, and intra-group sequence number fields to the data for use by the high-frequency concurrent scheduling algorithm.

[0063] After pre-processing the data to be processed, the formal data processing process can be started. For a large amount of bank collection and payment services, steps S32 to S33 can be a concurrent service scheduling, and multiple concurrent services can exist at the same time in the same period.

[0064] S32: The current data is obtained from the data to be processed 21 and, based on the group data flag, is determined to be ordered data (group data) or normal data. If the data is normal data, it is considered the current data to be processed and S33, the step of online transaction data processing, can be directly executed. If the current data is ordered data (i.e., group data), S34, the group data scheduling step, is executed. The group data scheduling algorithm is invoked to determine which data in the group of ordered data to which the current data belongs should be processed first. This data is then released as the current data to be processed, and the process proceeds to step S33.

[0065] S33: In this step, the data to be processed is actually processed. For example, if the data to be processed is a payment service, the payment service processing process is invoked to execute the payment operation. If the data to be processed is a continuous deduction service, the corresponding deduction service processing process is invoked to execute the deduction operation. Furthermore, since the execution order of the data to be processed has already been determined in S34, the deduction service processing process only needs to execute the deduction operation, without further determination.

[0066] S34: For the data to be processed (i.e., the current data) determined by the determination unit 221 to be group data (i.e., ordered data), it is further necessary to determine whether the data to be processed is the data that should be processed first among the unprocessed data in the group of ordered data. In other words, the ordered data still needs to be processed in sequence according to its inherent order.

[0067] A processing status flag can be set for group data to indicate whether the data in the group data has been processed. Specifically, the processing status flag can include: pending status, processing status, or processed status. After each piece of pending data is acquired, the processing status flag is set to pending status and compared with the same group data with the processing status flag set to processing status or unprocessed status (comparing the sequence numbers within the group). The data with the smallest sequence number is selected for processing. In this way, when acquiring data, there is no need to emphasize sequential acquisition, thereby improving data processing efficiency.

[0068] In other embodiments, a lock flag may be set for the group data. To prevent data from being misoperated (e.g., locking data in process to prevent it from being misoperated by other processes), or to prevent certain data from being manipulated, the data may be locked to prevent it from being modified (or processed). Data in the pending and unlocked state may be read.

[0069] Figure 4 is Figure 3 The flowchart of steps S32-34 is further described based on the above. S41-S42 corresponds to step S32, locking and judging the data read this time. If it is ordered data, the group data scheduling step (S44-S48) is entered. Otherwise, the processing step is directly entered, that is, calling the online transaction processing data (S43).

[0070] S43 corresponds to Figure 3 In step S33, specific data processing is performed on the data to be processed. For example, for the bank's collection and payment service, the online transaction process can be called to process the above-mentioned data to be processed.

[0071] S44 to S48 are a specific embodiment of the group data scheduling algorithm, corresponding to Figure 3 The following is an explanation of a set of continuous deduction data with batch number P1 and group number 0000001 in Table 1. Assume that in step S41, the data read this time is the data with the sequence number 003 in the group.

[0072] S44: Based on the data with the group number 003 read in S41, it can be determined that the batch number of the currently read group data is P1 and the group number is 0000001. Based on these two pieces of information, the data in the group data that is in a pending state and has the smallest sequence number in the group can be read through a database search command (which can be called new data). It is assumed that the data currently read is the data with the group number 001.

[0073] S45: The current data with the group number 003 read in S41 is compared with the new data with the group number 001 read in S44. If the two are obviously different data, the next step is to execute S46. If the group number of the new data read by the search command in step S44 is 003, that is, the current data and the new data are the same data, then S43 can be executed.

[0074] S46: It has been determined that the new data with the serial number 001 in the group is the data that should be processed currently. It is again determined whether the processing status of the data (the new data with the serial number 001 in the group) is in the pending state and whether the lock flag is the unlocked flag. If so, it means that the new data can be processed, and then execute S47, otherwise execute S48. The significance of confirming whether the new data can be processed in this step is that the execution environment of this embodiment is a high-concurrency business environment. When this embodiment executes to step S46, there is a risk that the data with batch number P1, group number 0000001, and serial number 001 in the group has already been processed by other concurrent processes. In order to prevent duplicate processing, step S46 is set in this embodiment.

[0075] S47: The new data with the group sequence number 001 is locked as the current data to be processed, and the processing status flag is set to "in-processing." The data is then sent to the online transaction process for specific processing. Simultaneously, the data with the group sequence number 003 is discarded from this processing, its processing status is set to "pending," the lock flag is set to "unlocked," and the data is released to await the next group data scheduling (concurrent scheduling) process.

[0076] S48: In S46, it is determined that the new data with the group sequence number 001 cannot be processed. This indicates that the data may be used by other processes. To prevent conflicts, the data is not processed this time. In other words, the concurrent scheduling fails and no data can be processed. The processing status of the data with the group sequence number 003 is set to pending, the lock flag is set to unlocked, and the data is released to wait for the next group data scheduling process.

[0077] It should be noted that the devices provided in the above embodiments are only illustrated by the division of the above functional modules when implementing their functions. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the devices provided in the above embodiments and the corresponding method embodiments are based on the same concept. The specific implementation process is detailed in the corresponding method embodiments and will not be repeated here.

[0078] Figure 5 The data processing device provided by the present invention is a module diagram. Figure 3 and Figure 4 The method flow shown.

[0079] The pre-processing unit 220 is configured to assign a group data flag to a group of mutually related ordered data in all data to be processed. The judgment unit 221 is configured to determine whether the current data in the data to be processed is the ordered data. The group data scheduling unit 222 is configured to determine the current data to be processed if the current data is the ordered data. The online transaction unit 223 is configured to process the current data to be processed.

[0080] An embodiment of the present invention further provides an electronic device, comprising a processor and a memory, wherein the memory stores at least one instruction or at least one program, and the at least one instruction or at least one program is loaded and executed by the processor to implement the browser operation method provided in the above method embodiment.

[0081] The memory can be used to store software programs and modules. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory. The memory can mainly include a program storage area and a data storage area. The program storage area can store the operating system, application programs required for the functions, etc.; the data storage area can store data created based on the use of the device, etc. In addition, the memory can include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory can also include a memory controller to provide the processor with access to the memory.

[0082] Now refer to Figure 6 , which is a block diagram of an electronic device 700 according to an embodiment of the present application. The electronic device 700 may include one or more processors 702, a system control logic 708 connected to at least one of the processors 702, a system memory 704 connected to the system control logic 708, a non-volatile memory (NVM) 706 connected to the system control logic 708, and a network interface 710 connected to the system control logic 708.

[0083] The processor 702 may include one or more single-core or multi-core processors. The processor 702 may include any combination of general-purpose processors and special-purpose processors (e.g., graphics processors, application processors, baseband processors, etc.). In the embodiments of this document, the processor 702 may be configured to execute the following operations: Figure 3-6 One or more of the various embodiments shown.

[0084] In some embodiments, system control logic 708 may include any suitable interface controller to provide any suitable interface to at least one of processors 702 and / or any suitable device or component in communication with system control logic 708 .

[0085] In some embodiments, the system control logic 708 may include one or more memory controllers to provide an interface to the system memory 704. The system memory 704 may be used to load and store data and / or instructions. In some embodiments, the memory 704 of the electronic device 700 may include any suitable volatile memory, such as a suitable dynamic random access memory (DRAM).

[0086] The non-volatile memory 706 may include one or more tangible, non-transitory computer-readable media for storing data and / or instructions. In some embodiments, the non-volatile memory 706 may include any suitable non-volatile memory such as flash memory and / or any suitable non-volatile storage device, such as at least one of an HDD (Hard Disk Drive), a CD (Compact Disc) drive, and a DVD (Digital Versatile Disc) drive.

[0087] The non-volatile memory 706 may include a portion of storage resources installed on the device of the electronic device 700, or it may be accessible to the device but not necessarily a part of the device. For example, the non-volatile memory 706 may be accessed over a network via the network interface 710.

[0088] In particular, system memory 704 and non-volatile memory 706 may each include a temporary copy and a permanent copy of instructions 720. Instructions 720 may include instructions that, when executed by at least one of processors 702, cause electronic device 700 to implement the aforementioned methods. In some embodiments, instructions 720, hardware, firmware, and / or software components thereof may additionally or alternatively be located in system control logic 708, network interface 710, and / or processor 702.

[0089] The network interface 710 may include a transceiver for providing a radio interface for the electronic device 700, thereby communicating with any other suitable devices (such as a front-end module, an antenna, etc.) via one or more networks. In some embodiments, the network interface 710 may be integrated with other components of the electronic device 700. For example, the network interface 710 may be integrated with at least one of the system memory 704, the non-volatile memory 706, and a firmware device (not shown) having instructions of the processor 702. When at least one of the processors 702 executes the instructions, the electronic device 700 implements one or more of the various embodiments described herein.

[0090] The network interface 710 may further include any suitable hardware and / or firmware to provide a multiple-input multiple-output radio interface. For example, the network interface 710 may be a network adapter, a wireless network adapter, a telephone modem, and / or a wireless modem.

[0091] In one embodiment, at least one of the processors 702 may be packaged together with logic for one or more controllers of the system control logic 708 to form a system-in-package (SiP). In one embodiment, at least one of the processors 702 may be integrated on the same die with logic for one or more controllers of the system control logic 708 to form a system-on-chip (SoC).

[0092] Electronic device 700 may further include an input / output (I / O) device 712. I / O device 712 may include a user interface, thereby enabling a user to interact with electronic device 700; peripheral component interfaces may also be designed to enable peripheral components to interact with electronic device 700. In some embodiments, electronic device 700 may further include a sensor that can be used to determine at least one of environmental conditions and location information related to electronic device 700.

[0093] In some embodiments, the user interface may include, but is not limited to, a display (e.g., a liquid crystal display, a touch screen display, etc.), a speaker, a microphone, one or more cameras (e.g., a still image camera and / or a video camera), a flashlight (e.g., an LED flash), and a keyboard.

[0094] In some embodiments, the peripheral component interface may include, but is not limited to, a non-volatile memory port, an audio jack, and a power interface.

[0095] In some embodiments, the sensors may include, but are not limited to, a gyroscope sensor, an accelerometer, a proximity sensor, an ambient light sensor, and a positioning unit. The positioning unit may also be part of or interact with the network interface 710 to communicate with components of a positioning network (e.g., a Global Positioning System (GPS) satellite).

[0096] It should be understood that the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the electronic device 700. In other embodiments of the present application, the electronic device 700 may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0097] Program code can be applied to input instructions to perform the functions described herein and generate output information. The output information can be applied to one or more output devices in a known manner. For the purposes of this application, a processing system includes any system having a processor such as, for example, a digital signal processor (DSP), a microcontroller, an application specific integrated circuit (ASIC), or a microprocessor.

[0098] Program code can be implemented with a high-level programming language or an object-oriented programming language to communicate with the processing system. Where necessary, program code can also be implemented with assembly language or machine language. In fact, the mechanism described herein is not limited to the scope of any particular programming language. In either case, the language can be a compiled language or an interpreted language.

[0099] One or more aspects of at least one embodiment may be implemented as representative instructions stored on a computer-readable storage medium, which represent various logic within a processor and, when read by a machine, causes the machine to fabricate logic for performing the techniques described herein. These representations, known as "IP cores," may be stored on a tangible, computer-readable storage medium and supplied to various customers or manufacturing facilities to load into fabrication machines that actually manufacture the logic or processor.

[0100] It should be noted that the order of the embodiments of the present invention described above is for illustrative purposes only and does not represent the superiority or inferiority of the embodiments. The above description is of specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0101] The various embodiments in this specification are described in a progressive manner. Similar parts between the various embodiments can be referred to in conjunction with each other. Each embodiment focuses on the differences from other embodiments. In particular, the device embodiments are generally similar to the method embodiments, so the description is relatively simple. For relevant parts, refer to the description of the method embodiments.

[0102] Those skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware, or may be accomplished by a program to instruct the relevant hardware, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk, or an optical disk, etc. as described above.

[0103] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.

Claims

1. A data processing method, wherein the data includes ordered data to be processed sequentially, characterized in that: The steps include: a judgment step of obtaining current data from the data to be processed, and determining that the current data is the ordered data if the current data contains a group data flag, wherein the group data is a set of mutually related ordered data; The group data scheduling step includes determining, based on the group data flag, whether the current data is the same as the data that should be processed first in the group data to which it belongs; if so, using the current data as the current data to be processed; if not, using the data that should be processed first as the current data to be processed; wherein the step of determining whether the current data is the same as the data that should be processed first in the group data to which it belongs includes: A processing status flag is set in the group data, and the processing status flag includes: pending status, processing status or processed status, After obtaining a data to be processed, the processing status flag of the data to be processed is set to the pending state. Compare the data to be processed with the data of the same group whose processing status is marked as being in a processing state or an unprocessed state, and select the data with the smallest sequence number as the current data to be processed; The processing step is to distribute the current data to be processed to an online transaction process to process the current data to be processed.

2. The method according to claim 1, wherein The data also includes common data that does not require sequential processing. In the judging step, if the current data does not include the group data flag, the current data is determined to be the common data. In the step of determining the current data to be processed, the current data is used as the current data to be processed, and the current data to be processed is allocated to a concurrent processing queue to process the current data to be processed.

3. The method according to claim 1, wherein The method further includes a pre-processing step, wherein the pre-processing step assigns a group data mark to a group of sequential data that are mutually related in the data to be processed.

4. The method according to claim 3, wherein The pre-processing step further includes assigning intra-group sequence numbers to the data in the group data according to a required processing order.

5. The method according to claim 4, wherein The preprocessing step also includes assigning a batch number and a group number to the data in the group data, one batch number corresponds to multiple group numbers, and a piece of data in the ordered data is uniquely determined by the group data flag, the batch number, the group number and the sequence number within the group.

6. The method according to claim 5, wherein The group data flag is used to indicate that the data is ordinary data or the ordered data that requires continuous deductions or the ordered data that requires sequential deductions.

7. The method according to any one of claims 1 to 6, wherein: It also includes assigning a processing status flag to the data in the group data to indicate whether the data in the group data has been processed, wherein the processing status flag is used to indicate that the data in the group data is in a state of being processed, being processed, or being processed.

8. The method according to claim 7, wherein In the group data scheduling step, the data with the smallest sequence number in the group and the processing status flag indicating that the data is not processed is selected as the current data to be processed.

9. A data processing device, characterized in that: The method for implementing any one of claims 1 to 8 comprises: a pre-processing unit, configured to assign a group data flag to a group of sequential data that are mutually related in all the data to be processed; A judgment unit, configured to determine whether the current data in the data to be processed is the ordered data; a group data scheduling unit, configured to determine the current data to be processed when the current data is the ordered data; The online transaction unit is used to process the current data to be processed.

10. An electronic device, characterized in that: include: at least one memory for storing computer instructions; At least one processor, when executing the computer instructions, implements the method according to any one of claims 1 to 8.

11. A computer-readable storage medium, characterized in that The computer-readable storage medium stores at least one computer instruction, and the at least one instruction is loaded and executed by a processor to implement the method according to any one of claims 1 to 8.

12. A computer program product, characterized in that The computer program product comprises computer instructions, and when the computer instructions are executed, the method according to any one of claims 1 to 8 is implemented.

Citation Information

Patent Citations

  • Processing method and device for account transactions

    CN107369088A