Transaction control device, transaction control method, and program
The transaction control device manages task assignments based on transaction reception order, dynamically reallocating tasks to maintain throughput by releasing tasks from completed transactions and reallocating to next transactions, addressing throughput issues in parallel processing systems with varying data processing times.
Patent Information
- Application Number
- JP2020156152
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-09-17
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2040-09-17
AI Technical Summary
In parallel processing systems, variations in data processing time lead to decreased throughput due to threads waiting for transactions with longer processing times, especially in tasks like video or audio data conversion where processing time varies significantly.
A transaction control device and method that assigns tasks to transactions in the order of reception, releases tasks from completed transactions to later transactions, and reallocates tasks to next transactions when necessary, ensuring tasks are executed in the order of completion.
This approach suppresses the decrease in throughput by managing task assignments dynamically, allowing parallel processing to maintain efficiency even with varying transaction processing times.
Smart Images

Figure 0007608760000001 
Figure 0007608760000002 
Figure 0007608760000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to transaction control. [Background technology]
[0002] In order to shorten the processing time of a computer, multiple processes are executed in parallel. Patent Document 1 discloses a data parallel processing system that generates multiple threads and executes multiple transaction processes in parallel. The data parallel processing system of Patent Document 1 prevents overtaking of completions by controlling waiting to see whether the transaction processed by each thread can be completed (file output). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2014-211782 A Summary of the Invention [Problem to be solved by the invention]
[0004] In the system according to Patent Document 1, a thread that processes a subsequent transaction needs to wait for the completion of the preceding transaction before completing the processing. However, for example, in processing such as converting video data or audio data, the data processing amount for each certain processing unit (time, etc.) varies due to the characteristics of the data. For example, even if processing is performed by dividing the processing units into 10-second intervals, the processing time may differ because the contents are different between one interval and another interval. In this way, when the processing time varies greatly between transactions, the degree of parallelism decreases as the thread that processes the later transaction waits for the completion of the transaction that takes a long time to process. This poses the problem of reduced throughput.
[0005] An object of the present disclosure is to provide a transaction control device and the like that suppresses a decrease in throughput in parallel processing of transactions that need to be completed in the order in which they are received. [Means for solving the problem]
[0006] A transaction control device according to the present disclosure includes a task allocation means for assigning tasks to transactions, each of which includes processes that are executed in the order of a first process and a second process, in the order in which the transactions are received, and a transaction processing means for processing the transactions by executing the tasks assigned to the transactions, wherein if the first process of a later-accepted transaction is completed before the earlier-accepted transaction is completed, the transaction processing means cancels the task allocation to the later-accepted transaction, and if no task is assigned to the transaction received next after the previously-accepted transaction when the earlier-accepted transaction is completed, the transaction processing means assigns the task assigned to the previously-accepted transaction to the next-accepted transaction.
[0007] A transaction control method according to the present disclosure accepts transactions including processes that are executed in the order of a first process and a second process, assigns tasks in the order in which the transactions are received, and processes the transactions by executing the tasks assigned to the transactions; if the first process of a later-accepted transaction is completed before the earlier-accepted transaction is completed, the task assignment to the transaction is released; and if no task is assigned to the transaction accepted next to the first transaction when the transaction is completed, the task assigned to the completed transaction is assigned to the next-accepted transaction.
[0008] The program of the present disclosure causes a computer to execute the following steps: accepting a transaction including processes that are executed in the order of a first process and a second process; allocating tasks in the order in which the transactions are received; processing the transactions by executing the tasks assigned to the transactions; if the first process of a later-accepted transaction is completed before the earlier-accepted transaction is completed, de-assigning the task to the transaction; and, if no task is assigned to the next-accepted transaction when the first transaction is completed, assigning the task assigned to the completed transaction to the next-accepted transaction. Effect of the Invention
[0009] According to the present disclosure, it is possible to suppress a decrease in throughput in parallel processing of transactions that need to be completed in the order in which they are received. [Brief description of the drawings]
[0010] [Figure 1A] 1 is a block diagram illustrating a configuration of a transaction control device 102 according to a first embodiment. [Figure 1B] FIG. 1 is a diagram illustrating an example of a system to which a transaction control device 102 is applied. [Diagram 2] FIG. 13 illustrates an example of a state in which a transaction has been accepted. [Diagram 3] 13 is a flowchart showing an example of an allocation process in the transaction control device 102. [Figure 4] FIG. 13 is a diagram illustrating an example of a state in which all tasks are assigned to a transaction. [Diagram 5] 13 is a flowchart showing an example of a task control process in the transaction controller 102. [Figure 6] FIG. 5 is a diagram showing a state subsequent to the state shown in FIG. 4. [Figure 7]FIG. 7 is a diagram showing a state subsequent to the state shown in FIG. 6. [Figure 8] FIG. 8 is a diagram showing a state subsequent to the state in FIG. 7. [Figure 9] FIG. 9 is a diagram showing a state subsequent to the state in FIG. 8. [Figure 10] FIG. 13 illustrates an example of a state in which a transaction including group information has been accepted. [Figure 11] FIG. 13 is a diagram illustrating an example of a state in which tasks are assigned to each group. [Figure 12] FIG. 11 is a block diagram illustrating a configuration of a transaction control device 102 according to a third embodiment. [Figure 13] 13 is a flowchart showing an example of the operation of the transaction control device 102 according to the third embodiment. [Figure 14] FIG. 5 is a block diagram showing an example of the hardware configuration of a computer 500. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. [First embodiment] [composition] Fig. 1A is a block diagram illustrating an example of the configuration of a transaction control device 102 according to the first embodiment. The transaction control device 102 has a transaction reception management unit 104, a task allocation unit 105, a waiting task management unit 106, and a transaction processing unit 107. Fig. 1B is a diagram illustrating an example of a system to which the transaction control device 102 is applied. The transaction control device 102 is connected to a processing request device 101 on which an application is executed, and a storage device 103 on which processing results are stored.
[0012] A transaction reception / management unit 104 receives application processing requests from one or more processing request devices 101 as transactions and manages them.
[0013] A transaction is composed of a predetermined process for data (hereinafter referred to as data processing) and a completion process performed on the result of the data processing. The data processing may be a predetermined calculation process for the data specified in the transaction. The completion process may be a process of outputting (storing) the result of the data processing to one or more storage devices 103.
[0014] The data process is an embodiment of a first process in the present disclosure, and the completion process is an embodiment of a second process in the present disclosure.
[0015] If the transaction is a database transaction, the data processing may be processing for a specified command on data specified in the transaction. In this case, the completion processing may be a commit process that outputs (stores) and confirms the results of the data processing.
[0016] In the present disclosure, a transaction is processed by a task assigned to that transaction. Here, a task represents a unit of processing, and one task can process one transaction at a given moment. In other words, one task cannot process multiple transactions simultaneously. One or more tasks exist within a device, and the number of tasks can be determined arbitrarily by the system user, etc., based on the system's purpose and resources (number of CPU (Central Processing Unit) cores, etc.).
[0017] The transaction reception manager 104 manages transactions in the order in which they are received. For example, the transaction reception manager 104 manages the transactions in a queue. For example, the transaction reception manager 104 may include a queue that stores the identifiers of the transactions in the order in which they are received.
[0018] The waiting task management unit 106 manages tasks that are not assigned to a transaction. The waiting task management unit 106 may manage tasks in a stack, a queue, or in the order of task identification numbers.
[0019] The task allocation unit 105 allocates a waiting task managed by the waiting task management unit 106 to the leading transaction in the queue of the transaction reception / management unit 104 , and passes it to the transaction processing unit 107 .
[0020] In the transaction processing unit 107, a task processes a transaction and outputs the processing result to the storage device 103. In the transaction processing unit 107, multiple tasks may run simultaneously. That is, the transaction processing unit 107 can process multiple transactions in parallel. However, the processing results are output in the order in which the transaction control device 102 accepts the transactions. The transaction processing unit 107 may include a queue that stores the identifiers of the transactions in the order in which they are delivered.
[0021] [Operation] The operation of the transaction control device according to the first embodiment will be described with reference to FIGS.
[0022] Fig. 2 is a diagram showing an example of a state in which transaction reception / management unit 104 has received a transaction. In Fig. 2, transactions are managed in a queue in the order in which they are received. Arrows in transaction reception / management unit 104 indicate queues.
[0023] 2, there are four tasks as an example, and the tasks are not assigned to any transactions, and the transactions are waiting for a task to be assigned to them. The arrows in the task waiting management unit 106 indicate queues.
[0024] 3 is a flowchart showing an example of the allocation process of task allocation unit 105. First, task allocation unit 105 takes out one transaction at the top of the queue in transaction reception management unit 104 ("transaction Tx A" in FIG. 2) and one task at the top of the queue in task waiting for allocation management unit 106 ("task 1" in FIG. 2). Next, task allocation unit 105 assigns the taken-out task to a transaction and passes it to transaction processing unit 107. This is repeated until either the queue of transactions in transaction reception management unit 104 or the queue of tasks in task waiting for allocation management unit 106 becomes empty (steps S01 to S05).
[0025] Fig. 4 is a diagram showing a state in which all tasks have been assigned to transactions by the task allocation unit 105 and handed over to the transaction processing unit 107, following the state in Fig. 2. In the transaction processing unit 107, task and transaction pairs 203A to 203D are managed in a queue in the order in which the transactions were received, that is, in the order in which they were handed over from the task allocation unit 105. In Fig. 4, the arrows in the transaction processing unit 107 indicate the queues. In Fig. 4, transaction Tx E in the transaction reception management unit 104 is waiting to be processed without being assigned a task.
[0026] FIG. 5 is a flowchart showing an example of task control processing of the transaction controller 102 after a task is handed over to the transaction processor 107.
[0027] The transaction processing unit 107 executes each task and performs data processing of the transaction (step E01). For example, the transaction processing unit 107 executes tasks 1, 2, 3, and 4 to process transactions Tx A, Tx B, Tx C, and Tx D.
[0028] When data processing of a transaction is completed, each task suspends the processing of the transaction and waits. Each task may notify the end of data processing to transaction processing unit 107. When transaction processing unit 107 detects the end of data processing in a task, it determines whether the transaction to which the task is assigned is at the top of the queue.
[0029] If the transaction is not at the head of the queue ("No" in step E02), the preceding transaction has not been completed and therefore completion processing is not performed. In this case, transaction processing unit 107 releases the task from the transaction (step E08). Assignment waiting task management unit 106 re-registers the released task in the queue within assignment waiting task management unit 106 (step E09).
[0030] FIG. 6 is a diagram showing a state in which, after the state in FIG. 4, data processing of transaction Tx B processed by task 2 is completed before the completion processing of the preceding transaction Tx A processed by task 1 is completed. In FIG. 6, task 2 is released from the allocation of transaction Tx B and registered in the queue of task waiting management unit 106. Thereafter, by the operation of task allocation unit 105 (FIG. 3), task 2 is assigned to transaction Tx E waiting in transaction reception management unit 104. After being handed over to transaction processing unit 107, transaction processing unit 107 processes transaction Tx E by executing task 2. FIG. 7 is a diagram showing a state in which task 2 is assigned to transaction Tx E and task 1 has completed data processing after the state in FIG. 6.
[0031] Returning to the explanation of Fig. 5, if the transaction is at the top of the queue (step E02: Yes), the transaction processing unit 107 resumes the execution of the task assigned to the transaction and performs completion processing of the transaction (step E03). When the completion processing is completed, the transaction processing unit 107 deletes the transaction from the queue (step E04). If another transaction remains in the queue (step E05: Yes) and no task has been assigned to the new top transaction in the queue (step E06: No), the transaction processing unit 107 reallocates the task that was assigned to the transaction whose completion processing has been completed to the top transaction (step E07).
[0032] If another transaction remains in the queue of the transaction processing unit 107 (Yes in step E05) and a task has been assigned to the new top transaction in the queue (Yes in step E06), the waiting task management unit 106 registers the task that was assigned to the transaction whose completion processing has been completed in the queue as a waiting task (step E10).
[0033] Fig. 8 is a diagram showing a state (after step E07) in which task 1, which was assigned to transaction Tx A whose completion processing has been completed, is reallocated to transaction Tx B after the state in Fig. 7. In Fig. 8, transaction Tx B has been processed up to the data processing stage and is at the head of the queue. Therefore, transaction processing unit 107 executes task 1 to complete the transaction (step E03). When the completion processing of transaction Tx B is completed, the transaction is deleted from the queue (step E04).
[0034] When transaction Tx C, which is the new head of the queue, is confirmed (step E05: Yes), task 3 is already assigned to it (step E06: Yes), so the allocation waiting task management unit 106 re-registers task 1 in the queue (step E10). Fig. 9 shows a state in which, after the state in Fig. 8, transaction Tx B, whose completion process has been completed, is deleted from the queue of the transaction processing unit 107, and task 1 is re-registered as a task waiting to be assigned.
[0035] [effect] According to the first embodiment, it is possible to suppress a decrease in throughput in parallel processing of transactions that need to be completed in the order in which they are received.
[0036] The reason is that if data processing of a later accepted transaction is completed before the earlier accepted transaction is completed, the transaction processing unit 107 cancels the task allocation to the later transaction. Also, the task allocation unit 105 assigns the deallocated task to a new transaction. Furthermore, if a task is not assigned to a transaction accepted next to a completed transaction, the transaction processing unit 107 assigns the task that was assigned to the completed transaction to the next accepted transaction.
[0037] [Second embodiment] In the first embodiment, an example was described in which the order in which transactions are completed is guaranteed to be the order in which they were received. In the second embodiment, a case in which transactions that do not need to follow the order of completion are mixed will be described. Also, a case in which multiple ranges (groups) are provided in which the order in which transactions are completed is guaranteed will be described. Note that there may be only one group in which the order in which transactions are completed is guaranteed.
[0038] In the second embodiment, the description of the configuration and operation similar to those of the first embodiment may be omitted.
[0039] [composition] In the second embodiment, some or all of a transaction belongs to a group. The transaction reception / management unit 104 receives a transaction including group information indicating which group the transaction belongs to. The group information is assigned by an application based on an arbitrary rule, for example.
[0040] As in the first embodiment, the task allocation unit 105 assigns a task to a transaction and passes it to the transaction processing unit 107. The transaction processing unit 107 reads the group information of the transaction and provides a queue for each group. Then, the transaction processing unit 107 processes the transaction by controlling the task for each group, as in the first embodiment. Note that the transaction processing unit 107 does not need to manage transactions that do not belong to a group in a queue.
[0041] The transaction processing unit 107 may output the transaction processing results to different storage devices 103 for each group. The storage devices 103 may store the transaction processing results in different files for each group.
[0042] Fig. 10 is a diagram showing an example of a state in which transactions including group information have been accepted. In Fig. 10, transactions Tx A and Tx C include group information indicating that they belong to group α. Transaction Tx B does not include group information. Transaction Tx D includes group information indicating that it belongs to group β.
[0043] Fig. 11 is a diagram showing an example of a state in which a queue is provided for each group after the state of Fig. 10. In Fig. 11, the end order of transactions Tx A and Tx C is controlled in group α, and the end order of transaction Tx D is controlled in group β. Furthermore, the end order of transaction Tx B is not controlled. When a transaction belongs to a group, for example, the process shown in Fig. 5 is performed for each queue of the group.
[0044] Specifically, when data processing of a transaction that belongs to the same group and is accepted later is completed before the previously accepted transaction is completed, transaction processing unit 107 releases the task allocation to the subsequently accepted transaction. When a transaction is completed, if a task is not assigned to a transaction that belongs to the same group as the completed transaction and is accepted next to the completed transaction, transaction processing unit 107 assigns the task that was assigned to the completed transaction to the subsequently accepted transaction. This controls the order in which transactions within a group are completed.
[0045] If a transaction does not belong to a group, the transaction processing unit 107 does not release the task allocation until the transaction is completed. That is, for example, after completing data processing of a transaction that does not belong to a group, the transaction processing unit 107 continues to perform completion processing regardless of whether other transactions have been completed.
[0046] [effect] According to the second embodiment, in parallel transaction processing, even when transactions are terminated for each group in the order in which they were received, it is possible to suppress a decrease in throughput. This is because the transaction processing unit 107 manages the queue based on the group information of the transaction. Also, according to the second embodiment, it is possible to suppress a decrease in throughput even when processes that do not need to maintain the order of transaction termination are mixed.
[0047] [Third embodiment] Another embodiment of the present disclosure will be described. Fig. 12 is a block diagram illustrating a configuration of a transaction control device 102 according to a third embodiment. In the third embodiment, the transaction control device 102 includes a task allocation unit 105 and a transaction processing unit 107. Descriptions of configurations similar to those of the first embodiment will be omitted in the third embodiment.
[0048] In the third embodiment, the task allocation unit 105 accepts a processing request from an application of an external device (not shown) as a transaction. The transaction includes a first process and a second process that are executed in that order. The transaction processing unit 107 processes the transactions in the order in which they are received. The transaction processing unit 107 executes multiple tasks in parallel and processes the transactions in parallel.
[0049] [Operation] 13 is a flowchart showing an example of the operation of the transaction control device 102 according to the third embodiment. The task allocation unit 105 receives a transaction (step S101). The task allocation unit 105 assigns tasks to the transactions in the order in which the transactions are received (step S102). The transaction processing unit 107 executes the assigned tasks and performs a first process of the transaction (step S103).
[0050] If the first processing of the later accepted transaction is completed before the earlier accepted transaction is completed (step S104: No), the transaction processing unit 107 releases the task allocation to the transaction whose first processing has been completed (step S105). The released task is assigned to a new transaction in step S102.
[0051] When the first process is completed, if the previously accepted transaction has been completed ("Yes" in step S104), the transaction processing unit 107 continues to execute the assigned process and performs the second process (step S106).
[0052] When the second process ends and the transaction ends, if a task is assigned to the next transaction of the completed transaction ("Yes" in step S107), the transaction processing unit 107 puts the task that has completed the transaction on hold. The task put on hold is assigned to a new transaction in step S102.
[0053] If no task has been assigned to the transaction next to the completed transaction ("No" in step S107), the transaction processing unit 107 assigns the task that was assigned to the completed transaction to the next transaction (step S108).
[0054] The transaction processing unit 107 executes the reallocated task and performs the second process of the transaction (step S106).
[0055] [effect] According to the third embodiment, it is possible to suppress a decrease in throughput in parallel processing of transactions that need to be completed in the order in which they are received.
[0056] The reason is that if the first processing of a later accepted transaction is completed before the earlier accepted transaction is completed, transaction processing unit 107 cancels the task allocation to the later transaction. Also, if a task is not assigned to a transaction accepted next to a completed transaction, transaction processing unit 107 assigns the task assigned to the completed transaction to the next accepted transaction.
[0057] [Example of application] Each of the above-described embodiments can be applied to a system for processing a large amount of information in a short period of time, such as batch processing.
[0058] [Hardware configuration] In each of the above-described embodiments, each component of the transaction control device 102 is shown as a functional block. Some or all of the components of each device may be realized by any combination of a computer 500 and a program.
[0059] Fig. 14 is a block diagram showing an example of a hardware configuration of a computer 500. Referring to Fig. 14, the computer 500 includes, for example, a CPU (Central Processing Unit) 501, a ROM (Read Only Memory) 502, a RAM (Random Access Memory) 503, a program 504, a storage device 505, a drive device 507, a communication interface 508, an input device 509, an input / output interface 511, and a bus 512.
[0060] The program 504 includes instructions for implementing each function of each device. The program 504 is stored in advance in the ROM 502, the RAM 503, or the storage device 505. The CPU 501 implements each function of the transaction control device 102 by executing instructions included in the program 504. For example, the CPU 501 implements each function of the transaction control device 102 by executing instructions included in the program 504. The RAM 503 may also store data to be processed in each function.
[0061] The drive device 507 reads and writes data from the recording medium 506. The communication interface 508 provides an interface with a communication network. The input device 509 is, for example, a mouse or a keyboard, and receives information input from a system user or the like. The output device 510 is, for example, a display, and outputs (displays) information to the system user. The input / output interface 511 provides an interface with peripheral devices. The bus 512 connects these hardware components. The program 504 may be supplied to the CPU 501 via a communication network, or may be stored in advance in the recording medium 506, read by the drive device 507, and supplied to the CPU 501.
[0062] It should be noted that the hardware configuration shown in FIG. 14 is merely an example, and other components may be added, or some components may not be included.
[0063] There are various variations in the method of implementing the transaction control device 102. For example, each component of the transaction control device 102 may be implemented by any combination of a different computer and program. Furthermore, multiple components of the transaction control device 102 may be implemented by any combination of a single computer and program.
[0064] In addition, some or all of the components may be realized by general-purpose or dedicated circuits including a processor, etc., or a combination of these. These circuits may be configured by a single chip, or may be configured by multiple chips connected via a bus. Some or all of the components may be realized by a combination of the above-mentioned circuits, etc., and a program.
[0065] Furthermore, when some or all of the components are realized by multiple computers, circuits, etc., the multiple computers, circuits, etc. may be arranged in a centralized manner or in a distributed manner.
[0066] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above embodiments. Various modifications that can be understood by a person skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, the configurations in each embodiment can be combined with each other without departing from the scope of the present disclosure. [Explanation of symbols]
[0067] 101 Processing request device 102 Transaction Control Device 103 Storage device 104 Transaction reception management unit 105 Task Allocation Unit 106 Task Management Unit 107 Transaction Processing Unit
Claims
1. A task allocation means for assigning tasks to transactions including processes to be executed in the order of data processing and commit processing in the order in which the transactions are received; a transaction processing means for processing the transaction by executing a task assigned to the transaction; Equipped with The transaction processing means includes: When data processing of the later accepted transaction is completed before the earlier accepted transaction is completed, the task allocation to the later accepted transaction is cancelled; When the transaction is terminated, if a task is not assigned to the commit process of the transaction accepted next to the terminated transaction, the transaction control device assigns the task assigned to the terminated transaction to the next accepted transaction.
2. The transaction processing means includes: a queue for storing identifiers of transactions to be processed in the order in which the transactions are received; when data processing of the transaction is completed and the transaction whose data processing has been completed is not at the head of the queue, release the task assignment to the transaction whose data processing has been completed; 2. The transaction control device according to claim 1, wherein, when the transaction is completed, if there is a transaction at the head of the queue that has not been assigned a task, the task that was assigned to the completed transaction is assigned to the transaction at the head of the queue.
3. The system further includes a waiting task management unit for managing the tasks waiting for allocation, the task allocation means allocates the waiting task to the accepted transaction; the waiting task management means, when a task is not assigned to a transaction accepted next to the completed transaction, manages the task assigned to the completed transaction as the waiting task. The transaction control device according to claim 1 or 2.
4. The transactions include transactions belonging to a group; The transaction processing means includes: When data processing of a transaction that belongs to the same group and is accepted later is completed before the previously accepted transaction is completed, the task allocation to the subsequently accepted transaction is released; when the transaction is terminated, if a task is not assigned to the transaction that belongs to the same group as the terminated transaction and is accepted next after the terminated transaction, assigning the task that was assigned to the terminated transaction to the next accepted transaction; The transaction control device according to any one of claims 1 to 3.
5. the transaction processing means does not release the task allocation for a transaction not belonging to the group until the transaction is completed; The transaction control device according to claim 4.
6. the transaction processing means includes a queue for storing identifiers of transactions to be processed in the order of receipt of the transactions for each group to which the transactions belong; The transaction control device according to claim 4.
7. A transaction including operations to be executed in the order of data processing and commit processing is accepted, Assigning tasks to the transactions in the order in which they are received; Processing the transaction by performing tasks assigned to the transaction; If data processing of the later accepted transaction is completed before the earlier accepted transaction is completed, the task allocation to the transaction is released; when the transaction is terminated, if a task is not assigned to a commit process of a transaction accepted next to the terminated transaction, assigning the task assigned to the terminated transaction to the next accepted transaction; Transaction control method.
8. A step of accepting a transaction including operations to be executed in the order of a data process and a commit process; assigning tasks to the transactions in the order in which they are received; processing said transaction by executing a task assigned to said transaction; a step of canceling the task allocation to a transaction when data processing of the later accepted transaction is completed before the earlier accepted transaction is completed; a step of allocating the task assigned to the completed transaction to a next accepted transaction when no task has been assigned to a commit process of the next accepted transaction when the completed transaction is terminated; A program that causes a computer to execute the following.
Citation Information
Patent Citations
Selecting system for transaction processing task
JP1987247430A
Method and device for smoothly controlling load
JP1993204671A
Packet queuing, scheduling and ordering
JP2008512950A
Information processing apparatus, information processing method, and information processing program
JP2013196576A
Data parallel processing system, data parallel processing method, and program therefor
JP2014211782A