Browse Prior Art Database

SYNCRONOUS PROCESSING SUSPENDING IN PARALLEL ENVIRONMENT

IP.com Disclosure Number: IPCOM000013485D
Original Publication Date: 1999-May-01
Included in the Prior Art Database: 2003-Jun-18
Document File: 4 page(s) / 77K

Publishing Venue

IBM

Abstract

In the Parallel Transaction Processing System environment, this queuing mechanism allows users to stop accessing target databases synchronously, thus enabling the databases to be maintained while data is being input into the system. This on-line transaction processing system is configured in such a way it has one or more queues and transaction data stored in the queues are processed sequentially by a single task or multiple tasks. Each task processes transactions from one queue in exactly the same way, so the tasks are as indistinguishable as clones. An overview of the system is shown in Figure 1. A Qin task stores transaction data in a queue. Qout tasks process transaction data from the queue in parallel. The system includes a Qin Control Database and a Qout Control Database with some controlling data. Queue1 Command Processing Task

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 40% of the total text.

Page 1 of 4

SYNCRONOUS PROCESSING SUSPENDING IN PARALLEL ENVIRONMENT

In the Parallel Transaction Processing System environment, this queuing mechanism allows users to stop accessing target databases synchronously, thus enabling the databases to be maintained while data is being input into the system.

This on-line transaction processing system is configured in such a way it has one or more queues and transaction data stored in the queues are processed sequentially by a single task or multiple tasks. Each task processes transactions from one queue in exactly the same way, so the tasks are as indistinguishable as clones. An overview of the system is shown in Figure 1. A Qin task stores transaction data in a queue. Qout tasks process transaction data from the queue in parallel. The system includes a Qin Control Database and a Qout Control Database with some controlling data.

Queue1

Command Processing Task

Command Information references

1. Previous queue-controlling mechanism

The previous queue-controlling mechanism is shown in Figure 2.

TRX1

Input Data

Qout Task 1

TRX TRX

Qin control DB Qout control DB

Qin Task

Target DB

Qout Task 2

Qout Tasks1 and 2 are clones.

Data stream

Figure 1. System Overview

(Last write point)

Reservation Start Pointer

Reservation Counter

Queue

TRX2

TRX3

TRX4

TRX5 TRX6

Qin Pointer
(1)

(Current last reservation)

Qout Pointer updated

(2)

(Previous last reservation)

Qout Pointer before updating

(4)

&

Figure 2. Previous Queue Mechanism

(3)

1

[This page contains 6 pictures or other non-text objects]

Page 2 of 4

The Qin task stores transaction data in sequential order, updating the Qin Pointer (as shown in Figure 2(1)). The Qin Pointer shows the position of the latest queue-in transaction data stored in the Qin Control Database. The Qout task has two main mechanisms: transaction reservation and transaction processing. In these mechanisms, the Qout task controls two kinds of pointer and a counter. One pointer is a Qout Pointer, and the other is a Reservation Pointer. The Qout Pointer shows the last reserved transaction, while the Reservation Pointer shows the starting point of reservation. The Reservation Counter counts reserved transactions. There is one Qout Pointer for each queue, and one Reservation Pointer and one counter for each Qout task. This three information is stored in the Qout Control Database. The transaction reservation and transaction processing of the Qout task are performed as follows (see Figure 2). Steps 1 to 3 are for the transaction reservation and steps 4 to 5 are for the transaction processing.
1. A Qout task sets the lock of the Qout Pointer in order to prevent updating by other tasks. The Qout Pointer points to TRX2 at this time (as shown in Figure 2 (2)).
2. The Qout task can reserve transaction data from the next the Qout Pointer to the Qin Pointer. In figure 2, it reserves from TRX3 to TRX6. The Reservation Pointer is now set to TRX3, the Reservation Counter is set to 4 (as shown in Figure 2 (4)), an...