Best Practices

Auf dieser Seite finden Sie Best Practices für eine optimale Leistung, Langlebigkeit und Verfügbarkeit mit Cloud SQL.

Wenn Probleme mit Ihrer Cloud SQL-Instanz auftreten, prüfen Sie bei der Fehlerbehebung Folgendes:

Instanzkonfiguration und -verwaltung

Best Practice Weitere Informationen
Betriebsrichtlinien Für PostgreSQL-Instanzen sind noch keine Betriebsrichtlinien verfügbar. Es gelten aber die gleichen Grundsätze, die Voraussetzung dafür sind, dass Instanzen vom Cloud SQL-SLA abgedeckt sind.
Konfigurieren Sie für die primäre Instanz ein Wartungsfenster, in dem betriebsunterbrechende Updates ausgeführt werden können. Weitere Informationen finden Sie unter Wartungsfenster.
Fügen Sie für leselastige Arbeitslasten Lesereplikate hinzu, um den Traffic der primären Instanz zu reduzieren. Sie können auch einen Load-Balancer wie HAProxy verwenden, um den Traffic zu den Replikaten zu verwalten.
Wenn Sie Instanzen regelmäßig löschen und neu erstellen, sollten Sie die Instanz-ID mit einem Zeitstempel versehen, um die Wahrscheinlichkeit zu erhöhen, dass neue Instanz-IDs verwendet werden können. Nach dem Löschen einer Instanz kann die Instanz-ID einige Tage lang nicht wiederverwendet werden.
Starten Sie keinen neuen Verwaltungsvorgang, bevor der letzte Vorgang abgeschlossen ist.

Solange der vorherige Vorgang nicht abgeschlossen ist, nehmen Cloud SQL-Instanzen keine neuen Vorgangsanfragen an. Wenn Sie dennoch versuchen, einen neuen Vorgang zu starten, schlägt die Anfrage fehl. Das betrifft auch Neustarts der Instanz.

Der Instanzstatus in der Cloud Console gibt nicht an, ob gerade ein Vorgang ausgeführt wird. Das grüne Häkchen zeigt nur an, dass sich die Instanz im Status RUNNABLE befindet. Wenn Sie wissen möchten, ob gerade ein Vorgang ausgeführt wird, wechseln Sie zum Tab Vorgänge und sehen Sie sich den Status des letzten Vorgangs an.

Datenarchitektur

Best Practice Weitere Informationen
Erstellen Sie wenn möglich Shards Ihrer Instanzen. Mehrere kleine Cloud SQL-Instanzen sind oft besser als eine große Instanz. Die Verwaltung einer einzigen großen, monolithischen Instanz bringt einige Probleme mit sich, die bei einer größeren Anzahl kleinerer Instanzen nicht auftreten.
Verwenden Sie nicht zu viele Datenbanktabellen.

Zu viele Datenbanktabellen können sich auf die Antwortzeit der Instanz auswirken. Bei mehr als 10.000 Tabellen gibt es Auswirkungen auf die Gültigkeit des SLA. Weitere Informationen finden Sie unter Betriebsrichtlinien für MySQL-Instanzen.

Für PostgreSQL-Instanzen sind zwar noch keine Betriebsrichtlinien verfügbar, aber es gelten die gleichen Grundsätze.

Anwendungsimplementierung

Best Practice Weitere Informationen
Wenden Sie leistungsstarke Verfahren für das Verbindungsmanagement an, beispielsweise Verbindungs-Pooling und exponentiellen Backoff. Diese Methoden optimieren die Nutzung der Ressourcen durch die Anwendung und erleichtern die Einhaltung der Verbindungslimits für Cloud SQL. Weitere Informationen und Codebeispiele finden Sie unter Datenbankverbindungen verwalten.
Testen Sie die Reaktion der Anwendung auf Wartungsupdates, die im Rahmen eines Wartungsfensters jederzeit auftreten können. Die Änderung des Maschinentyps einer Instanz kommt einem Wartungsupdate am nächsten. Achten Sie darauf, dass die Anwendung nach einer Wartung ordnungsgemäß fortgesetzt wird. Dazu sollte sie mindestens 10 Minuten lang versuchen, die Datenbankverbindung wiederherzustellen, bevorzugt über einen exponentiellen Backoff. Weitere Informationen finden Sie unter Datenbankverbindungen verwalten.
Testen Sie die Reaktion der Anwendung auf Failover, die jederzeit vorkommen können. Sie können ein Failover manuell über die Cloud Console, das gcloud-Befehlszeilentool oder die API starten. Weitere Informationen finden Sie unter Failover initialisieren.
Vermeiden Sie große Transaktionen. Kleine, kurze Transaktionen sind zu bevorzugen. Umfangreiche Datenbankupdates führen Sie besser in mehreren kleinen Transaktionen statt in einer einzelnen großen Transaktion durch.
Wenn Sie den Cloud SQL-Proxy verwenden, müssen Sie darauf achten, dass es die neueste Version ist. Weitere Informationen finden Sie unter Aktuelle Version des Cloud SQL-Proxys.

Import und Export von Daten

Best Practice Weitere Informationen
Beschleunigen Sie Importe für kleine Instanzen. Bei kleinen Instanzen können Sie vorübergehend die Stufe einer Instanz erhöhen, um beim Importieren großer Datasets die Leistung zu optimieren.
Wenn Sie Daten für den Import in Cloud SQL exportieren, müssen Sie auf das richtige Vorgehen achten. Weitere Informationen finden Sie unter Daten exportieren.
Schützen Sie Ihre Daten mit den jeweils am besten geeigneten Cloud SQL-Funktionen.

Sicherungen und Exporte sind zwei Möglichkeiten, für Datenredundanz und Datenschutz zu sorgen. Beide ergänzen sich, schützen vor unterschiedlichen Szenarien und sind Teil einer robusten Datenschutzstrategie.

Sicherungen benötigen nicht viele Ressourcen. Damit können Sie die Daten einer Instanz zum Zeitpunkt der Sicherung wiederherstellen. Es gelten jedoch einige Einschränkungen. Wenn Sie eine Instanz löschen, werden auch ihre Sicherungen gelöscht. Sie können keine einzelne Datenbank oder Tabelle sichern. Wenn die Region, in der sich die Instanz befindet, nicht verfügbar ist, können Sie die Instanz aus dieser Sicherung nicht wiederherstellen, auch nicht in einer verfügbaren Region.

Exporte dauern länger, da in Cloud Storage eine externe Datei erstellt werden muss, die zum Wiederherstellen der Daten verwendet werden kann. Exporte sind vom Löschen einer Instanz nicht betroffen. Außerdem können Sie je nach Exportformat auch eine einzelne Datenbank oder sogar nur eine Tabelle exportieren.