This article discusses Database Sharding, a method of partitioning large databases horizontally into smaller, more manageable pieces called shards, each of which can be stored on different servers. The goal is to enhance scalability, performance, and availability.
It explains various types of sharding, including Horizontal and Vertical Partitioning, and presents several Sharding Architectures such as Range-Based, Hashed, Directory-Based, and Geo-Based Sharding.
This article also explores the benefits of sharding, like improved performance and geographical distribution, along with the drawbacks, such as complexity, data skew, and difficulty in reverting to a monolithic database. It concludes by discussing when sharding is necessary and alternatives like database replication, caching, and vertical/horizontal scaling.
What you will learn:
Introduction
What is Database Sharding?
General Overview of Horizontal and Vertical Sharding
How Database Sharding Works
Benefits of Database Sharding
Drawbacks of Database Sharding
Database Sharding Architectures
Should I Shard My Database?
Alternatives to Database Sharding
Conclusion
name | custom | |
title | Understanding Database Sharding | |
url | https://newsletter.masteringbackend.com/p/understanding-database-sharding | |
description | This article discusses Database Sharding, a method of partitioning large databases horizontally into smaller, more manageable pieces called shards, each of which can be stored on different servers. The goal is to enhance scalability, performance, and availability. |