Sharding
Sharding is a form of horizontal partitioning and it can be implemented in PostgreSQL using PL/Proxy. Its main distinction is that sharding emphasizes placing shared data structures on every node, so that each of them can operate independently of one another. Typically, the data you'd want on every system is what's normally referred to as dimension, lookup, or fact tables for your application—the pieces that are common to every set of data. The idea is that you should approach a shared-nothing architecture, where each sharded partition is self-sufficient for answering queries related to the data it contains.
The complexity of a sharding style design includes things such as how to co-ordinate an update to those shared structures. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access