Concurrency Control in DBMS: Resolving Conflicts
Concurrency Control in DBMS: Resolving Conflicts

Concurrency Control in DBMS: Resolving Conflicts

Available Only on StudyHippo
  • Pages: 3 (586 words)
  • Published: May 16, 2018
  • Type: Article
View Entire Sample
Text preview

What DBMS component is responsible for concurrency control? How is this feature used to resolve conflicts? In the fields of computer science and information technology there are often transactions, operations or jobs that are executed to gather a result. In most cases these results come in bunches and many separate transactions may have to occur at the same time. The process of managing simultaneous execution of transactions while ensuring the serializability of transactions in a database is known as concurrency control. Concurrency control is essential to allow software to perform the way it should.

In robust distributed systems it is extremely common to have multiple transactions occur which need access to the same data. One easy way of achieving this guarantee is to ensure that only one transaction executes at a time by using mutual exclusion and having a transac

...

tion resource that each transaction must have access to. This would likely be overkill and utilize concurrency controls. In the case of multiple transactions which use the same data and execute simultaneously concurrency control will keep them out of each other’s way and ensure serializability. One way of achieving concurrency is by using locks.

Locks will have a transaction lock an object and prevent another transaction from manipulating the object until the lock is released after the initial transaction completes. There is also the optimistic concurrency control. This is based on the observation that in most applications the chance of two transactions accessing the same object is low. This allows transactions to proceed as if there were no possibility of conflict with other transactions ie. A transaction does not have to obtain or check for locks. Another contro

View entire sample
Join StudyHippo to see entire essay

is timestamp ordering. In timestamp ordering, transactions are assigned a unique timestamp when it begins.

Each object in the system has a read and a write timestamp associated with it. The read timestamp is the timestamp of the last committed transaction that read the object. The write timestamp is the timestamp of the last committed transaction that modified the object. Not maintain rights to what processes can access the data which could ultimately produce a deadlock would be negligent. Use of concurrency control ensures that the DBMS is able to run smooth and error free. What is the difference between a rule-based optimizer and a cost-based optimizer? Cost-Based Optimization(CBO) and Rule-Based Optimization (RBO), hese are the optimization strategies used by Database engines for executing a query or a stored procedure. RBO is a set of rules that determine how exactly a query is executed. This is often the simplest implementation, but it is far from the best choice in most cases. Much of the more recent performance enhancements, such as hash joins, improved star query processing, and histograms, are not available through rule-based optimization. This make the rule-based approach inferior to cost-based in most instances. As indicated by its name the CBO was developed with costs in mind. It was developed to reach the cheap cost of execution.

The cheapest plan is the one that will use the least amount of resources (CPU, Memory, I/O, etc. ) to get the desired output . The cost-based approach generally chooses an execution plan that is better than the plan chosen by the rule-based approach. This becomes especially evident for large queries with multiple joins or multiple indexes. The cost-based

approach also eliminates having to tune your SQL statements; this greatly improves productivity.

  • Coronel, C. , Morris, S. , & Rob, P. (2011). Database Systems (Design, Implementation and Management) 9th Edition. Boston: Cengage Learning.
Get an explanation on any task
Get unstuck with the help of our AI assistant in seconds
New