Tabular Foundation Models (TFMs) logopeterindia.net
Knowledge Hub

Database Sharding

Database sharding: MySQL and Postgres sharding tools, NoSQL and distributed SQL sharding, case studies and papers.

37 topics•6 categories•Updated October 2026

What Is Database Sharding?

7 entries

Sharding splits a large database horizontally into smaller pieces called shards, each holding a subset of rows on its own server, so storage and traffic scale beyond one machine. A shard key decides which shard owns a row, and a router or the database itself directs queries. Sharding differs from replication, which copies the same data, and from partitioning within a single server. Descriptions below follow each project's or vendor's own pages and are not rankings; release facts come from GitHub.

Sharding Middleware for MySQL

7 entries

Systems that shard MySQL behind a routing layer.

Sharding and Partitioning for PostgreSQL

6 entries

Extensions and tools for scaling Postgres across nodes.

Built-In Sharding in NoSQL Databases

6 entries

Databases that shard or partition data natively.

Automatic Sharding in Distributed SQL

4 entries

Systems that shard automatically behind a SQL interface.

Case Studies and Research

7 entries

Engineering write-ups and papers behind sharding techniques.

Frequently Asked Questions

What is database sharding?

Splitting a large database horizontally into smaller shards, each holding a subset of rows on its own server, so data and traffic can scale beyond one machine. A shard key decides which shard stores each row.

How is sharding different from replication and partitioning?

Replication copies the same data to several servers for availability and read scale. Partitioning divides a table into pieces, often within one server. Sharding spreads those pieces across servers so each holds only part of the data. Most large systems combine sharding with replication.

How do I choose a shard key?

Pick a key with high cardinality and even distribution that matches your most common queries, so most queries touch one shard. Poor keys create hot shards. MongoDB and DynamoDB document shard and partition key design.

When should I shard?

Only after simpler options are exhausted: better indexes, query tuning, read replicas, caching and table partitioning. Sharding adds complexity in transactions, joins, resharding and operations. See the Database Performance Tuning and Database Replication pages.

Should I shard myself or use a database that shards automatically?

Distributed SQL systems such as CockroachDB, YugabyteDB, TiDB and Spanner, and databases such as MongoDB and Cassandra, shard automatically. Middleware such as Vitess, Citus and ShardingSphere adds sharding to MySQL or PostgreSQL. Building sharding into application code is the most work.

What is consistent hashing?

A technique that maps keys and nodes onto a ring so that adding or removing a node moves only a small fraction of keys. It is described in the consistent hashing and Dynamo papers listed on this page.

How current is this page?

Links and release facts were checked on 31 October 2026 from GitHub. The MySQL documentation returned 403 to automated checks. Links to the Instagram, Meta and GitHub engineering posts were dropped because they did not resolve. Descriptions follow each project's own pages and are not rankings.