Auf dieser Seite wird die ungefähre Leistung beschrieben, die Spanner unter optimalen Bedingungen bereitstellen kann. Außerdem werden Faktoren, die sich auf die Leistung auswirken können, sowie Tipps zum Testen und Beheben von Leistungsproblemen bei Spanner beschrieben.
Die Informationen auf dieser Seite gelten sowohl für GoogleSQL- als auch für PostgreSQL-Datenbanken.
Leistungs- und Speicherverbesserungen
Leistungs- und Speicherverbesserungen werden für die gesamte regionale und multiregionale Instanzkonfiguration von Spanner eingeführt. Diese Leistungsverbesserungen sollten zu einem höheren Durchsatz und einer besseren Latenz in Spanner-Knoten in regionalen und multiregionalen Instanzkonfigurationen führen. In ausgewählten Instanzkonfigurationen sind ein erhöhter Durchsatz und mehr Speicher verfügbar. Sie müssen weder Änderungen an Ihrer Anwendung vornehmen noch manuell etwas in Ihren Spanner-Instanzen konfigurieren, um diese Verbesserungen zu nutzen, die ohne zusätzliche Kosten angeboten werden.
Erhöhter Leistungsdurchsatz
Die folgende Tabelle enthält den ungefähren Durchsatz (Abfragen pro Sekunde) für Instanzkonfigurationen mit verbesserter Leistung. Jeder Knoten (1.000 Verarbeitungseinheiten) der Rechenkapazität in der Instanz hat einen bis zu 50 % höheren Durchsatz.
Instanzkonfigurationstyp | Spitzenwerte für Lesevorgänge (Abfragen pro Sekunde pro Region) | Spitzenwert für Schreibvorgänge (Abfragen pro Sekunde insgesamt) | Spitzenwert von Schreibvorgängen mit Durchsatz-optimierten Schreibvorgängen (Abfragen pro Sekunde insgesamt) | ||
---|---|---|---|---|---|
Regional | 22.500 | Oder | 3.500 | 22.500 | |
Mehrere Regionen | 15.000 | Oder | 2.700 | 15.000 |
Ein höherer Leistungsdurchsatz ist für alle Spanner-Instanzkonfigurationen verfügbar, mit Ausnahme von:
Regionale Instanzkonfigurationen:
us-west4
Multiregionale Instanzkonfigurationen:
nam10
,nam-eur-asia1
Informationen zum Leistungsdurchsatz dieser Instanzkonfigurationen finden Sie unter Leistung bei typischer Arbeitslast.
Die Anleitung für Lesevorgänge gilt pro Region, da Lesevorgänge aus jeder nicht schreibgeschützten oder schreibgeschützten Region bereitgestellt werden können, während die Anleitung für Schreibvorgänge sich auf die gesamte Konfiguration bezieht. In der Anleitung wird davon ausgegangen, dass Sie einzelne Zeilen von je 1 KB lesen. Bei der Schreibanweisung wird davon ausgegangen, dass Sie einzelne Zeilen mit 1 KB Daten pro Zeile schreiben.
Die maximale Schreibleistung mit durchsatzoptimierten Schreibvorgängen wird mit einer Batch-Verzögerung von 100 ms erreicht.
Im Allgemeinen skalieren sowohl der Lese- als auch der Schreibdurchsatz einer Spanner-Instanz linear, wenn Sie der Instanz mehr Rechenkapazität (Knoten oder Verarbeitungseinheiten) hinzufügen. Wenn beispielsweise eine Spanner-Instanz in einer Region mit 2 Knoten bis zu 45.000 Lesevorgänge pro Sekunde bereitstellen kann, kann eine Spanner-Instanz in einer einzelnen Region mit 4 Knoten bis zu 90.000 Lesevorgänge pro Sekunde bereitstellen.
Wenn Sie für Ihre Arbeitslast von Spanner keine gewünschte Leistung erzielen, finden Sie unter Fehlerbehebung bei Leistungsabfällen Informationen zu häufigen Ursachen.
Mehr Speicherplatz
Bei ausgewählten regionalen und multiregionalen Instanzkonfigurationen von Spanner hat jeder Knoten (1.000 Verarbeitungseinheiten) der Rechenkapazität in der Instanz eine erhöhte Speicherkapazität von 10 TB. Die folgende Tabelle enthält die Instanzkonfigurationen mit erhöhtem verfügbarem Speicher:
Regionale Instanzkonfigurationen |
|
---|---|
Multiregionale Instanzkonfigurationen |
|
Leistung bei typischer Arbeitslast
Wenn der Leistungsdurchsatz der von Ihnen verwendeten Instanzkonfiguration nicht verbessert wurde, kann jeder Knoten (1.000 Verarbeitungseinheiten) der Rechenkapazität in Ihrer Instanz den folgenden ungefähren Durchsatz (Abfragen pro Sekunde) bereitstellen:
Instanzkonfigurationstyp | Spitzenwerte für Lesevorgänge (Abfragen pro Sekunde pro Region) | Spitzenwert für Schreibvorgänge (Abfragen pro Sekunde insgesamt) | |
---|---|---|---|
Regional | 15.000 | Oder | 2.300 |
Mehrere Regionen (Aufschlüsselung nach Basiskonfiguration) | 10.000 | Oder | 1.800 |
Bei regionalen Instanzkonfigurationen, die optionale schreibgeschützte Replikate zulassen,kann das optionale schreibgeschützte Replikat zusätzlich 5.000 Lesevorgänge pro Sekunde unterstützen.
Leistung für multiregionale Konfigurationen
Jede multiregionale Instanzkonfiguration von Spanner weist abhängig von der Replikationstopologie geringfügig unterschiedliche Leistungsmerkmale auf. Verwenden Sie durchsatzoptimierte Schreibvorgänge, um den Schreibdurchsatz über die Zahlen in der Tabelle hinaus zu erhöhen.
Je 1.000 Verarbeitungseinheiten (1 Knoten) Rechenkapazität können die folgende Spitzenleistung (bei 100% CPU) bereitstellen:
Name der Basiskonfiguration | Ungefährer Spitzenwert für Lesevorgänge (Abfragen pro Sekunde pro Region) | Ungefährer Spitzenwert für Schreibvorgänge (QPS insgesamt) |
---|---|---|
asia1 |
15.000 | 2.700 |
asia2 |
15.000 | 2.700 |
eur3 |
15.000 | 2.700 |
eur5 |
15.000 | 2.700 |
eur6 |
15.000 7.500 für jedes optionale schreibgeschützte Replikat |
2.700 |
nam3 |
15.000 7.500 für jedes optionale schreibgeschützte Replikat |
2.700 |
nam6 |
15.000 in us-central1 und us-east1 7.500 in us-west1 und us-west2 [1] |
2.700 |
nam7 |
15.000 7.500 für jedes optionale schreibgeschützte Replikat |
2.700 |
nam8 |
15.000 | 2.700 |
nam9 |
15.000 | 2.700 |
nam10 |
10.000 | 1.800 |
nam11 |
15.000 7.500 für jedes optionale schreibgeschützte Replikat |
2.700 |
nam12 |
15.000 | 2.700 |
nam13 |
15.000 | 2.700 |
nam14 |
15.000 | 2.700 |
nam15 |
15.000 | 2.700 |
nam-eur-asia1 |
10.000 | 1.000 |
nam-eur-asia3 |
15.000 | 1.500 |
- [1]:
us-west1
undus-west2
bieten nur die Hälfte der QPS-Leistung, da sie statt zwei nur ein Replikat pro Region enthalten.
Die Anleitung für Lesevorgänge gilt pro Region, da Lesevorgänge von überall aus bereitgestellt werden können, während die Anleitung für Schreibvorgänge sich auf die gesamte Konfiguration bezieht. Bei der Lese- und Schreibanleitung wird davon ausgegangen, dass Sie einzelne Zeilen mit 1 KB Daten pro Zeile lesen und schreiben.
Typische Arbeitslasten mit Spanner ausführen
Führen Sie bei der Kapazitätsplanung immer Ihre eigenen typischen Arbeitslasten für eine Spanner-Instanz aus, damit Sie die beste Ressourcenzuweisung für Ihre Anwendungen ermitteln können. PerfKit Benchmarker von Google verwendet YCSB für das Benchmarking von Clouddiensten. Sie können der PerfKitBenchmarker-Anleitung für Spanner folgen, um Tests für Ihre eigenen Arbeitslasten zu erstellen. Dabei sollten Sie die Parameter in den yaml
-Dateien der Benchmarking-Konfiguration anpassen, damit die generierte Benchmark die folgenden Eigenschaften in Ihrer Produktionsumgebung erfüllt:
- Gesamtgröße Ihrer Datenbank
- Schema (z. B. Zeilenschlüsselgröße, Anzahl der Spalten, Zeilendatengrößen)
- Datenzugriffsmuster (Verteilung der Zeilenschlüssel)
- Mischung aus Lese- und Schreibvorgängen
- Art und Komplexität der Abfragen
Benchmark-Zahlen reproduzieren
Folgen Sie zum Reproduzieren der Benchmark-Zahlen der Anleitung Benchmarking Spanner mit PerfKit Benchmarker unter Verwendung der entsprechenden yaml
-Dateien im Ordner throughput_benchmark.
Wenn Sie Benchmarks für Instanzen in einer Instanzkonfiguration durchführen möchten, die Leistungsverbesserungen erhalten hat, müssen Sie dafür sorgen, dass Ihre Tests in einer dieser verbesserten Instanzkonfigurationen ausgeführt werden.
Schutz vor zonalen und regionalen Ausfällen
Wenn Sie Arbeitslasten in der Produktion ausführen, ist es wichtig, genügend Rechenkapazität bereitzustellen, um den Traffic auch im Falle des Ausfalls einer ganzen Zone (bei regionalen Instanzen) oder einer ganzen Region (bei multiregionalen Instanzen) weiter verarbeiten zu können. Weitere Informationen zur empfohlenen maximalen CPU-Auslastung finden Sie unter Warnungen für hohe CPU-Auslastung.
Nächste Schritte
- Spanner-Schema entwerfen
- Spanner-Leistung überwachen
- Probleme in Key Visualizer beheben
- Informationen zu Spanner-Preisen.