Die Leistungsoptimierung ist ein iterativer Prozess, bei dem Sie Messwerte wie die CPU-Auslastung und die Latenz bewerten, Ihr Schema und Ihre Anwendung anpassen, um die Leistung zu verbessern, und noch einmal testen.
Sie können beispielsweise in Ihrem Schema einen Index hinzufügen oder ändern oder einen Primärschlüssel ändern. In Ihrer Anwendung können Sie Batch-Schreibvorgänge ausführen oder Abfragen zusammenführen oder ändern.
Insbesondere bei Produktionstraffic ist die Leistungsoptimierung wichtig, um unerwartete Probleme zu vermeiden. Je näher die Konfiguration am Durchsatz und der Datengröße des Live-Produktinverweises liegt, desto effektiver ist die Leistungsoptimierung.
So testen und optimieren Sie das Schema und die Anwendungsleistung:
- Laden Sie einen Teil Ihrer Daten in eine Spanner-Datenbank hoch. Sie können die Beispieldaten mit dem BigQuery-Reverse-ETL-Workflow laden. Weitere Informationen finden Sie unter Beispieldaten laden.
- Weisen Sie die Anwendung auf Spanner hin.
- Prüfen Sie die Datenbankkonsistenz anhand grundlegender Abläufe.
- Führen Sie Lasttests für Ihre Anwendung durch, um zu prüfen, ob die Leistung Ihren Erwartungen entspricht. Informationen zum Identifizieren und Optimieren der kostenintensivsten Abfragen finden Sie unter Probleme mit der Abfrageleistung mithilfe von Query Insights erkennen.
Insbesondere die folgenden Faktoren können zu einer suboptimalen Abfrageleistung beitragen:
- Ineffiziente Abfragen: Informationen zum Erstellen effizienter SQL-Abfragen finden Sie unter Best Practices für SQL.
- Hohe CPU-Auslastung: Weitere Informationen finden Sie unter Hohe CPU-Auslastung untersuchen.
- Sperren: Informationen zum Reduzieren von Engpässen durch Transaktionssperren finden Sie unter Transaktionen identifizieren, die zu hohen Latenzen führen können.
- Ineffizientes Schemadesign: Wenn das Schema nicht gut konzipiert ist, ist die Abfrageoptimierung nicht sehr nützlich. Weitere Informationen zum Entwerfen guter Schemas finden Sie unter Best Practices für das Schemadesign.
- Hotspots: Hotspots in Spanner begrenzen den Schreibdurchsatz, insbesondere bei Anwendungen mit hoher QPS. Um Hotspots oder Probleme mit dem Schemadesign zu identifizieren, sehen Sie sich die Statistiken im Key Visualizer in der Google Cloud Console an. Weitere Informationen zum Vermeiden von Hotspots finden Sie unter Primärschlüssel zur Vermeidung von Hotspots auswählen.
- Wenn Sie das Schema oder die Indexe ändern, wiederholen Sie die Tests für die Datenbankkonsistenz und -leistung, bis Sie zufriedenstellende Ergebnisse erzielen.
Weitere Informationen zur Optimierung der Datenbankleistung erhalten Sie vom Spanner-Support.