PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

pgDash-Diagnosealternativen – PostgreSQL-Abfrageverwaltung mit ClusterControl

Bei Datenbanken dreht sich alles um Abfragen. Sie speichern Ihre Daten darin und müssen sie dann irgendwie abrufen können. Hier kommen Abfragen - Sie schreiben sie in einer Sprache, strukturiert oder nicht, auf diese Weise definieren Sie, welche Daten Sie abrufen möchten. Im Idealfall wären diese Abfragen schnell, schließlich wollen wir nicht auf unsere Daten warten. Es gibt viele Tools, mit denen Sie verstehen können, wie sich Ihre Abfragen verhalten und wie sie funktionieren. In diesem Blogbeitrag vergleichen wir pgDash und ClusterControl. In beiden Fällen ist die Abfrageleistung nur ein Teil der Funktionalität. Schauen wir sie uns ohne weiteres an.

Was ist pgDash?

pgDash ist ein Tool zur Überwachung von PostgreSQL, und die Überwachung der Abfrageleistung ist eine der verfügbaren Funktionen.

pgDash erfordert pg_stat_statements, um die Daten abzurufen. Es ist möglich, Abfragen pro Datenbank anzuzeigen. Sie können festlegen, welche Spalten sichtbar sein sollen (standardmäßig werden einige davon nicht angezeigt, um die Daten besser lesbar zu machen). Sie können mehrere Arten von Daten wie Ausführungszeit (Durchschnitt, Max, Min, Gesamt) sehen, aber auch Informationen über temporäre Blöcke, Zeilen, auf die zugegriffen wird, Festplattenzugriff und Puffertreffer. Dies schafft einen guten Einblick in die Leistung einer bestimmten Abfrage und was der Grund sein könnte, warum sie nicht effizient funktioniert. Sie können die Daten anhand einer beliebigen Spalte sortieren und nach Abfragen suchen, die beispielsweise die langsamsten sind oder die am meisten temporären Blöcke schreiben.

Bei Bedarf können Sie Abfragen nachschlagen, die in einem definierten Zeitfenster ausgeführt wurden.

Die Granularität beträgt hier eine Minute.

Sie können auf jede Suchanfrage in der Liste klicken und detailliertere Statistiken anzeigen.

Sie können die genaue Abfrage sehen, einige Daten dazu (Festplattenzugriff, gemeinsamer Pufferzugriff, Zugriff auf temporäre Blöcke). Es ist auch möglich, das Testen und Speichern des Ausführungsplans für die Abfragen zu aktivieren. Schließlich können Sie die Diagramme sehen, die zeigen, wie sich die Leistung der Abfrage im Laufe der Zeit verändert hat.

Insgesamt bietet pgDash einen guten Einblick in die Abfrageleistungsmetriken in PostgreSQL.

ClusterControl PostgreSQL-Abfrageüberwachung und -verwaltung

ClusterControl wird mit Query Monitor geliefert, der Benutzern einen Einblick in die Leistung ihrer Abfragen geben soll. Query Monitor kann für PostgreSQL, aber auch für MySQL und Galera Cluster verwendet werden.

ClusterControl zeigt Daten an, die über alle Datenbanken und Hosts im Cluster aggregiert sind. Die Liste der Abfragen enthält Informationen zu leistungsbezogenen Metriken. Anzahl der Vorkommen, untersuchte Zeilen, temporäre Tabellen, maximale, durchschnittliche und gesamte Ausführungszeit. Die Liste kann anhand einiger Spalten sortiert werden (Vorkommen, Maximum, Durchschnitt, Standardabweichung und Gesamtausführungszeit).

Jede Abfrage kann angeklickt werden, sie zeigt den vollständigen Abfragetext, einige zusätzliche Details und die allgemeinen Optimierungshinweise.

ClusterControl wird auch mit dem Query Outliers-Modul geliefert.

Wenn es Abfragen gibt, die von der durchschnittlichen Leistung dieser bestimmten Abfrage abweichen Typ, werden sie in diesem Abschnitt angezeigt, damit der Benutzer besser verstehen kann, welche Abfragen sich inkonsistent verhalten, und versuchen kann, die Ursache dafür zu finden.

PostgreSQL-Tabellen- und Indexmetriken

Zusätzlich zu Daten, die sich direkt auf die Abfrageleistung beziehen, liefern beide Tools Informationen zu anderen Interna, die sich auf die Abfrageleistung auswirken können.

pgDash hat einen „Tools“-Bereich, in dem Sie Informationen über Indizes, Tabellengröße und Aufblasen sammeln können:

Ähnliche Daten sind in ClusterControl in Abfragestatistiken verfügbar:

Es ist möglich, die E/A-Statistiken für Tabellen und Indizes zu überprüfen, aufgeblähte Tabellen und Indizes, ungenutzte oder duplizierte Indizes. Sie können auch überprüfen, auf welche Tabellen mit größerer Wahrscheinlichkeit zugegriffen wird, indem Sie Index- oder sequentielle Scans verwenden. Sie können auch die Größe der größten Tabellen und Datenbanken überprüfen.

Fazit

Wir hoffen, dass dieser kurze Blog Ihnen einen Einblick gibt, wie ClusterControl im Vergleich zu pgDash in Bezug auf Funktionen im Zusammenhang mit der Abfrageleistung abschneidet. Bitte beachten Sie, dass ClusterControl Sie nicht nur bei der Leistungsüberwachung unterstützen soll, sondern auch HA-Stacks für mehrere Open-Source-Datenbanken erstellen und bereitstellen, das Konfigurationsmanagement durchführen, Backup-Zeitpläne definieren und ausführen und viele weitere Funktionen ausführen soll. Wenn Sie an ClusterControl interessiert sind, können Sie es kostenlos herunterladen.