Lets assume there are 100 million application user and 10% will be the daily active users. so there are 10 million active users out of which 10% actually book the ticket and other are read only users. So there will be 1 million user book the ticket daily and each user may book the 2-3 time in a day so there will be max of 3 million booking or writes in the system and if assume each user can search for a 4-5 movies and check for pricing and availability of the seat so there will be approx 50 million reads in the system if we consider 10 million active users daily.
There will be different services servers the system functionalities
Define the data model. Identify the main entities, their attributes, and relationships. Consider the choice of database type (SQL vs NoSQL) and justify your decision based on access patterns...
Caching:
Search Service:
booking service:
Notification service: