Sharding

Sharding (or partioning) can be defined as the process of splitting a table across multiple machines. This is achieved by dividing a table into multiple parts and putting a subset of data on each machine. Sharding a table allows us to store more data and handle more load without scaling vertically (that is, no need for larger and more powerful machines).

Note

If you haven't worked on scaling a database before, you may be confused about the differences between replication and sharding. Replication creates an exact copy of a table on a different server, whereas sharding distributes the table such that each server has a portion of the data of each table.

Sharding a database solves the challenges of scaling to support very large datasets. In ...

Get Getting Started with RethinkDB now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.