Most infrastructure projects start with the idea of connectedness. This includes concepts such as ownership, sharing, notifications and updates, privacy, and community. There is a database layer (usually MySQL), and that database layer is the natural place to hold all of the structured information necessary for the application to represent everything related to the above concepts.

In this paper, we explore how software architects can start down a sharding path and soon realize they’re stuck in a “deep freeze”. Everything from then on, from development to deployment, takes longer and is a lot more complicated. The effort required to get the most basic features developed once a sharding backend has been introduced continues to go up and up. You’ll also learn how Clustrix solves this problem once and for all.