Course contents
On this page
Lesson plan

Lesson plan 47: Contrasting workload priorities

Explain how SpacetimeDB and Convex reduce application-managed synchronization through different programming and execution models.

Placement: Part 8: Architectural case studies and synthesis.

Prerequisites: Lesson 46: Spanner, CockroachDB, and FoundationDB, plus the earlier dependency chain.

Learning outcomes

  • Explain how SpacetimeDB and Convex reduce application-managed synchronization through different programming and execution models.
  • Contrast realtime transitions and subscriptions with ClickHouse’s analytical scan priorities.
  • Evaluate games, collaborative applications, and InsForge-style backends using correctness, delivery, freshness, and operational responsibilities.
  • Separate a general mechanism, a documented implementation choice, and an illustrative numerical assumption.

Teaching sequence

  1. Establish the motivating situation: A shared-world action, collaborative query, and billion-row aggregate each stress a different resource.
  2. Introduce the vocabulary and the correctness obligation before an optimization. Define SpacetimeDB, Convex, ClickHouse.
  3. Develop the mechanism: Map guarantees, computation boundaries, result maintenance, and data layout to the requested workload.
  4. Follow the complete worked example: Scanning 2 columns of 100 equal-width columns reads 2% of the uncompressed column bytes. Explain the assumptions, intermediate units, and limiting interpretation.
  5. Extend the scenario to changed load, skew, or failure, explaining realtime state, analytical execution, workload fit.
  6. 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 state-transition-to-client path labels authoritative execution, maintained result, fan-out, and local application; a workload matrix contrasts those costs with analytical data reduction. 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.

Primary source set

Read the lesson · Curriculum