Federated Transaction Management with Snapshot Isolation
Federated transaction management (also known as multidatabase transaction management in the literature) is needed to ensure the consistency of data that is distributed across multiple, largely autonomous, and possibly heterogeneous component databases and accessed by both global and local transactions. While the global atomicity of such transactions can be enforced by using a standardized commit protocol like XA or its CORBA counterpart OTS, global serializability is not self-guaranteed as the underlying component systems may use a variety of potentially incompatible local concurrency control protocols. The problem of how to achieve global serializability, by either constraining the component systems or implementing additional global protocols at the federation level, has been intensively studied in the literature, but did not have much impact on the practical side. A major deficiency of the prior work has been that it focused on the idealized correctness criterion of serializability and disregarded the subtle but important variations of SQL isolation levels supported by most commercial database systems.
This paper reconsiders the problem of federated transaction management, more specifically its concurrency control issues, with particular focus on isolation levels used in practice, especially the popular snapshot isolation provided by Oracle. As pointed out in a SIGMOD 1995 paper by Berenson et al., a rigorous foundation for reasoning about such concurrency control features of commercial systems is sorely missing. The current paper aims to close this gap by developing a formal framework that allows us to reason about local and global transaction executions where some (or all) transactions are running under snapshot isolation. The paper derives criteria and practical protocols for guaranteeing global snapshot isolation at the federation level. It further generalizes the well-known ticket method to cope with combinations of isolation levels in a federated system.
Unable to display preview. Download preview PDF.
- 2.H. Berenson, P. Bernstein, J. Gray, J. Melton, E. O’Neil, and P. O’Neil. A Critique of ANSI SQL Isolation Levels. In M. J. Carey and D. A. Schneider, editors, Proc. of the 1995 ACM SIGMOD Int. Conf. on Management of Data, San Jose, CA, ACM SIGMOD Record, Vol. 24, No. 2, pages 1–10, ACM Press, 1995.Google Scholar
- 3.P. A. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.Google Scholar
- 5.Y. Breitbart, H. Garcia-Molina, and A. Silberschatz. Transaction Management in Multidatabase Systems. In W. Kim, editor, Modern Database Systems, chapter 28, pages 573–591, ACM Press, 1995.Google Scholar
- 7.Y. Breitbart and A. Silberschatz. Strong Recoverbility in Multidatabase Systems. In P. S. Yu, editor, RIDE’92, Proc. of the 2nd Int. Workshop on Research Issues in Data Engineering: Transaction and Query Processing, Tempe, Arizona, USA, February 2–3, 1992, pages 170–175. IEEE Computer Society Press, 1992.Google Scholar
- 8.M. Bright, A. Hurson, and S. Pakzad, editors. Multidatabase Systems: An Advanced Solution for Global Information Sharing. IEEE Computer Society Press, 1994.Google Scholar
- 9.O. A. Bukhres and A. K. Elmagarmid, editors. Object-Oriented Multidatabase Systems — A Solution for Advanced Applications. Prentice Hall, 1996.Google Scholar
- 10.S. Conrad. Federated Database Systems: Concepts of Data Integration. Springer-Verlag, 1997. (In German).Google Scholar
- 12.B. Holtkamp, N. Weißenberg, and X. Wu. VHDBS: A Federated Database System for Electronic Commerce. In Summary Proc. of the EURO-MED NET’ 98 Conf., Nicosia, Cyprus, March 4–7, 1998, pages 182–189, 1998.Google Scholar
- 14.Object Management Group, Inc. Object Transaction Service Specification 1.1, 1997.Google Scholar
- 15.Oracle Corporation. Concurrency Control, Transaction Isolation and Serializability in SQL92 and Oracle7. White Paper, 1995.Google Scholar
- 16.Oracle Corporation. Oracle8 Concepts, Release 8.0: Chapter 23, Data Concurrency and Consistency, 1997.Google Scholar
- 17.M. T. Özsu and P. Valduriez. Principles of Distributed Database Systems. Prentice Hall, 2nd edition, 1998.Google Scholar
- 18.C. Papadimitriou. The Theory of Database Concurrency Control. Computer Science Press, 1986.Google Scholar
- 19.Y. Raz. The Principle of Commitment Ordering, or Guaranteeing Serializability in a Heterogeneous Environment of Multiple Autonomous Resource Managers Using Atomic Commitment. In L.-Y. Yuan, editor, Proc. of the 18th Int. Conf. on Very Large Data Bases, VLDB’92, Vancouver, Canada, August 23–27, 1992, pages 292–312. Morgan Kaufmann Publishers, 1992.Google Scholar
- 20.R. Schenkel and G. Weikum. Experiences with Building a Federated Transaction Manager based on CORBA OTS. In S. Conrad, W. Hasselbring, and G. Saake, editors, Proc. 2nd Int. Workshop on Engineering Federated Information Systems, EFIS’99, Kühlungsborn, Germany, May 5–7, 1999, pages 79–94. infix-Verlag, Sankt Augustin, 1999.Google Scholar
- 23.X. Wu. An Architecture for Interoperation of Distributed Heterogenous Database Systems Database System. In R. R. Wagner and H. Thoma, editors, Database and Expert System Applications, Proc. of the 7th Int. Conf., DEXA’96, Zurich, Switzerland, September 1996, Lecture Notes in Computer Science, Vol. 1134, pages 688–697. Springer-Verlag, 1996.Google Scholar
- 24.X. Wu and N. Weißenberg. A Graphical Interface for Cooperative Access to Distributed and Heterogeneous Database Systems. In IDEAS’97, Proc. of the Int. Database Engineering and Applications Symposium, Montreal, Canada, August 25–27, 1997, pages 13–22, 1997.Google Scholar