Kapitel 5. Sharding

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Die Leistung einer einzelnen Instanz von MySQL hängt von den Abfragen, Daten, Zugriffsmustern und der Hardware ab. Wenn direkte und indirekte Abfrageoptimierungen - die vorsichtig angewandt werden - keine akzeptable Leistung mehr erbringen, haben Sie die relative Grenze der Leistung einer einzelnen Instanz von MySQL für die Arbeitslast der Anwendung erreicht. Um diese relative Grenze zu überschreiten, müssen Sie die Arbeitslast der Anwendung auf mehrere Instanzen von MySQL aufteilen, um MySQL im großen Maßstab zu erreichen.

DasSharding einer Datenbank ist die gängige und weit verbreitete Technik des Skalierens (oder horizontalen Skalierens): Die Leistung wird erhöht, indem die Arbeitslast auf mehrere Datenbanken verteilt wird. (Im Gegensatz dazu steigert das vertikale Skalieren die Leistung, indem die Hardwarekapazität erhöht wird.) Beim Sharding wird eine Datenbank in viele Datenbanken aufgeteilt. Jede Datenbank ist ein Shard, und jeder Shard wird normalerweise auf einer separaten MySQL-Instanz gespeichert, die auf separater Hardware läuft. Shards sind physisch getrennt, aber logisch dieselbe (sehr große) Datenbank.

Die Skalierung von MySQL erfordert Sharding. Ich werde diesen Satz in diesem Kapitel mehrmals wiederholen, weil es eine Tatsache ist, die Ingenieure nur ungern akzeptieren. Warum? Weil Sharding kein intrinsisches ...

Get Effiziente MySQL-Leistung 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.