Course contents
On this page
Lesson plan 32: Caches and maintained results
Distinguish a cache, materialized view, incremental result, CDC stream, and CQRS representation.
Placement: Part 6: Scaling execution and state delivery.
Prerequisites: Lesson 31: Distributed query execution, plus the earlier dependency chain.
Learning outcomes
- Distinguish a cache, materialized view, incremental result, CDC stream, and CQRS representation.
- Explain invalidation races, rebuildability, freshness watermarks, and transactional maintenance.
- Calculate miss load and recognize stampedes, negative caching, and hot-key amplification.
- Separate a general mechanism, a documented implementation choice, and an illustrative numerical assumption.
Teaching sequence
- Establish the motivating situation: A late cache fill overwrites a newer invalidation and resurrects stale data.
- Introduce the vocabulary and the correctness obligation before an optimization. Define invalidation, materialized views, incremental computation.
- Develop the mechanism: Trace versioned cache fills and delta maintenance; separate event history from current state.
- Follow the complete worked example: A 99% hit rate over 100000 reads/s leaves 1000 miss requests/s before stampedes. Explain the assumptions, intermediate units, and limiting interpretation.
- Extend the scenario to changed load, skew, or failure, explaining CDC, CQRS, freshness.
- Connect the mechanism to a documented implementation and an alternative with a different workload fit. Close by stating the remaining cost and the next lesson dependency.
Required chapter material
Use a complete execution trace or worked calculation, supported by an annotated static diagram or table. Include language-neutral pseudocode or labeled SQL when it clarifies the mechanism. State preconditions, ownership, visibility, and failure boundaries for algorithms. Describe operational costs as well as the normal path. All questions raised in the narrative must be resolved in the text.
Visual explanation
A commit-to-derived-state path identifies the authoritative boundary and retained replay position; a stale-fill timeline demonstrates an invalidation race. The accompanying prose explains the arrows, state changes, or table entries so the lesson remains understandable in a plain Markdown reader.
Editorial checks
Confirm that the numerical example agrees with its units and assumptions. Check that a faster path preserves the stated contract, or explicitly identify the changed guarantee. Keep hypothetical figures separate from product measurements. Explain both an appropriate use and a limitation of the case design. Check terminology against the glossary and links against the course index.