Blueprint Canvas

Verification Trivia Workspace

1,250,000 users, 60,000 peak concurrent, US + EU traffic. Score updates require strong settlement, leaderboards can be near real-time, game events are append-only.

Architecture

Entities

User

Aurora DSQL

Stable relational record with session and score history.

GameSession

Hybrid

Aurora DSQL owns metadata; DynamoDB stores live event pressure.

Question

Aurora DSQL

Auditable relational content with schema versioning.

AnswerEvent

DynamoDB

Burst writes and replay by run/session.

Score

Hybrid

Transactional settlement plus event replay.

LeaderboardEntry

DynamoDB

High-read, write-sharded rank access.

Region

Aurora DSQL

Reference data for regional data domains.

Generated flow

AP-01

Get user profile by userId

Load player profile, preferences, and account region before a session.

AP-02

Join live game session

Attach a user to an active game session and resolve regional routing.

AP-03

Submit answer event

Append answer telemetry when a player taps an answer during a live round.

AP-04

Update score atomically

Settle score after validating answer correctness and anti-cheat signals.

AP-05

Get top 100 leaderboard by region

Read top ranked players for a regional board with near-real-time freshness.

AP-06

Get top 100 global leaderboard

Read a global leaderboard view while keeping writes distributed.

AP-07

Get user session history by time range

Query historical sessions for support, profile pages, and audit review.

AP-08

Replay disputed scoring event

Reconstruct score history from immutable answer events during support review.

Database Mapping

Aurora DSQL

  • Project metadata and B2B workspace records
  • Access pattern registry and recommendation versions
  • Schema versions, simulation summaries, reports

DynamoDB

  • Answer events and representative workload telemetry
  • Leaderboard read/write samples and hot-key metrics
  • Run timeline, event replay, risk-indexed samples

Access Patterns

Each row is persisted and feeds the recommendation version.

PatternFrequencyConsistencyLatencyDatabasePeak QPS

Get user profile by userId

Relational identity data benefits from SQL constraints and joins.

Impact: QPS 18,000 -> 18,000; hot risk critical; shards 45.

80 msAurora DSQL18,000

Join live game session

Session membership is relational, but live events should stay decoupled.

Impact: QPS 13,200 -> 13,200; hot risk critical; shards 33.

100 msHybrid13,200

Submit answer event

The wrong key design concentrates writes on a single game partition.

Impact: QPS 9,600 -> 9,600; hot risk high; shards 24.

35 msDynamoDB9,600

Update score atomically

Score settlement needs transactional facts plus event replay.

Impact: QPS 4,800 -> 4,800; hot risk moderate; shards 12.

120 msHybrid4,800

Get top 100 leaderboard by region

Regional buckets avoid a global leaderboard hot key.

Impact: QPS 30,000 -> 30,000; hot risk critical; shards 75.

45 msDynamoDB30,000

Get top 100 global leaderboard

A global partition must be materialized from regional shards.

Impact: QPS 22,800 -> 22,800; hot risk critical; shards 57.

60 msDynamoDB22,800

Get user session history by time range

Time-range history and support queries are easier to govern in SQL.

Impact: QPS 2,400 -> 2,400; hot risk moderate; shards 6.

150 msAurora DSQL2,400

Replay disputed scoring event

Event replay needs DynamoDB history plus Aurora DSQL authoritative facts.

Impact: QPS 240 -> 240; hot risk moderate; shards 4.

300 msHybrid240