Distributed  Transaction Processing

Home
Research
Publications
Funded Projects
European
Teaching
Professional
Administration

 

 

 

 

Introduction

Distributed transaction processing has become a very important part of distributed computing. Our research originating from the development of the peer-to-peer transactional paradigm identified a number of open issues not only relating to peer but to transaction processing in general. Such issues were the need for reconciling chained and unchained transactions, context management, multiprotocol and transaction-model independent transaction managers and the manipulation of transactional objects. In more detail our work has concentrated and contributed to the following research topics of distributed transaction processing.

 

Peer-to-Peer Transactional paradigm

Our Work on distributed transactions is build around the peer-to-peer model.  The peer-to-peer (P2P) transactional environment supports a general model of distributed computation.  The application programs are distributed and cooperate, as equals, to execute the transactions of a distributed computation. It is a different and a more general model than that supported in the Client-Server (C/S) paradigm. This richness, however, has certain ramifications in most modules that support a distributed transactional environment. The peer-to-peer model affects the transactional paradigm, the communication paradigm, transaction management, and commit processing as well as other related functions. Work on this area originated from IBM Research Triangle Park and during my stay at IBM I have contributed in every aspect of this model's development.  Finally, in 1994 an IBM book publication, authored by myself, A. Citron and k. Britton, presented the complete P2P transactional architecture embedded in IBM's SNA communication protocol. This architecture is being implemented by all IBM's and some non-IBM industrial transactional offerings. In  "The Peer-to-Peer Cooperative Distributed Transactional Environment" we describe that work in an SNA independed manner providing insights and comparisons to the client-server model. We present a comprehensive study of IBM's peer-to-peer distributed transactional environment.  This includes discussion of the peer-to-peer transactional model and its approach towards the new challenges posed by this widely-used paradigm.  The paper, also shows that the peer-to-peer can be thought of as a distributed cooperative operating environment. Other parts of our work describing how the peer-to-peer handles certain transactional modules (i.e., transaction identifier management)  can be found in the last two references below while other modules such as the description of  IBM's PN commit protocol and transactional negotiation protocols are in the pipeline. The work in this area gave also birth to the following research topics.

Related Publications:

Samaras G., K. Britton,  A. Citron, "Systems Network Architecture, Sync Point Services Architecture", SC31-8134-00, September 1994. Presents IBM's distributed transaction processing architecture. Published and distributed by IBM. This architecture is being implemented by IBM's VM, DB2, CICS, AS400, Transarc's Encina, Tandem and Bull

Samaras, G. and Citron, A., "The Peer-to-Peer Cooperative Distributed Transactional Environment". To the International Journal of  Intelligent Cooperative Information Systems

Samaras, G., S.D. Nikolopoulos, K. Britton, A. Citron, "Transaction Identifier Management in the Peer-to-Peer Distributed Transactional Environment". Proc. 9th International Conference on Parallel and Distributed Computing Systems (PDCS'96), Dijon , France, Sept. 1996.

Samaras, G., S.D. Nikolopoulos, K. Britton, A. Citron, "Efficient Algorithms for Managing Transaction Identifiers in the Peer-to-Peer Distributed Transactional Environment".  Proc. 5th Hellenic Conference on Informatics, Athens, December 1995.

 

Chained and Unchained Transactions

Distributed transactions require transaction processing support either from their communications protocols or from protocols at some higher layer.  The peer-to-peer environment is supported by IBM's SNA (i.e., LU6.2) and follows the chained transactional paradigm. As OSI/TP began specifying the flows for transactional support, the notion of unchained transactional support as opposed to the chained nature of LU6.2 transactions gradually developed (OSI/TP supports both chained and unchained transactions). This makes the coexistence of applications requiring both kinds of transaction processing support on a platform that supports only chained transactions problematic and reduces the interoperability of communication protocols providing transactional support. Our work identified and addressed the above problems by identifying the extra functionality provided by unchained transactions over chained transactions. It then showed how a protocol/platform that provides only chained transactional support can provide the functionality of unchained transactions, and without using the notion of chained or unchained transactions at the API. It also studied an efficient way by which protocols providing only chained support can provide the functionality of unchained transactions using the X/Open TX API based on OSI/TP's Chained and Unchained Functional Units. In all solutions the notion of "context" as is presented below was instrumental. 

Related Publications:

Samaras, G., Citron, A., Kshemlakyani, A., "Reconciling Communication Chained and Unchained Transactional Support in Distributed Systems",  Journal of Systems Architecture, 43(1-5) SYSARC-108, March, 1997.

Samaras, G., Citron, A., Kshemlakyani, A., "Unchained Transactions and SNA's LU6.2',  Proc. 5th Int.  Workshop on High Performance Transaction Systems (HPTS), Asilomar, September 1993.

Samaras, G., Citron, A., Kshemlakyani, A., "Reconciling Communication Transactional  Support for Chained and Unchained Transactions",  Proc. 2nd International Conference on Computer Applications to Engineering Systems, IEE and IEEE,  Nicosia, Cyprus, July 1993.  

Samaras, G., Citron, A., "Unchained Transactions in the Peer-to-Peer Chained environment of  SNA's LU6.2',  Proc. 8th International Symposium on Computer Systems, November 1993.

 

Context Management in Distributed Transactions and Systems

Recent trends indicated that the existing process/thread support provided by systems in unsuitable for a range of application programs. A new processing paradigm is now evolving to fill this gap and to provide more flexibility to distribute tasks across processes/threads. This emerging paradigm allows multiple program threads to work on the task, each thread to work on a different task, or  a thread to work on multiple task for greater design flexibility or due to system constraints such as real-time demands and a high load on tasking. We use the definition of context to capture the notion of logical locus of control. The context of the work being currently executed must be identifiable uniquely by the application, the Resource Managers and the Transaction Manager because each context represents different work. In this work we have identified this emerging paradigm, defined context, the Context manager and its user interface, and show how context is used for local and distributed transaction processing. We high-light the role of context in a multithreaded, real-time, high tasking operating environment, provide different  practical styles of transaction management using context, and show how to use context management to solve deadlocks, protocol violations and loopbacks.  The result of this work has been published in "Context Management and its Applications to Distributed Transactions". The VM operating Shared File System has been enhanced to provide a version of the context management support presented in this work. An expanded version of the prementioned paper has been submitted for further publication. This work also clarifies XOPEN's/XA++ recently identified problems regarding the vagueness surrounding the notion of  "thread of control".

Related Publications:

Samaras, G., A., Kshemlakyani, Citron,, A. "Context Management and its Applications to Distributed Transactions". Proc. 16th IEEE International Conference on Distributed Computing Systems  (DCS96) Hong Kong, May 1996.

A., Kshemlakyani, Samaras, G., Citron,, A. "Context Management and its Applications to Distributed Transactions", Distributed Systems Engineering Journal, 5(1):1-11, March 1998.