Preparing chapter
Loading your data design lesson
The curriculum shell is ready while the requested chapter is being prepared. You can wait here or return to the design library.
Preparing chapter
The curriculum shell is ready while the requested chapter is being prepared. You can wait here or return to the design library.
BookMyShow · Data Engineering · The system in one screen
Separate the synchronous booking truth from the asynchronous data platform.
Start here
Keep the opening crisp: what comes in, what the platform does, and who it serves.
Event producers
The inventory DB owns seats. The asynchronous platform distributes committed facts.
Business outcomes
Opening script
“I would keep seat allocation and payment confirmation inside a strongly consistent transactional boundary. For every committed state change, I would write a transactional outbox event; CDC delivers that event to Kafka. Flink serves time-sensitive fraud and operational signals, while an object-storage lakehouse provides replay, analytics, model training, and finance reconciliation. Each consumer gets its own freshness and correctness target.”
Requirements
Six checks are enough before estimating scale or choosing tools.
Scope
Hover an in-scope area to see the exact BookMyShow design responsibility.
Freshness
Freshness is measured from source commit or event occurrence to a consumer-visible update.
Next
“We know which facts require synchronous correctness and which consumers accept lag. Next I’ll pin down the functional requirements, definitions, and failure budgets.”
Requirements →