Große Anzahl von Tabellen verwalten

Mit dem Cloud SQL-Recommender für hohe Anzahl von Tabellen können Sie Instanzen erkennen, deren Tabellenanzahl zu hoch ist und nahe dem SLA-Limit liegt. Er gibt dann Empfehlungen zur Optimierung solcher Instanzen und zur Verbesserung der Instanzleistung.

Auf dieser Seite wird beschrieben, wie der Recommender für eine hohe Anzahl Tabellen funktioniert und wie Sie ihn verwenden können.

Funktionsweise

Wenn in einer einzelnen Instanz 50.000 oder mehr Datenbanktabellen vorhanden sind, kann dies dazu führen, dass die Instanz nicht mehr reagiert oder keine Wartungsvorgänge ausführen kann. Die Instanz ist in diesem Fall nicht vom SLA abgedeckt.

Der Cloud SQL-Recommender für eine hohe Anzahl Tabellen analysiert Messwerte für die Anzahl der Tabellen für eine Cloud SQL-MySQL-Instanz. Wenn die Anzahl der Tabellen größer oder gleich 80% des SLA-Limits ist, also 50.000 Tabellen möglich sind, wird davon ausgegangen, dass die Instanz eine große Anzahl von Tabellen hat.

Preise

Der Cloud SQL-Recommender für eine hohe Anzahl geöffneter Tabellen befindet sich in der Recommender-Preisstufe Standard.

Hinweis

Bevor Sie Empfehlungen und Informationen aufrufen können, müssen Sie Folgendes tun:

  • Prüfen Sie, ob Sie die erforderlichen Rollen haben, um die Berechtigungen zum Aufrufen und Verwenden von Informationen und Empfehlungen zu erhalten.
    Tasks Rollen
    Empfehlungen abrufen Eine der folgenden Rollen: recommender.cloudsqlViewer oder cloudsql.viewer.
    Empfehlungen übernehmen Eine der folgenden Rollen: recommender.cloudsqlAdmin, cloudsql.editor oder cloudsql.admin.
    Weitere Informationen zu Rollen finden Sie unter Informationen zu Rollen und IAM-Berechtigungen zuweisen.
  • Recommender API aktivieren.

    Aktivieren Sie die API

Empfehlungen zur Verbesserung der Instanzleistung auflisten

Sie können die Empfehlungen zur Verbesserung der Instanzleistung mit der Google Cloud Console, gcloud CLI oder der Recommender API auflisten.

Die Empfehlungen zur Verbesserung der Instanzleistung werden nur angezeigt, wenn Ihre Instanzen fast die Leistungsgrenzwerte erreichen.

Console

So listen Sie Empfehlungen zur Instanzleistung mithilfe der Google Cloud Console auf:

  1. Rufen Sie die Seite Cloud SQL-Instanzen auf.

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie im Banner "Hohe Anzahl von Tabellenempfehlungen verwalten" auf Alle ansehen.

Oder führen Sie die folgenden Schritte aus:

  1. Rufen Sie den Recommendation Hub auf. Siehe auch Erste Schritte mit dem Recommendation Hub.

    Zum Recommendation Hub

  2. Klicken Sie auf der Karte Cloud SQL-Instanzleistung verbessern auf Alle ansehen.

  3. Wählen Sie die Instanzen mit der Empfehlung Hohe Anzahl von Tabellen verwalten aus.

gcloud-CLI

Führen Sie den Befehl gcloud recommender recommendations list so aus, um Empfehlungen zur Verbesserung der Instanzleistung mithilfe der gcloud CLI aufzulisten:

gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.cloudsql.instance.PerformanceRecommender \
--filter=recommenderSubtype=MYSQL_HIGH_NUMBER_OF_TABLES_BEST_PRACTICE

Dabei gilt:

  • PROJECT_ID: Ihre Projekt-ID
  • LOCATION: eine Region, z. B. us-central1

API

Rufen Sie zum Auflisten von Empfehlungen zur Verbesserung der Instanzleistung mithilfe der Recommendations API die Methode recommendations.list so auf:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTablesBestPractice/recommendations

Dabei gilt:

  • PROJECT_ID: Ihre Projekt-ID.
  • LOCATION: eine Region, z. B. us-central1

Wenn der Recommender Instanzen erkennt, die eine hohe Anzahl Tabellen haben, werden sie in einer Tabelle mit anderen Leistungsempfehlungen aufgelistet. Jede Zeile enthält die Instanz-ID, eine kurze Empfehlung, das Datenbankmodul, den Ort und das Datum der letzten Aktualisierung.

Informationen und detaillierte Empfehlungen anzeigen

Mit der Google Cloud Console, gcloud CLI oder der Recommender API können Sie Statistiken und detaillierte Empfehlungen zu Instanzen aufrufen, die eine hohe Anzahl an Tabellen haben.

Console

Wenn Sie mithilfe der Google Cloud Console Statistiken und detaillierte Empfehlungen zu Instanzen anzeigen möchten, die nahe am Leistungsgrenzwert liegen, klicken Sie auf den Empfehlungslink in der Liste der Instanzen.

gcloud-CLI

Um mit der gcloud CLI Statistiken und detaillierte Empfehlungen zu Instanzen aufzurufen, die nahe am Leistungsgrenzwert liegen, führen Sie so den Befehlgcloud recommender insights list aus:

gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.cloudsql.instance.PerformanceInsight \
--filter=insightSubtype=MYSQL_HIGH_NUMBER_OF_TABLES

Dabei gilt:

  • PROJECT_ID: Ihre Projekt-ID.
  • LOCATION: eine Region, z. B. us-central1

API

Um mithilfe der Recommendations API Statistiken und detaillierte Empfehlungen zu Instanzen zu erhalten, die nahe am Leistungsgrenzwert liegen, rufen Sie so die Methode insights.list auf:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTables/insights

Dabei gilt:

  • PROJECT_ID: Ihre Projekt-ID.
  • LOCATION: eine Region, z. B. us-central1

In der folgenden Tabelle sind die Statistik und die Empfehlung aufgeführt, die der Cloud SQL-Recommender für eine hohe Anzahl geöffneter Tabellen generiert, um Ihnen zu helfen, die Leistung zu verbessern. Die Untertypen werden in den Ergebnissen von gcloud CLI und der API angezeigt.

Statistik Empfehlung
Die Anzahl der Tabellen in dieser Instanz ist größer oder gleich 80 % des SLA-Limits, das bei 50.000 Tabellen liegt.
Untertyp: MYSQL_HIGH_NUMBER_OF_TABLES
Verbessern Sie die Leistung der Cloud SQL-Instanz, indem Sie die Anzahl der Tabellen reduzieren.
Untertyp: MYSQL_HIGH_NUMBER_OF_TABLES_BEST_PRACTICE

Empfehlungen übernehmen

Sehen Sie sich die Empfehlungen sorgfältig an und führen Sie einen der folgenden Schritte aus:

  • Klicken Sie zum Ansehen der Instanz auf Instanz aufrufen. Lesen Sie Leistung der Instanz optimieren und folgen Sie den Empfehlungen.

  • Klicken Sie auf Schließen, um die Empfehlung zu verwerfen, sodass sie ausgegraut ist und grau angezeigt wird.

  • Klicken Sie auf Abbrechen, um das Feld zu schließen, ohne die Empfehlung zu übernehmen oder zu verwerfen.

Leistung der Instanz optimieren

  • Bearbeiten Sie die Instanz, um die Anzahl der vCPUs auf mindestens 32 Kerne und die Speichergröße auf mindestens 200 GB zu erhöhen. Dadurch wird das Tabellenlimit der Instanz von 50.000 auf 500.000 erhöht.

  • Löschen Sie unnötige Tabellen:

    DROP TABLE TABLE_NAME; 

    Ersetzen Sie Folgendes:

    • TABLE_NAME: Name der Tabelle, die Sie löschen möchten.
  • Reduzieren Sie die Anzahl der Tabellen pro Instanz, indem Sie die Datenbank auf mehrere Instanzen aufteilen, um die Anzahl der Tabellen in jeder Instanz innerhalb der empfohlenen Limits zu halten.

  • Wenn Sie die Tabellenanzahl nicht sofort reduzieren können, können Sie zumindest die Wahrscheinlichkeit verringern, dass Ihre Instanz von der hohen Tabellenanzahl beeinträchtigt wird. Setzen Sie dazu das Flag innodb_file_per_table auf AUS. Informationen zum Deaktivieren des Werts des Flags innodb_file_per_table finden Sie unter Datenbank-Flag konfigurieren. Durch diese Einstellung wird die Instanz jedoch nicht wieder SLA-konform. Weitere Informationen finden Sie in den Betriebsrichtlinien.

  • Verwenden Sie einen allgemeinen Tablespace, um Tabellen zu erstellen oder verschieben Sie vorhandene Tabellen in einen allgemeinen Tablespace. Weitere Informationen finden Sie in der MySQL-Dokumentation zu allgemeinen Tablespaces.

Nächste Schritte