FACTOID # 134: The total area of Australia’s coral reefs is greater than the total area of any of 130 individual countries, including Slovakia, the Dominican Republic, Kuwait, Singapore, and Rwanda.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Concurrency control

In computer science -- more specifically, in the field of databases -- concurrency control is a method used to ensure that database transactions are executed in a safe manner (i.e., without data loss). Concurrency control is especially applicable to database management systems, which must ensure that transactions are executed safely and that they follow the ACID rules, as described in the following section. The DBMS must be able to ensure that only serializable, recoverable schedules are allowed, and that no actions of committed transactions are lost while undoing aborted transactions. Computer science is the study of information and computation. ... A database is an organized collection of data. ... A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions that must be either entirely completed or aborted. ... To meet Wikipedias quality standards, this article or section may require cleanup. ... For other uses, see Acid (disambiguation). ... In the field of databases, a schedule is a list of actions, (i. ... In the field of databases, a schedule is a list of actions, (i. ...


In computer science -- in the field of concurrent programming (see also parallel programming and parallel computing on multiprocessor machines) -- concurrency control is a method used to ensure that correct results are generated, while getting those results as quickly as possible. Computer science is the study of information and computation. ... Parallel programming (also concurrent programming), is a computer programming technique that provides for the execution of operations concurrently, either within a single computer, or across a number of systems. ... Parallel programming is a computer programming technique that provides for the execution of operations in parallel, either within a single computer, or across a number of systems. ... Parallel computing is the simultaneous execution of the same task (split up and specially adapted) on multiple processors in order to obtain results faster. ... Multiprocessing is traditionally known as the use of multiple concurrent processes in a system as opposed to a single process at any one instant. ...


Several algorithms can be used for either type of concurrency control (i.e., with in-RAM data structures on systems that have no database, or with on-disk databases).

Contents


Transaction ACID rules

... Undo is a command in most word processors and text editors. ... In database systems, a consistent transaction is one that does not violate any integrity contraints during its execution. ... A database transaction is a unit of interaction with a database management system or similar system that is treated in a coherent and reliable way independent of other transactions that must be either entirely completed or aborted. ... In database systems, isolation is a property that the changes made by an operation are not visible to other simultaneous operations on the system until its completion. ... In computer science, durability is the ACID property that guarantees that transactions that are successfully committed will survive permanently and will not be undone by system failure. ... A crash in computing is a condition where a program (either an application or part of the operating system) stops performing its expected function and also stops responding to other parts of the system. ... The command Redo is a common command on many programs which store undo buffers. ...

Concurrency control mechanism

The main categories of concurrency control mechanisms are:

  • Optimistic - Delay the synchronization for transactions until the operations are performed. Conflicts are less likely but won't be known until they happen.
  • Pessimistic - The potentially concurrent executions of transactions are synchronized early in their execution life cycle. Blocking is thus more likely but will be known earlier.

There are many methods for concurrency control, the majority of which uses Strict 2PL locking: In computer science, in the field of databases, optimistic concurrency control, (OCC) is a concurrency control method used in relational databases without using locking. ...

Locks are bookkeeping objects associated with a database object. To meet Wikipedias quality standards, this article or section may require cleanup. ... In computer science, non-strict two-phase locking, also 2PL, is a locking method used in database management systems. ... In computer science, conservative two-phase locking (C2PL) is a locking method used in DBMS and relational databases. ... Index locking Index locking blocks all access by other tasks to the entire table in a database. ... In computer science, multiple granularity locking (MGL), sometimes called the John Rayner locking method, is a locking method used in database management systems (DBMS) and relational databases. ... In computer science, a lock is a mechanism for enforcing limits on access to a resource in an environment where there are many threads of execution. ...


There are also non-lock concurrency control methods. All the currently implemented lock-based and almost all the implemented non-lock based concurrency controls will guarantee that the resultant schedule is conflict serializable; however, there are many academic texts encouraging view serializable schedules for environments where gains due to improvement in concurrency outstrip overheads in generating schedule plans. In computer science, in the field of databases, non-lock concurrency control is concurrency control method used in relational databases without using locking. ... In the field of databases, a schedule is a list of actions, (i. ... In the field of databases, a schedule is a list of actions, (i. ...


See also

Parallel programming (also concurrent programming), is a computer programming technique that provides for the execution of operations concurrently, either within a single computer, or across a number of systems. ... A race hazard (or race condition) is a flaw in a system or process where the output exhibits unexpected critical dependence on the relative timing of events. ... It has been suggested that this article or section be merged into Relational model. ... In the field of databases, a schedule is a list of actions, (i. ... Synchronization is coordination with respect to time. ...

External links

  • Portland Pattern Repository: Synchronization Strategies
  • Portland Pattern Repository: Category Concurrency

  Results from FactBites:
 
Concurrency Control for Step-Decomposed Transactions - Bernstein, Gerstl, Lewis (ResearchIndex) (744 words)
In this paper we describe a new concurrency control that guarantees that only the allowable interleavings specified for an application occur The...
23 Modular concurrency control and failure recovery (context) - Sha, Lehoczky et al.
1 The performance of a concurrency control algorithm that expl..
ASP.NET Optimistic Concurrency Control - The Code Project - ASP.NET (1827 words)
Pessimistic concurrency control - a row is unavailable to users from the time the record is fetched until it is updated in the database.
We have to keep in mind that an application that holds locks for long periods is not scalable, but this concurrency control schema might have to be implemented on some portions of the application.
Concurrency control increases the application's complexity, debugging and maintenance, but your users will have a better experience using it.
  More results at FactBites »


 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m