When should you shard your database?
The Backend Engineering Show with Hussein Nasser
English - April 28, 2020 22:00 - 21 minutes - 12.2 MB - ★★★★★ - 5 ratingsTechnology Homepage Download Apple Podcasts Google Podcasts Overcast Castro Pocket Casts RSS feed
Previous Episode: Advice for Junior backend engineers who just started new jobs
Database Application level sharding is the process of splitting a table into multiple database instances in order to distribute the load. However, Sharding a database is an expensive operation (maintainability and overhead) and I suggest you do that only when you absolutely need to. That means when your single instance database can no longer serve queries with minimum latency. So I suggest you monitor that and only shard if necessary.. I rather do replication make master / backup and make requests read from replica than Sharding just because it is easier.. good question... nice idea for a video
5:00 Partition horizontally
7:45 Replication (Master/backup) Scale reads
11:00 Scale writes by region
12:30 Sharding
16:40 Sharding in YouTube