user inpusts a long url -> we shorten it -> it leads to the same page without losing any data
almost anyone but if we want specific profile:
people who advertise products would want specilized promo code,
researchers when they want to cite a website as soruce may need url shortening
SCALE
there 3.5 trillion combination of urls we can create with base 62, realisticaly speaking from the get go would want our sytem to process thousands of requests its needed to be discussed with network team.
we will have one api that shortens the url post/urlshortener etc. and one get api to fetch the link.
Describe the overall system architecture. Identify the main components needed to solve the problem end-to-end. Use the diagramming tool to create a block diagram.
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...
Deep dive into 2-3 key components. Explain how they work, how they scale, discuss tradeoffs, capacity, and any relevant algorithms or data structures.