Learn the vocabulary of a database letting a reader see a consistent snapshot without blocking a writer.
0 / 5 completed
1 / 5
At standup, a dev mentions a database keeping multiple versions of a row so a reading transaction sees a consistent snapshot without blocking a concurrent writer. What is this technique called?
Multi-version concurrency control, or MVCC, keeps multiple versions of a row so a reading transaction sees a consistent snapshot without blocking a concurrent writer from modifying that same row. Locking every row for the duration of a read forces a writer to wait, hurting concurrency under a read-heavy workload. This multi-version approach is what lets many modern databases offer strong read consistency without sacrificing write throughput.
2 / 5
During a design review, the team wants a transaction to always see the data as it existed at the moment its snapshot began, ignoring a write committed by another transaction afterward. Which capability supports this?
Snapshot isolation defines a transaction's consistent view as of the moment its snapshot began, so it doesn't see a write committed by another transaction afterward, even if that other transaction commits while the first is still running. Seeing every write immediately, with no fixed snapshot, would produce a read that's inconsistent as the underlying data shifts mid-transaction. This snapshot-based view is the isolation guarantee MVCC is specifically designed to provide.
3 / 5
In a code review, a dev notices a background process periodically removes an old row version once no active transaction's snapshot could still need to see it. What does this represent?
Vacuuming, or garbage collection, removes an old row version once no active transaction's snapshot could still need to see it, reclaiming storage that an MVCC database would otherwise accumulate indefinitely. Keeping every old row version forever bloats storage and can slow down a query that has to skip past many obsolete versions. This cleanup process is what keeps an MVCC database's storage footprint and query performance manageable over time.
4 / 5
An incident report shows a long-running analytical transaction's snapshot prevented vacuuming from removing many old row versions for hours, causing table bloat and noticeably slower queries elsewhere in the system. What practice would prevent this?
Monitoring and bounding how long a snapshot-holding transaction is allowed to run keeps vacuuming from being blocked for an extended period, since vacuuming can't remove a version that an active snapshot might still need. Allowing such a transaction to run indefinitely with no monitoring risks exactly the table bloat and slower queries this incident describes. This bounding is a standard operational safeguard in any MVCC database that supports long-running analytical transactions alongside regular traffic.
5 / 5
During a PR review, a teammate asks why the team relies on MVCC's multiple row versions instead of just locking a row for the duration of every read to guarantee consistency. What is the reasoning?
Locking a row for every read blocks a concurrent writer and hurts throughput under a read-heavy workload, since readers and writers end up contending for the same lock. MVCC lets a reader see a consistent snapshot without blocking a writer at all, keeping both reads and writes flowing concurrently. The tradeoff is the added storage and the vacuuming overhead needed to eventually clean up an old row version once no snapshot needs it anymore.
What does the "MVCC (Multi-Version Concurrency Control) Vocabulary" vocabulary exercise cover?
This exercise tests real IT vocabulary related to mvcc (multi-version concurrency control) vocabulary through 5 multiple-choice questions, each built from realistic workplace sentences rather than abstract definitions.
Is this vocabulary exercise free to use?
Yes. Every exercise on CoderSlingo, including this one, is completely free — no account, sign-up, or payment required.
How many questions does this exercise have?
This exercise has 5 questions. Each one shows a real-world sentence or scenario with multiple-choice options and an explanation once you answer.
What happens after I answer a question?
You'll see immediate feedback showing whether your answer was correct, along with a short explanation of why — then a button to move to the next question, and a full results screen at the end.
Can I retry the exercise if I get questions wrong?
Yes. Once you reach the results screen, click "Try again" to reset your answers and go through the exercise from the start as many times as you like.
Do I need to create an account to take this exercise?
No account is needed. Your answers are scored in your browser during the session — nothing is saved to a server, so you can jump straight in.
Is my progress saved if I leave the page?
No — progress within an exercise resets if you navigate away or reload. Each exercise is short enough to complete in a few minutes in one sitting.
Are these vocabulary exercises connected to other topics?
Yes — browse the full vocabulary exercises hub to find related modules covering adjacent IT topics and roles.
How is this different from reading a glossary or blog article?
Exercises like this one are active recall drills — you have to choose the correct term or phrasing yourself, which builds retention faster than passively reading a definition.
Where can I find more vocabulary exercises?
Browse the full Vocabulary exercises hub for hundreds of modules covering Agile, DevOps, security, databases, architecture, and more — organised by IT role and skill.