Concurrent Execution in DBMSDatabase Management systems usually allow multiple transaction to run concurrently even though it causes a lot of complications with consistency of data. Ensuring consistency when multiple transactions execute concurrently, requires extra effort. It is much simpler to allow only one transaction to run at a time but concurrent execution of transactions has its own advantages:
- Improved throughput and resource utilization :Concurrent execution means that CPU doesn't have to be idle while it is waiting for I/O activity to complete. This is because transactions can run in parallel on CPU along with I/O activities. This means that resources can be utilized effectively by having multiple transaction run concurrently.
- Less waiting time : Without concurrency, a short transaction might need to wait for a long transaction to finish causing delay in its execution. With multiple transactions running on the system, new transactions have to wait for less time before getting executed.