Loading...
Clients connect over REST APIs to ALB which either serves static webpage via CDN, or directs to a backend stateless API server pool. For storage since our data is not relational we can aim for NoSQL DB. We can use a managed highly-scalable NoSQL database such as DynamoDB.
NoSQL database since data is not inherently relational and we have need for very high read throughput. Since NoSQL we can use a managed DynamoDB like datastore that naturally partitions on primary key to avoid any complex shard logic.
PK: shortURL
Attributes: longURL, createdAt, updatedAt
Hashing logic: