Optimistic concurrency control

Optimistic concurrency control (OCC), also known as optimistic locking, is a concurrency control method applied to transactional systems such as relational database management systems and software transactional memory. OCC assumes that multiple transactions can frequently complete without interfering with each other. While running, transactions use data resources without acquiring locks on those resources. Before committing, each transaction verifies that no other transaction has modified the data it has read. If the check reveals conflicting modifications, the committing transaction rolls back and can be restarted. Optimistic concurrency control was first proposed by H. T. Kung and John T. Robinson.

Bot
enInternetArchiveBot
Comment
enOptimistic concurrency control (OCC), also known as optimistic locking, is a concurrency control method applied to transactional systems such as relational database management systems and software transactional memory. OCC assumes that multiple transactions can frequently complete without interfering with each other. While running, transactions use data resources without acquiring locks on those resources. Before committing, each transaction verifies that no other transaction has modified the data it has read. If the check reveals conflicting modifications, the committing transaction rolls back and can be restarted. Optimistic concurrency control was first proposed by H. T. Kung and John T. Robinson.
Date
enMarch 2018
FixAttempted
enyes
Has abstract
enOptimistic concurrency control (OCC), also known as optimistic locking, is a concurrency control method applied to transactional systems such as relational database management systems and software transactional memory. OCC assumes that multiple transactions can frequently complete without interfering with each other. While running, transactions use data resources without acquiring locks on those resources. Before committing, each transaction verifies that no other transaction has modified the data it has read. If the check reveals conflicting modifications, the committing transaction rolls back and can be restarted. Optimistic concurrency control was first proposed by H. T. Kung and John T. Robinson. OCC is generally used in environments with low data contention. When conflicts are rare, transactions can complete without the expense of managing locks and without having transactions wait for other transactions' locks to clear, leading to higher throughput than other concurrency control methods. However, if contention for data resources is frequent, the cost of repeatedly restarting transactions hurts performance significantly, in which case other concurrency control methods may be better suited. However, locking-based ("pessimistic") methods also can deliver poor performance because locking can drastically limit effective concurrency even when deadlocks are avoided.
Hypernym
Method
Is primary topic of
Optimistic concurrency control
Label
enOptimistic concurrency control
Link from a Wikipage to an external page
www.andrej-hollmann.de/images/stories/informatik/multi-isolation-part-1.pdf
Link from a Wikipage to another Wikipage
Amazon DynamoDB
Apache Solr
Block contention
Bugzilla
Category:Concurrency control
Category:Concurrency control algorithms
Category:Transaction processing
Column-oriented DBMS
Concurrency control
CouchDB
Database management system
DBMS
Edit conflict
Elasticsearch
Entity Framework
Firebird (database server)
Form (web)
Google App Engine
Grails (framework)
GT.M
H. T. Kung
HTTP
HTTP ETag
Kubernetes
Linearizability
MediaWiki
Microsoft
Mimer SQL
MonetDB
Multiversion concurrency control
Redis
Relational database management systems
Ruby on Rails
Server Message Block
Software transactional memory
Stateless server
Time-of-check to time-of-use
YugabyteDB
SameAs
Control de concurrencia optimista
ipro
m.01hwbw
Optimistic Concurrency
Q1779327
Оптимистична контрола поклапања
בקרת מקביליות אופטימית
کنترل همروندی خوش‌بینانه
乐观并发控制
楽観的並行性制御
낙관적 병행 수행 제어
Subject
Category:Concurrency control
Category:Concurrency control algorithms
Category:Transaction processing
WasDerivedFrom
Optimistic concurrency control?oldid=1091159570&ns=0
WikiPageLength
11424
Wikipage page ID
233011
Wikipage revision ID
1091159570
WikiPageUsesTemplate
Template:Citation needed
Template:Cite conference
Template:Cite journal
Template:Cn
Template:Dead link
Template:ISBN
Template:Reflist