Abstract
Chopping transactions into pieces is good for performance but may lead to nonserializable executions. Many researchers have reacted to this fact by either inventing new concurrency-control mechanisms, weakening serializability, or both. We adopt a different approach. We assume a user who
—has access only to user-level tools such as (1) choosing isolation degrees 1ndash;4, (2) the ability to execute a portion of a transaction using multiversion read consistency, and (3) the ability to reorder the instructions in transaction programs; and
—knows the set of transactions that may run during a certain interval (users are likely to have such knowledge for on-line or real-time transactional applications).
Given this information, our algorithm finds the finest chopping of a set of transactions TranSet with the following property: If the pieces of the chopping execute serializably, then TranSet executes serializably. This permits users to obtain more concurrency while preserving correctness. Besides obtaining more intertransaction concurrency, chopping transactions in this way can enhance intratransaction parallelism.
The algorithm is inexpensive, running in O(n×(e+m)) time, once conflicts are identified, using a naive implementation, where n is the number of concurrent transactions in the interval, e is the number of edges in the conflict graph among the transactions, and m is the maximum number of accesses of any transaction. This makes it feasible to add as a tuning knob to real systems.
- ADLER, D., DAGEVILLE, B., AND WONG, K.-F. 1992. A C-based simulation package. Tech. Rep. ECRC-92-27i, ECRC, Munich.Google Scholar
- AGRAWAL, D., ADBADI, A. E., AND JEFFERS, R. 1992. Using delayed commitment in locking protocols for real-time databases. In ACM SIGMOD International Conference on Management of Data (San Diego, Calif., June 2-5), 104-113. ACM, New York. Google ScholarDigital Library
- AORAWAL, D., BRUNO, J. L., ABBAD~, A. E., A~D KmSHNASAWAMY, V. 1994. Relative serializability: An approach for relaxing the atomicity of transactions. In ACM Principles of Database Systems. V. Vianu, Ed., ACM, New York, 139-149. Google ScholarDigital Library
- AGRAWAL, H. 1994. On slicing programs with jump statements. ACM SIGPLAN Not. 29, 6 (June), 302-311. Google ScholarDigital Library
- AGRAWAL, R., CAREY, M., AND LIVNY, M. 1987. Concurrency control performance modeling: Alternatives and implications. ACM. Trans. Database Syst. 12, 4 (Dec), 609-654. Google ScholarDigital Library
- AHO, A. V., SETm, R., AND ULLMAN, J.D. 1986. Compilers: Principles, Techniques and Tools. Addison-Wesley, Reading, Mass. Google ScholarDigital Library
- BAYER, R. 1986. Consistency of transactions and random batch. ACM Trans. Database Syst. 11, 4 (Dec.), 397-404. Google ScholarDigital Library
- BERNSTEIN, P., SHIPMAN, n. W., AND ROTHNIE, J.B. 1980. Concurrency control in a system for distributed databases (sdd-1). ACM Trans. Database Syst. 5, i (Mar.), 18-51. Google ScholarDigital Library
- BERNSTEIN, P A., HADZILACOS, V., AND GOODMAN, N. 1991 Concurrency Control and Recover~y zn Database Systems Addison-Wesley, Reading-, Mass. Google ScholarDigital Library
- CAREY, M.J. 1983. Modeling and evaluation of database concurrency control algorithms Tech Rep. and Ph D. thesis, Dept. of Computer Science, Univ. of California, Berkeley, Sept. Google ScholarDigital Library
- CAREY, M. J., KRISHN,MViURTHY, S., AND L{VNY, M. 1990. Load control for lockmg: The "half and half" approach. In The 9th ACM Syraposnlm on the Principles of Database Systems (Nashville, Tenn, May 20-22) ACM, New York, 72 84. Google ScholarDigital Library
- CASANOVA, M. 1981. The CoT~currency Control Problem for Database Systems. Lecture Notes in Computer Science, vol. 116. Springer-Verlag, iX~ew York. Google ScholarDigital Library
- DADAM, P.~ PISTOR, P., AND SCHEK, H.-J. 1983 A predicate oriented locking approach for integrated information systems. In IFIP 9th World Computer Congress (Paris, April). North- Holland, Amsterdam, 110-121.Google Scholar
- FARRAG, A. A, AND OZSU, M. T 1987. Towards a general concurrency control algorithm for database systems. IEEE Trans. Softw. Eng. SE-13, 10 (Oct.), 1073-1078. Google ScholarDigital Library
- FARRAG, A. A., AND OZSU, M.T. 1989 Using semantm knowledge of transactions to increase concurrency ACM Trans. Database Syst 14, 4 (Dec.), 503-525 Google ScholarDigital Library
- GARCIA-MOLiNA, H. 1983. Using semantic knowledge for transaction processing in a distributed database. ACM Trans'. Database Sy,~t 8, 2 (June), 186-213 Google ScholarDigital Library
- GRAY, J, ED 1991. The Benchmark Handbook Morgan-Kaufmann, San Mateo, Calif.Google Scholar
- GRAY, J., AND REUTER, A 1992. Transaction Processzng: Concepts and Techmques Morgan- Kaufmann, San Marco, Calif. Google ScholarDigital Library
- HARITSA, J., C^~rY, M. J., AND LIVNY, M. 1990. On being optimistm about real-time constramts. In The 9th ACM Sympostum on Prznciples of Database Systems (Nashville, Tenn., May 20-22). ACM, New York, 331 343 Google ScholarDigital Library
- HELLANI), P , SAMMER, H., LYON, J., CARR, R., GARRET, P., AND REUTER, A. 1987. Group commit timers and high volume transactmn systems. In Second International Workshop on High Performance TransactLon Systems. Lecture Notes in Computer Science, Vol. 359, Springer Verlag, New York, 301-328. Google ScholarDigital Library
- I~SEUH, W. AND PU, C. 1993. Chopping up epsilon transactions. Tech Rep. CUCS-037-093, Dept. Computer Science, Columbia Univ., New YorkGoogle Scholar
- HSU, M., AND CHAN, A. 1986. Partitioned two-phase locking. ACM Trans. Database Syst 11, 4 (Dec.), 431-446. Google ScholarDigital Library
- LAUSEN, G., SOISALON-SOININEN, E., AND WIDMAYER, P 1986 Pre-analysis locking. Inf Control 70, 2-3 (Aug.), 193-215 Google ScholarDigital Library
- LLIRBAT, F. 1994. Analysis of chopping algorithm's performance Intern Rep., Rodin Project, INRIA Rocquencourt, France.Google Scholar
- LYNCH, N. 1983 Multi-level atomicity--A new correctness criterion for database concurrency control. ACM Trans Database Systems 8, 4 (Dec.), 484 502 Google ScholarDigital Library
- O'N~m, P. 1986. The escrow transactional mechamsm. ACM Trans. Database Syst. 11, 4 (Dec), 405-430. Google ScholarDigital Library
- RAMAMRITHAM, K. AND CHRYSANTHIS, P K. 1995. Advances in Concurrency Control and Transaction Processzng IEEE Press, to appear. Google ScholarDigital Library
- RYU, I. K., AND THOMASIAN, A. 1990. Analysis of performance with dynamic locking. J. ACM 37, 3 (Sept.), 491-523. Google ScholarDigital Library
- SALZBERG, B., ANU TOMBROFF, D. 1994. A programming tool to support long-running activities. Tech. Rep. NU-CCS-94-10, Dept. Computer Science. Northeastern llniv., Boston, Mass.Google Scholar
- SHASHA, D. 1988. Efficient and correct execution of parallel programs that share memory. ACM Trans. Program. Lang Syst. 10, 2 (Apr), 282-312. Google ScholarDigital Library
- SHASHA, D. 1992. Database Tunzng: A Principled Approach. Prentice-Hall, Englewood Cliffs, N.J. Google ScholarDigital Library
- TAY, Y. 1987 Locking Performance zn Centrahzed Databases. Academic Press, New York. Google ScholarDigital Library
- TnOMASLaN, A. 1991. Performance limits of two-phase locking. In 7th IEEE International Conference Data Engzneerzng (Kobe, Japan). IEEE, New York, 426 435. Google ScholarDigital Library
- THOMASIAN A., AND RYU, K 1991. Performance analysis of two-phase locking. IEEE Trans. Softw Eng 17, 5 (May), 386 402. Google ScholarDigital Library
- WEISER, M. 1984. Program slicing. IEEE Trans. Softw. Eng. SE 10, 4 (July), 352-357.Google Scholar
- WOLSON, O. 1987. The virtues of locking by symbohc names. J. Algorithms 8 (March) 536-556. Google ScholarDigital Library
- WONG, K. C., AND EDELBERG, M. 1977. Interval hierarchies and their application to predicate files. ACM Trans. Database Syst. 2, 3 (Sept.), 223-232. Google ScholarDigital Library
- Y~NAKAK~S, M. 1982. A theory of safe locking policies in database systems. J. ACM 29, 3, (July), 718-740. Google ScholarDigital Library
Index Terms
- Transaction chopping: algorithms and performance studies
Recommendations
Locking Timestamps versus Locking Objects
PODC '18: Proceedings of the 2018 ACM Symposium on Principles of Distributed ComputingWe present multiversion timestamp locking (MVTL), a new genre of multiversion concurrency control algorithms for serializable transactions. The key idea behind MVTL is simple: lock individual timestamps instead of locking objects. After presenting a ...
Altruistic locking
Long-lived transactions (LLTs) hold on to database resources for relatively long periods of time, significantly delaying the completion of shorter and more common transactions. To alleviate this problem we propose an extension to two-phase locking, ...
Stable Transaction Management for Preserving the Global Integrity Constraints in Multidatabase Systems
COOPIS '98: Proceedings of the 3rd IFCIS International Conference on Cooperative Information SystemsThe multidatabase systems(MDBSs) are an integration of local database systems into a global distributed database system. The objectives of global transaction management are to avoid the inconsistent retrievals and to guarantee the global serializability ...
Comments