December 2023
Intermediate to advanced
464 pages
12h 35m
English
Partitioning data across servers is crucial for scaling distributed systems. However, it comes with challenges. We need to ensure that clients can quickly find the right server for their data and that adding or removing servers doesn’t require moving a lot of data. Also, when data needs to be added to multiple partitions hosted on different servers, we face the question of how to do that atomically.
In the following chapters, we will explore commonly used patterns for partitioning data.
While these patterns primarily focus on partitioning schemes, it’s important to remember that each partition is typically replicated using Patterns of Data Replication to achieve fault tolerance.