Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Semantics-based concurrency control: beyond commutativity

Published: 01 March 1992 Publication History

Abstract

The concurrency of transactions executing on atomic data types can be enhanced through the use of semantic information about operations defined on these types. Hitherto, commutativity of operations has been exploited to provide enchanced concurrency while avoiding cascading aborts. We have identified a property known as recoverability which can be used to decrease the delay involved in processing noncommuting operations while still avoiding cascading aborts. When an invoked operation is recoverable with respect to an uncommitted operation, the invoked operation can be executed by forcing a commit dependency between the invoked operation and the uncommitted operation; the transaction invoking the operation will not have to wait for the uncommitted operation to abort or commit. Further, this commit dependency only affects the order in which the operations should commit, if both commit; if either operation aborts, the other can still commit thus avoiding cascading aborts. To ensure the serializability of transactions, we force the recoverability relationship between transactions to be acyclic. Simulation studies, based on the model presented by Agrawal et al. [1], indicate that using recoverability, the turnaround time of transactions can be reduced. Further, our studies show enchancement in concurrency even when resource constraints are taken into consideration. The magnitude of enchancement is dependent on the resource contention; the lower the resource contention, the higher the improvement.

References

[1]
AGRAWAL, R., CAREY, M. J., AND LIVNY, M. Concurrency control performance modeling: Alternatives and implications. ACM Trans. Database Syst. 12, 4 (Dec. 1987), 609-654.
[2]
BADRINATH, B R. Concurrency control in complex information systems: A semantics-based approach. Ph.D. dissertation, TR 89-91~ Univ. of Massachusetts, Amherst, Mass., 1989.
[3]
BADRINATH, B. R. AND RAMAMRITHAM, K. Semantics-based concurrency controh Beyond commutativity. In Fourth IEEE Conference on Data Engineering (Los Angeles, Feb. 3-5, 1987), pp. 132-140.
[4]
BADRINATH, B. e. AND RAMAMRITHAM, K. Performance evaluation of semantics-based multilevel concurrency control protocols. In ProceedinAEs of the ACM SIGMOD Internatzonal Conference on Management of Data (Attantic City, N.J., May 23-25, 1990), pp. 163-172
[5]
BEERI, C., BERNSTEIN, P. A., GOODMAN, N, LAI, M. Y, AND SHASHA, D E . Concurrency control theory for nested transactions. In Proceed~ngs of the Second Annua! ACM Symposium on Pr~nciples of Distr~buted Comp~zt~ng (Montreal, Aug. 1983), pp. 45-62.
[6]
BERNSTEIN, P. A., HADZILACOS, V., AND GOODMAN, N. Concurrency Control and Recovery in Database Systems. Addison-Wesley, Reading, Mass., 1987.
[7]
BmMAr% K. P., JOSEPS, T. A. RAEUCHLE, T., AND EL-ABBAD~, A. Implementing fault-tolerant distributed objects. IEEE Trans. Softw. Eng. 11, 6 (June 1985), 520-530
[8]
BRACHA, G. AND TOUEG, S. Distributed algorithm for generalized deadlock detection. In Third Annual ACM Symposium on Pr~nc~ples of Distr~buted Computing (Aug. 1984), pp. 285-301.
[9]
BUCKLEY, G. N. AND SILBERSCHATZ, A. Beyond twe phase locking. J. ACM. 31, 2 (Apr. 1985), 314-326.
[10]
CASANOVA, M. A. The concurrency contro! problem for database systems. Vol. 116. In Lecture Notes in Computer Science. Springer-Verlag, 1981.
[11]
CORDON, C. AND GARCIA-MOLINA, H. The performance of a concurrency mechanism that exploits semantic knowledge. In Fifth International Conference on Distributed Computing Systems (Denver, Colo., May 13-17, 1985), pp. 350-358.
[12]
DEWITT, D. J., KATZ, R. H., OLKEN, F., S}tAPIRO, L. D., STONEBRAKER, M. R., AND WOOD, D. Implementation techniques for main memory database systems. In Proceedings of the ACM SIGMOD International Conference on Management of Data (Boston, Mass., June 1984), pp. 1-8.
[13]
ESWARAN, K. P., GRAY, J. N., LomE, R. A., AND TRimER, I.L. The notion of consistency and predieate locks in a database system. Commun. ACM. 19, 11 (Nov. 1976), 624-633.
[14]
GA~CIA-MOLINA, H. Using semantic knowledge for transaction processing in a distributed database. ACM Trans. Database Syst. 8, 2 (June 1983), 186-213.
[15]
HADZmACOS, V. Issues of fault tolerance in concurrent computations. Tech. Rep. 11-84, Harvard University, Aiken Computation Laboratory, Cambridge, Mass., June 1984.
[16]
HERLIIIY, M.P. Apologizing vcrsus asking permission: Optimistic concurrency control for abstract data types. ACM Trans. Database Syst. 15, I (Mar. 1990), 96-124.
[17]
HERLmY, M. P. AND WEmL, W. Hybrid concurrency control for abstract data types. In Proceedings of the 7th ACM Symposium on Prmciples of Database Systems (Austin, Tex., Mar. 21-23, 1988), pp. 201-210.
[18]
KORTR, H.F. Locking primitives in a database system. J. ACM. 30, i (Jan. 1983), 55-79.
[19]
KUNG, H. T. AND ROBINSON, J. T. On optimistic raethods for concurrency control. ACM Trans. Database Syst. 6, 2 (June 1981), 213-226.
[20]
Moss, J. E.B. Nested Transactions: An approach to reliable distributed computing. Ph.D. thesis 260, MIT Cambridge, Mass., April 1981.
[21]
Moss, J. E. B., GRIFFETH, N., AND GRAHAM, M. Abstraction in recovery management. In Proceedings of the ACM SIGMOD International Conference on Management of Data OEashington, D.C., May 28-30, 1986), pp. 72-83.
[22]
OKI, B. M., LISKOV, B. H., AND SCHEIFLER, R.W. Reliable object storage to support atomic actions. In Tenth ACM Symposium on Operating Systems Principles (Washington, Dec. 1-3, 1985), pp. 147-159.
[23]
PAPAmmTmOU, C.H. The serializability of concurrent database updates. J. ACM. 26, 4 (Oct. 1979), 631-653.
[24]
SCHWARTZ, P. M. AND SPECTOR, A. Z. Synchronizing shared abstract data types. ACM Trans. Comput. Syst. 2, 3 (Aug. 1984), 223-250.
[25]
SINHA, M. AND NATARAJAN, N. A priority based distributed deadlock detection algorithm. IEEE Trans. Sofiw. Eng. 11, I (Jan. 1985), 67-80.
[26]
STONEBaAKER, M. R., KATZ, R, PATTERSON, D., AND OUSTERHOUT, J. The Design of XPRS. In Proceedings of the 14th VLDB Conference (Los Angeles, Calif., Aug. 29-Sept. 1, 1988), pp. 318-330.
[27]
TAY, Y. C., GOODMAN, N., AND SURI, R. A mean value performance model for locking in databases: The no-waiting case. J. ACM. 32, 3 (July 1985), 618-651.
[28]
TAY, Y. C., GOODMAN, N., AND SURI, R. Locking performance in centralized databases. ACM Trans. Database Syst. 10, 4 (Dec. 1985), 415-462.
[29]
WmHL, W. Specification and implementation of atomic data types. Ph.D. Thesis MIT/LCS/TR-314, MIT, 545 Technology Square, Cambridge, Mass., March 1984.
[30]
WEIHL, W. Commutativity-Based concurrency control for abstract data types. IEEE Trans. Comput. 37, 12 (Dec. 1988), 1488-1505.
[31]
WEmL, W. AND LISKOV, B.H. Implementation of resilient, atomic data types. ACM Trans. Program. Lang. Syst. 7, i (Apr. 1985), 244-269.

Cited By

View all
  • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
  • (2022)Opportunities for optimism in contended main-memory multicore transactionsThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-021-00719-931:6(1239-1261)Online publication date: 11-Jan-2022
  • (2020)Opportunities for optimism in contended main-memory multicore transactionsProceedings of the VLDB Endowment10.14778/3377369.337737313:5(629-642)Online publication date: 19-Feb-2020
  • Show More Cited By

Recommendations

Reviews

Margaret H. Dunham

The recoverability of operations provides more concurrency than commutativity, which in turn provides more concurrency than traditional concurrency control techniques. Conventional concurrency control techniques (such as two-phase locking) are based on the concept of conflicting operations. Two operations conflict if they both access the same data item and at least one of them is an update operation. Operations that conflict may, however, because of the specific semantics involved, be allowed to execute in parallel without harming the consistency of the database. This idea is captured by commutativity. Two operations commute if they can be executed in any order (or simultaneously) and obtain the same results. An operation y is recoverable with respect to an operation x if a user obtains the same results whether or not x executes immediately before y . Commutativity implies recoverability. Examples used throughout this paper involve operations against a set and a stack. As stated by the authors, two insert operations against a set commute and can be executed in parallel. They are, however, conflicting. Similarly, two push operations against a stack are not commutative, but they are recoverable. Both commutativity- and recoverability-based concurrency control techniques avoid cascading aborts. The major contribution of this paper is that it proposes a database concurrency control technique that is based on recoverability and thus is less restrictive than either traditional approaches or those based on commutativity. The paper contains a formal definition of recoverability and is replete with good examples illustrating it intuitively. The concurrency control strategy based on recoverability is described, its correctness is proven, and the overall algorithm for its implementation is included. The effectiveness of the algorithm is investigated by reporting on the results of simulation studies. These studies demonstrate the superiority of the proposed recoverability technique to those based on commutativity with respect to both throughput and response time. The paper is relatively easy to read, and the discussion of the simulation results is convincing. I observed several minor problems with the contents of the paper, however. One of my major concerns about using recoverability is its overhead. The paper never really addresses this issue. As stated by the authors in a personal communication, however, this additional overhead “should be balanced against number of nonblocking operations.” It would still be nice to see simulation results when overhead is considered. Another technical issue concerning the performance results is that long-lived transactions (LLTs) are not studied, although the introduction specifically states that the new technique “will be especially useful when long-lived transactions are in progress.” Again, performance results for LLTs would be nice to see. The notation used in the formal definition of recoverability is easy to follow for anyone with a good understanding of database transaction processing and particularly for those familiar with commutativity-based algorithms. The paper is recommended reading for all researchers interested in database transaction processing and concurrency control.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Database Systems
ACM Transactions on Database Systems  Volume 17, Issue 1
March 1992
199 pages
ISSN:0362-5915
EISSN:1557-4644
DOI:10.1145/128765
  • Editor:
  • Gio Wiederhold
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 March 1992
Published in TODS Volume 17, Issue 1

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. concurrency control
  2. semantic information

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)75
  • Downloads (Last 6 weeks)13
Reflects downloads up to 18 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
  • (2022)Opportunities for optimism in contended main-memory multicore transactionsThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-021-00719-931:6(1239-1261)Online publication date: 11-Jan-2022
  • (2020)Opportunities for optimism in contended main-memory multicore transactionsProceedings of the VLDB Endowment10.14778/3377369.337737313:5(629-642)Online publication date: 19-Feb-2020
  • (2019)Coordination AvoidanceEncyclopedia of Big Data Technologies10.1007/978-3-319-77525-8_182(519-525)Online publication date: 20-Feb-2019
  • (2018)Coordination AvoidanceEncyclopedia of Big Data Technologies10.1007/978-3-319-63962-8_182-1(1-7)Online publication date: 6-Feb-2018
  • (2018)Semantics-Based Concurrency ControlEncyclopedia of Database Systems10.1007/978-1-4614-8265-9_719(3435-3436)Online publication date: 7-Dec-2018
  • (2016)Type-aware transactions for faster concurrent codeProceedings of the Eleventh European Conference on Computer Systems10.1145/2901318.2901348(1-16)Online publication date: 18-Apr-2016
  • (2016)A Transaction Model with Multilevel Consistency for Shared Data in Distributed Groupware Systems2016 IEEE 2nd International Conference on Collaboration and Internet Computing (CIC)10.1109/CIC.2016.041(236-245)Online publication date: Nov-2016
  • (2016)Semantics-Based Concurrency ControlEncyclopedia of Database Systems10.1007/978-1-4899-7993-3_719-2(1-2)Online publication date: 3-Dec-2016
  • (2013)Consistency without bordersProceedings of the 4th annual Symposium on Cloud Computing10.1145/2523616.2523632(1-10)Online publication date: 1-Oct-2013
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media