Articles April 16, 2025
How ScoreSight Uses AWS To Generate Real-Time, Event-Driven Data For TGL
No Smoke, No Mirrors
Going Cloud-First with ScoreSight
Technical Keys to Success
Event-Driven Architecture
Ingest, process, and publish data in real time, asynchronously getting data to consumers as fast as possible.
Choreography Over Orchestration
Use decoupled microservices that respond to events in a decentralized manner and don’t rely on a monolithic, all-knowing orchestrator, all while promoting modularity for future use cases.
Ledgered Database Design
Create immutable, chronological, versioned records of every data point to enable concurrent writes to a single record while avoiding collisions and providing a clear audit trail.
Cache Early and Often
Use write-through caching on every scoring data change and cache-aside caching for any cache miss to keep response times as fast as possible.
Design for Errors
Plan for human operators to make mistakes and allow for corrections; automate event error handling and retries; and gracefully degrade when systems fail by limiting dependencies between components.
Protect the Game
Keep data producers and in-arena consumers on private networks with isolated infrastructure from the public.
Serverless or Bust
Take advantage of cost-effective serverless services to support the bursts of match day traffic while limiting costs during down times.
Active-Passive Disaster Recovery
Operate from a primary system while replicating data to a standby system with the ability to rapidly failover.
Automate Everything, Minimize Human Error
Use infrastructure as code, database schema as code, CI/CD pipelines, automated testing, real-time monitoring and alerting, automated error handling, and script all support tasks.
Choreographing Event-Driven Flows
Data-Modified Events
Occurs when any source data is created, updated, or deleted. Examples include a simulator shot, scored stroke, team action, match progress, or hole score entity being modified.
Data-Computed Events
Triggered after consuming modified events and then computed by joining source data to represent holistic views of data for consumption and presentation. Examples include a combined stroke with simulator data, match box score, and match timeline being computed.
Data Egress Events
Triggered after consuming computed events and then abstracted to match API schemas; ultimately published to external event streaming platforms to enable applications to subscribe. Examples mirror the computed events.








