Database sharding is the process of dividing data into smaller pieces called « shards. » Sharding is typically introduced when there’s a need to scale writes. During the lifespan of a successful application, the database server will hit the maximum number of writes it can perform either at the processing or capacity level. Slicing the data into multiple shards—each one on its own database server—reduces the stress on each individual node, effectively increasing the write capacity of the overall database. This is what database sharding is.
Distributed SQL is the new way to scale relational databases with a sharding-like strategy that’s fully automated and transparent to applications. Distributed SQL databases are designed from the ground up to scale almost linearly. In this article, you’ll learn the basics of distributed SQL and how to get started.