Die Last auf Datenbankservern kann je nach Anwendung, Datenstruktur und Art der Daten zu einem echten Problem für Startups werden. Weil es im Gegensatz zu Webservern bei Datenbankservern nicht damit erledigt ist einfach weitere Maschinen zu starten sollte man sich frühzeitig Gedanken machen wie man mit Hilfe von Sharding die Last auf verschiedene Datenbankserver(cluster) verteilen kann.
Das Problem, gerade für Startups, dabei ist, dass man vorher nicht sagen kann welche der Daten sich gut zum sharding eignen, wo es sich lohnt und wenn nach welchem Muster man die Daten aufteilt. Ausserdem macht es häufig keinen Sinn Probleme zu lösen, die man noch nicht hat. Die wenigsten Startups haben direkt vom Start weg Performanceprobleme.
Wer an einem eigenen Webprojekt arbeitet sollte sich deshalb unbedingt den Artikel Sharding for Startups auf Lessons learned durchlesen. In ausführlichster Form wird dort erklärt wie man ohne nicht vorhandene Probleme zu lösen trotzdem darauf vorbereitet sein kann.
via Highscalability
