2. Defining Nonfunctional Requirements
2.12 Forward links
| Concept here | Where it's developed |
|---|---|
| Materialized views | Ch 4 (data cubes), Ch 13 (derived state) |
| Exactly-once semantics for fan-out | Ch 12 — Stream Processing |
| Sharding for shared-nothing | Ch 7 — Sharding |
| Tolerating node loss | Ch 6 (Replication), Ch 10 (Consensus) |
| Rolling upgrades & schema evolution | Ch 5 — Encoding and Evolution |
| Timeouts, unbounded delays, GC pauses | Ch 9 — Trouble with Distributed Systems |
| Automatic vs manual rebalancing | Ch 7 — Sharding |
| Complexity of the distributed setup you're avoiding | Ch 9 |