Abfragepläne verwalten

In diesem Dokument wird beschrieben, wie Sie die Leistung Ihres Abfrageplans mit der Abfrageplanverwaltung in AlloyDB for PostgreSQL verbessern können. Die Abfrageplanverwaltung verfolgt kontinuierlich alle Abfragepläne und ihre Ausführungsstatistiken in Ihrer Datenbank. Nachdem Sie die Abfragen und die damit verbundenen Kosten überprüft haben, können Sie einen Plan genehmigen, der für eine bestimmte Abfrage einheitlich angewendet wird. Dieser Ansatz sorgt für die Auswahl eines kosteneffizienten Abfrageplans, was zu einer verbesserten Abfrageleistung führt.

Funktionsweise

In PostgreSQL wählt ein Abfrageoptimierungstool für jede Abfrage einen Ausführungsplan basierend auf geschätzten Kosten aus. Viele Faktoren beeinflussen die Kosten einer Abfrage, z. B. Abfrageparameter, Abfragekomplexität, Tabellengröße, verfügbare Indexe und Systemressourcen.

Da sich die Abfrageparameter bei jeder Abfrageausführung ändern können, führt die dynamische Auswahl eines Abfrageplans möglicherweise nicht immer zu optimalen Ergebnissen. Bei der Verarbeitung einer Abfrage wertet das Optimierungstool verschiedene Ausführungspläne aus und versucht, den kostengünstigsten Plan auszuwählen.

Eine Parameteränderung kann zu einer Planänderung führen. Der ausgewählte Plan ist in der Regel die kostengünstigste Option. Es kann jedoch vorkommen, dass ein weniger kosteneffizienter Plan ausgewählt wird, was zu einer schlechten Abfrageleistung führt. Mit der Abfrageplanverwaltung können Sie die Muster und Pläne des Optimierungstools nachvollziehen und jeden Plan ansehen, um fundierte Entscheidungen zu treffen.

Die beiden Hauptkomponenten der Abfrageplanverwaltung sind:

Abfrageplan-Repository
Wenn Sie die Abfrageplanverwaltung für Ihre Datenbank aktivieren, werden im Plan-Repository Verlaufspläne und Ausführungsstatistiken für Ihre Datenbank erfasst. Das Abfrageplan-Repository bietet Einblicke in die Leistung des Abfrageplans.
Planverwaltung
Nachdem Sie die verfügbaren Pläne überprüft haben, können Sie mit der Planverwaltungskomponente einen oder mehrere Pläne für eine bestimmte Abfragevorlage genehmigen. Die Abfrageplanverwaltung verfolgt diese genehmigten Pläne und sorgt dafür, dass das Abfrageoptimierungstool bei der anschließenden Ausführung der Abfrage nur einen der genehmigten Pläne verwendet. Wenn mehrere Pläne genehmigt wurden, wählt AlloyDB den Plan mit den niedrigsten geschätzten Kosten aus und führt ihn aus.

Hinweis

  • Legen Sie das Datenbank-Flag google_plan_management.enabled auf on fest. Weitere Informationen finden Sie unter Datenbank-Flags konfigurieren.
  • Erstellen Sie die Erweiterung google_plan_management in der Datenbank. Weitere Informationen finden Sie unter Erweiterung aktivieren.
  • Gewähren Sie die Rolle google_plan_management_role den Nutzern der Datenbank, die die Abfrageplanverwaltung verwenden und Abfragepläne verwalten möchten.

    1. Rufen Sie in der Google Cloud Console die Seite Cluster von AlloyDB auf.

      Zu den Clustern

    2. Klicken Sie auf die gewünschte Instanz.

    3. Klicken Sie auf AlloyDB Studio und dann auf den Tab Editor 1.