FACTOID # 153: Canadians drink more fruit juice than the citizens of any other nation - more than one litre for each person, every week.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS   

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Distributed transaction

A distributed transaction is an operations bundle, in which two or more network hosts are involved. Usually hosts provide transactional resources, while transaction manager is responsible for creating and managing global transaction that encompasses all operations against such resources. Distributed transactions, as any other transactions, must have all four ACID properties, where atomicity guarantees all-or-nothing outcome of the unit of work (operations bundle). An acid (often represented by the generic formula AH) is typically a water-soluble, sour-tasting chemical compound. ...


Open Group, a vendor consortium, proposed X/Open Distributed Transaction Processing (DTP) Model, which became a de-facto standard for behavior of transaction model components.


Databases are common transactional resources and often transaction spans couple of them. In this case distributed transaction can be seen as a database transaction that must be synchronized (or provide ACID properties) among multiple participating databases which are distributed among different physical locations. A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions. ... Synchronization is coordination with respect to time. ... A database is a collection of data elements (facts) stored in a computer in a systematic way, such that a computer program can consult it to answer questions. ... In computer science, distributed computing studies the coordinated use of physically distributed computers. ...


A common algorithm for ensuring correct completion of a distributed transaction is the two-phase commit. This algorithm is usually applied for updates able to commit in a short period of time, ranging from couple of milliseconds to couple of minutes. Flowcharts are often used to represent algorithms. ... In theoretical computer science, correctness of an algorithm is asserted when it is said that the algorithm is correct with respect to a specification. ... In computer science, especially in durability studies, a two phase commit allows data to be written to more than one location and for all operations to be rolled back, if one or more of the operations fails. ... In the context of computer science and data management, commit refers to the idea of making permanent a set of tentative changes, such as at the end of a transaction. ...


There are also long-lived distributed transactions, for example a transaction to book a trip, which consists of booking a flight, a rental car and a hotel. Since booking the flight might take up to a day to get a confirmation, two-phase commit is not applicable here, it will lock the resources for this long. In this case more sophisticated techniques that involve multiple undo levels are used. The way you can undo the hotel booking by calling a desk and cancelling the reservation, a system can be designed to undo certain operations (unless they are irreversibly finished).


In practice, long-lived distributed transactions are implemented in systems based on Web Services. Usually these transactions utilize principles of Compensating Transactions, Optimism and Isolation Without Locking. X/Open standard does not cover long-lived DTP. A web service is a collection of protocols and standards used for exchanging data between applications. ...


A couple of modern technologies, including Enterprise Java Beans (EJBs) and Microsoft Transaction Server (MTS) fully support distributed transaction standards. The Enterprise Java Beans specification is one of the several Java APIs in the Java 2 Platform, Enterprise Edition. ...


References


  Results from FactBites:
 
Distributed Transactions (3504 words)
XA resources--These are used by a transaction manager in coordinating the transaction branches of a distributed transaction.
It associates and disassociates distributed transactions with the transaction branch operating in the XA connection instance that produced this XA resource instance.
, disassociating the transaction branch from its distributed transaction.
Distributed Transactions Concepts (4769 words)
A session tree is a hierarchical model of the transaction that describes the relationships among the nodes that are involved.
Consequently, distributed transaction processing is more complicated, because Oracle must coordinate the committing or rolling back of the changes in a transaction as a self-contained unit.
The distributed transaction commits with the highest global SCN among all the databases involved.
  More results at FactBites »

 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your location
Your comments
Please enter the 5-letter protection code


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.