skip to main content
article
Free Access

Transaction chopping: algorithms and performance studies

Published:01 September 1995Publication History
Skip Abstract Section

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.

References

  1. ADLER, D., DAGEVILLE, B., AND WONG, K.-F. 1992. A C-based simulation package. Tech. Rep. ECRC-92-27i, ECRC, Munich.Google ScholarGoogle Scholar
  2. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. AGRAWAL, H. 1994. On slicing programs with jump statements. ACM SIGPLAN Not. 29, 6 (June), 302-311. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  6. AHO, A. V., SETm, R., AND ULLMAN, J.D. 1986. Compilers: Principles, Techniques and Tools. Addison-Wesley, Reading, Mass. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. BAYER, R. 1986. Consistency of transactions and random batch. ACM Trans. Database Syst. 11, 4 (Dec.), 397-404. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  9. BERNSTEIN, P A., HADZILACOS, V., AND GOODMAN, N. 1991 Concurrency Control and Recover~y zn Database Systems Addison-Wesley, Reading-, Mass. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. CASANOVA, M. 1981. The CoT~currency Control Problem for Database Systems. Lecture Notes in Computer Science, vol. 116. Springer-Verlag, iX~ew York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle Scholar
  14. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  15. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. GRAY, J, ED 1991. The Benchmark Handbook Morgan-Kaufmann, San Mateo, Calif.Google ScholarGoogle Scholar
  18. GRAY, J., AND REUTER, A 1992. Transaction Processzng: Concepts and Techmques Morgan- Kaufmann, San Marco, Calif. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. I~SEUH, W. AND PU, C. 1993. Chopping up epsilon transactions. Tech Rep. CUCS-037-093, Dept. Computer Science, Columbia Univ., New YorkGoogle ScholarGoogle Scholar
  22. HSU, M., AND CHAN, A. 1986. Partitioned two-phase locking. ACM Trans. Database Syst 11, 4 (Dec.), 431-446. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. LAUSEN, G., SOISALON-SOININEN, E., AND WIDMAYER, P 1986 Pre-analysis locking. Inf Control 70, 2-3 (Aug.), 193-215 Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. LLIRBAT, F. 1994. Analysis of chopping algorithm's performance Intern Rep., Rodin Project, INRIA Rocquencourt, France.Google ScholarGoogle Scholar
  25. LYNCH, N. 1983 Multi-level atomicity--A new correctness criterion for database concurrency control. ACM Trans Database Systems 8, 4 (Dec.), 484 502 Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. O'N~m, P. 1986. The escrow transactional mechamsm. ACM Trans. Database Syst. 11, 4 (Dec), 405-430. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. RAMAMRITHAM, K. AND CHRYSANTHIS, P K. 1995. Advances in Concurrency Control and Transaction Processzng IEEE Press, to appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. RYU, I. K., AND THOMASIAN, A. 1990. Analysis of performance with dynamic locking. J. ACM 37, 3 (Sept.), 491-523. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 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 ScholarGoogle Scholar
  30. SHASHA, D. 1988. Efficient and correct execution of parallel programs that share memory. ACM Trans. Program. Lang Syst. 10, 2 (Apr), 282-312. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. SHASHA, D. 1992. Database Tunzng: A Principled Approach. Prentice-Hall, Englewood Cliffs, N.J. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. TAY, Y. 1987 Locking Performance zn Centrahzed Databases. Academic Press, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. TnOMASLaN, A. 1991. Performance limits of two-phase locking. In 7th IEEE International Conference Data Engzneerzng (Kobe, Japan). IEEE, New York, 426 435. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. THOMASIAN A., AND RYU, K 1991. Performance analysis of two-phase locking. IEEE Trans. Softw Eng 17, 5 (May), 386 402. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. WEISER, M. 1984. Program slicing. IEEE Trans. Softw. Eng. SE 10, 4 (July), 352-357.Google ScholarGoogle Scholar
  36. WOLSON, O. 1987. The virtues of locking by symbohc names. J. Algorithms 8 (March) 536-556. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  38. Y~NAKAK~S, M. 1982. A theory of safe locking policies in database systems. J. ACM 29, 3, (July), 718-740. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Transaction chopping: algorithms and performance studies

                Recommendations

                Reviews

                Özgür Ulusoy

                An algorithm is proposed to find the finest chopping of a set of transactions to improve performance without sacrificing serializability. The algorithm assumes that the user knows the set of transactions that may run during a certain time interval. It is also assumed that the user may choose to release read locks early or to execute a portion of a transaction using multiversion read consistency. Once conflicts are identified, the algorithm runs in O n* e+m time, where n is the number of 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. The algorithm has been implemented on a real system to test its performance using a benchmark. Some experiments show that the algorithm improves transaction throughput by reducing lock contention. The performance results are confirmed using a detailed simulation model. The paper concludes by providing some stimulating ideas that point to future research directions. The paper is well organized, with clear descriptions of the algorithm, performance experiments, and results. The authors also provide a good background of recent related work. I think the paper will appeal to everyone interested in extended transaction models and concurrency control in database systems.

                Access critical reviews of Computing literature here

                Become a reviewer for Computing Reviews.

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in

                Full Access

                • Published in

                  cover image ACM Transactions on Database Systems
                  ACM Transactions on Database Systems  Volume 20, Issue 3
                  Sept. 1995
                  127 pages
                  ISSN:0362-5915
                  EISSN:1557-4644
                  DOI:10.1145/211414
                  • Editor:
                  • Won Kim
                  Issue’s Table of Contents

                  Copyright © 1995 ACM

                  Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 1 September 1995
                  Published in tods Volume 20, Issue 3

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • article

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader