Skip to content

PRO TIP Block youtube.com at the DNS level — Pi-hole, NextDNS or your hosts file — but allow youtube-nocookie.com and i.ytimg.com. These tutorials keep playing; the rabbit hole does not.

Learning without distractions

What is DATABASE SHARDING?

1.1M views on YouTube

Sharding a database is a common scalability strategy for designing server-side systems. The server-side system architecture uses concepts like sharding to make systems more scalable, reliable, and performant.

Sharding is the horizontal partitioning of data according to a shard key. This shard key determines which database the entry to be persisted is sent to. Some common strategies for this are reverse proxies.

Database interviews ask for concepts like sharding to make databases more performant and available. This makes horizontal partitioning a logical choice.

Looking to ace your next interview? Try this System Design video course! 🔥
https://interviewready.io

00:00 Introduction
00:52 Sharding – The problem
01:59 Horizontal Partitioning
03:20 Considerations
04:30 Potential Drawbacks
08:46 A challenge!

Video lectures, architecture diagrams, capacity planning, API contracts, and evaluation tests. It’s a complete package.

Horizontal vs. Vertical partitioning: https://stackoverflow.com/questions/18302773/what-are-horizontal-and-vertical-partitions-in-database-and-what-is-the-differen

Consistent Hashing:
https://en.wikipedia.org/wiki/Consistent_hashing

Sources:
https://medium.com/@jeeyoungk/how-sharding-works-b4dec46b3f6
https://medium.com/@jeeyoungk/why-i-love-databases-1d4cc433685f
https://www.quora.com/What-is-the-difference-between-consistent-hashing-and-sharding-in-a-distributed-system
https://en.wikipedia.org/wiki/Partition_(database)
Designing Data-Intensive Applications – https://amzn.to/2yQIrxH

#database #sharding #systemdesign