View Full Document

A Reservation-Based Extended Transaction Protocol



View the full content.
View Full Document
View Full Document

12 views

Unformatted text preview:

International Journal of Web Services Research Vol X No X 200X A Reservation Based Extended Transaction Protocol for Coordination of Web Services Wenbing Zhao Dept of Electrical and Computer Engineering Cleveland State University Cleveland OH 44115 wenbing ieee org Firat Kart L E Moser P M Melliar Smith Dept of Electrical and Computer Engineering University of California Santa Barbara Santa Barbara CA 93106 fkart moser pmms ece ucsb edu ABSTRACT Web Services can be used to automate business activities that span multiple enterprises over the Internet Such business activities require a coordination protocol to reach consistent results among the participants in the business activity In the current state of the art either classical distributed transactions or extended transactions with compensating transactions are used However classical distributed transactions lock data in the databases of different enterprises for unacceptable durations or involve repeated retries and compensating transactions can lead to inconsistencies in the databases of the different enterprises In this paper we describe a novel Reservation Protocol that can be used to coordinate the tasks of a business activity Instead of resorting to compensating transactions the Reservation Protocol employs an explicit reservation phase and an explicit confirmation cancellation phase We show how our Reservation Protocol maps to the Web Services Coordination specification and describe our implementation of the Reservation Protocol We compare the performance of the Reservation Protocol with that of the Two Phase Commit Protocol and Optimistic Two Phase Commit Protocol We also compare the probability of inconsistency of the Reservation Protocol with that of Compensating Transactions KEY WORDS Business Activity Continuous Availability Extended Transaction Model Relaxed Atomicity Reservation Protocol Transaction Processing Web Services INTRODUCTION Business activities often involve related tasks that are carried out over a long period of time in a loosely coupled distributed environment Web Services Champion Ferris et al 2002 make it possible to automate business activities across multiple enterprises over the Internet Such direct computer to computer interactions without human supervision or intervention provide speed improvements and cost reductions for distributed enterprise computing However such enterprise applications must operate with a high degree of availability reliability scalability and performance Problems in the operation of the Web Services can adversely affect the relationships between an enterprise and its customers suppliers and partners Resolving inconsistencies among the databases of multiple enterprises is difficult expensive timeconsuming and error prone much more so than within a database of a single enterprise Many enterprise applications are programmed using the transaction processing programming paradigm A transaction is a set of operations on the application state that exhibit the Atomicity Consistency Isolation and Durability ACID properties Gray and Reuter 1993 1 International Journal of Web Services Research Vol X No X 200X For distributed transactions commercial transaction processing systems have used the Two Phase Commit Protocol which involves a coordinator and multiple participants Gray and Reuter 1993 Although the Two Phase Commit Protocol might work well for coordination of operations within a single enterprise the use of the Two Phase Commit Protocol in distributed transactions that span multiple enterprises unavoidably involves the locking of a data record of one enterprise by another enterprise Even for successful transactions data records are locked for significant periods of time adversely affecting performance If the transaction coordinator fails this locking period might be too long for an enterprise to tolerate Optimistic Two Phase Commit Protocols Herlihy 1986 Kung and Robinson 1981 Thomasian 1998 do not lock database records but rather search for conflicts between operations on database records when transactions are committed with one or more transactions being aborted when a conflict is detected In principle Optimistic Two Phase Commit Protocols achieve the same degree of transaction isolation as the Two Phase Commit Protocol even though the record is not locked physically it is locked logically Optimistic Two Phase Commit Protocols gamble that conflicts are rare they achieve lower overheads when no conflicts occur at the expense of higher overheads when a conflict is detected Instead of implementing a business activity as a distribution transaction using the Two Phase Commit Protocol or an Optimistic Two Phase Commit Protocol a business activity might be implemented as an extended transaction where one or more localized transactions are executed and committed individually at each site as in the sagas strategy Garcia Molina and Salem 1987 When a business activity must be rolled back compensating transactions are applied to reverse the committed local transactions Although useful in many cases compensating transactions have their limitations One problem is the possibility of cascading compensations that result from relaxation of the isolation property i e before the compensating transaction is applied other transactions might see and depend on the results of the committed transaction and thus must also be compensated Identifying such transactions is difficult because there is no way to find them a priori Furthermore it might be difficult or impossible to compensate a committed transaction For example if an end of quarter audit transaction is executed immediately after a sales task is committed in a publicly traded company the sales are included in the total revenue reported to the public The completion of the audit transaction followed by the compensation of the sales task can result in inconsistencies In general the programming of compensating transactions is difficult and prone to error In this paper we present a novel reservation based extended transaction protocol that avoids the use of compensating transactions while achieving atomicity and consistency similar to or better than other existing extended transaction protocols Each task within a business activity is executed as two steps The first step involves an explicit reservation of resources according to the business logic For example if the task involves reserving two seats out of 200 available seats on an airline flight


Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view A Reservation-Based Extended Transaction Protocol and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view A Reservation-Based Extended Transaction Protocol and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?