Bird
Raised Fist0
DBMS Theoryknowledge~5 mins

ACID properties in DBMS Theory - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: ACID properties
O(n)
Understanding Time Complexity

We want to understand how the time to complete database transactions changes as the amount of data or operations grows.

Specifically, how the ACID properties affect the time it takes to process transactions.

Scenario Under Consideration

Analyze the time complexity of a transaction ensuring ACID properties.


BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;

This code transfers money between two accounts within a transaction that must be atomic, consistent, isolated, and durable.

Identify Repeating Operations

Look for operations that repeat or scale with input size.

  • Primary operation: The updates on account balances inside the transaction.
  • How many times: Each update runs once per account involved, but the transaction may include many such operations if more accounts are involved.
How Execution Grows With Input

As the number of operations in a transaction grows, the time to ensure ACID properties grows too.

Input Size (number of operations)Approx. Operations
2Few operations to update and log changes
10More updates and checks, time grows roughly linearly
100Many updates, more locking and logging, time grows proportionally

Pattern observation: The time grows roughly in proportion to the number of operations in the transaction.

Final Time Complexity

Time Complexity: O(n)

This means the time to complete a transaction grows linearly with the number of operations it contains.

Common Mistake

[X] Wrong: "ACID properties make transaction time constant regardless of size."

[OK] Correct: Ensuring atomicity, consistency, isolation, and durability requires work for each operation, so time grows with transaction size.

Interview Connect

Understanding how transaction time grows helps you design efficient database operations and explain trade-offs clearly in interviews.

Self-Check

"What if the transaction included nested transactions? How would the time complexity change?"

Practice

(1/5)
1. Which of the following ACID properties ensures that a transaction is completed fully or not at all?
easy
A. Atomicity
B. Consistency
C. Isolation
D. Durability

Solution

  1. Step 1: Understand Atomicity in transactions

    Atomicity means a transaction must be all or nothing; it cannot be partially done.
  2. Step 2: Compare with other ACID properties

    Consistency ensures data correctness, Isolation manages concurrent transactions, Durability guarantees data permanence after commit.
  3. Final Answer:

    Atomicity -> Option A
  4. Quick Check:

    All or nothing = Atomicity [OK]
Hint: All or nothing means Atomicity [OK]
Common Mistakes:
  • Confusing Atomicity with Consistency
  • Mixing Isolation with Durability
  • Thinking Durability means transaction completeness
2. Which ACID property ensures that once a transaction is committed, its changes are permanent even if the system crashes?
easy
A. Consistency
B. Isolation
C. Atomicity
D. Durability

Solution

  1. Step 1: Define Durability in ACID

    Durability guarantees that committed data is saved permanently and survives system failures.
  2. Step 2: Differentiate from other properties

    Isolation controls transaction interference, Atomicity ensures full completion, Consistency maintains valid data states.
  3. Final Answer:

    Durability -> Option D
  4. Quick Check:

    Permanent changes after commit = Durability [OK]
Hint: Permanent data after commit means Durability [OK]
Common Mistakes:
  • Confusing Durability with Isolation
  • Thinking Atomicity means permanence
  • Mixing Consistency with Durability
3. Consider a database transaction that updates two tables. If the transaction is interrupted after updating the first table but before the second, which ACID property prevents partial updates?
medium
A. Atomicity
B. Isolation
C. Durability
D. Consistency

Solution

  1. Step 1: Analyze partial update scenario

    Partial updates mean some changes are saved while others are not, which is not allowed.
  2. Step 2: Identify ACID property preventing partial updates

    Atomicity ensures the transaction is fully completed or fully rolled back, preventing partial changes.
  3. Final Answer:

    Atomicity -> Option A
  4. Quick Check:

    All or nothing update = Atomicity [OK]
Hint: Partial updates prevented by Atomicity [OK]
Common Mistakes:
  • Choosing Durability for partial update
  • Confusing Isolation with Atomicity
  • Assuming Consistency handles partial updates
4. A developer notices that two transactions running at the same time cause incorrect data results. Which ACID property should be checked to fix this concurrency issue?
medium
A. Atomicity
B. Durability
C. Isolation
D. Consistency

Solution

  1. Step 1: Understand concurrency problem

    Concurrent transactions interfering cause data errors due to lack of proper separation.
  2. Step 2: Identify ACID property managing concurrency

    Isolation ensures transactions do not affect each other's intermediate states, preventing conflicts.
  3. Final Answer:

    Isolation -> Option C
  4. Quick Check:

    Concurrency control = Isolation [OK]
Hint: Concurrency issues fixed by Isolation [OK]
Common Mistakes:
  • Mixing Isolation with Atomicity
  • Thinking Durability controls concurrency
  • Confusing Consistency with Isolation
5. A banking system must ensure that money transfer transactions are safe and reliable. Which combination of ACID properties best guarantees that money is neither lost nor duplicated during transfers?
hard
A. Consistency and Isolation
B. Atomicity and Isolation
C. Atomicity and Durability
D. Durability and Consistency

Solution

  1. Step 1: Identify requirements for safe money transfer

    Money must not be lost (all steps complete) and no interference between transactions.
  2. Step 2: Match requirements to ACID properties

    Atomicity ensures full completion or rollback, Isolation prevents concurrent transaction conflicts.
  3. Step 3: Evaluate other options

    Durability ensures permanence but does not prevent duplication; Consistency ensures valid data but not transaction completeness or isolation.
  4. Final Answer:

    Atomicity and Isolation -> Option B
  5. Quick Check:

    Complete and separate transactions = Atomicity + Isolation [OK]
Hint: Safe transfers need Atomicity + Isolation [OK]
Common Mistakes:
  • Choosing Durability alone
  • Ignoring Isolation for concurrency
  • Confusing Consistency with transaction completeness
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard