Cumulative Review (Semesters 0-6)
Use this as an interleaved review, not a rereading exercise. Answer closed-book first. Then verify with your notes, local book chunks, and prior-semester artifacts.
Instructions
- Set a timer for 90-120 minutes.
- Answer every question from memory before checking anything.
- For every miss, write a one-paragraph correction in your own words.
- Add new flashcards only for recurring misses or ideas you repeatedly confuse.
Questions
- Explain the difference between an algorithm that is asymptotically better and a system that is operationally better.
- Why do invariants matter in proofs, in debugging, and in transaction design?
- Give one example where a clean interface in software design reduces database risk later.
- What does locality of reference mean, and why does it matter for storage engines?
- Compare stack, heap, and disk as places where data can live during a request path.
- Why can a network timeout not be treated as proof that an operation failed?
- Design a schema for orders, customers, and payments. What are the keys and constraints?
- When would you deliberately denormalize, and what risk does that introduce?
- Write the steps you would use to verify whether a slow SQL query needs a new index or a query rewrite.
- What is the difference between a clustered storage layout and a secondary index lookup in practical cost terms?
- Compare B-trees and LSM trees using read amplification, write amplification, and space amplification.
- Why does a buffer pool exist, and what happens when the working set no longer fits well?
- Describe a workload where an index improves performance dramatically and another where the same index hurts.
- What is replication lag, and how can it leak into user-visible behavior?
- Why is failover not only a correctness problem but also an operational one?
- What makes partitioning harder than simply hashing rows across machines?
- Describe a hotspot and two different ways to mitigate it.
- Explain a read path and a write path for a leader-follower replicated system.
- What anomaly is prevented by serializable isolation that may still appear under weaker isolation?
- Contrast locking-based intuition with MVCC-based intuition.
- Why is durability not the same thing as immediate visibility?
- What does a transaction log buy you during crash recovery?
- Compare linearizability, serializability, and eventual consistency at a high level.
- Why are distributed systems hard even when every single node works correctly?
- What is a partial failure, and why does it break naive reasoning?
- Why do clocks create trouble in distributed systems?
- Explain quorum-style reasoning without using buzzwords.
- What job does a failure detector try to do, and why is it imperfect?
- Give one case where stronger consistency is worth the latency or availability cost.
- Give one case where eventual convergence is acceptable.
- How would you test a migration that changes schema and application behavior together?
- What signals would you monitor for a data service beyond CPU and memory?
- How does secret management intersect with database reliability and security?
- Why should rollback planning be stricter for schema changes than for ordinary code changes?
- Describe one case where measuring only average latency would mislead you.
- What prior-semester networking concept best helps explain replication behavior, and why?
- What prior-semester operating systems concept best helps explain buffering, logging, or scheduling effects in databases?
- What prior-semester software design concept best helps you keep data access code maintainable?
- What is the most expensive data-related mistake in your current project, and how would you prevent it earlier next time?
- If you had to defend your semester project to another engineer, what are the three most important tradeoffs you would present first?
Self-Grading Guide
Score each answer:
2= correct, clear, and defended with mechanism1= partially correct but vague or incomplete0= incorrect, guessed, or too fuzzy to trust
Interpretation:
68-80: strong readiness for Semester 752-67: acceptable, but patch weak spots before moving onBelow 52: review core modules before advancing
Repair Pass
After grading, write a short repair list with exactly three items:
- one concept gap
- one implementation gap
- one communication gap
Turn those into specific review tasks within the next seven days.