PostgreSQL - Erklären

Inhaltsverzeichnis
Wenn wir mit Datenbanken arbeiten, gibt es einen Punkt, an dem es nicht mehr nur darum geht, die Informationen zu erhalten, die uns betreffen, sondern wie wir sie erhalten, da es je nach Konstruktion der Abfrage die Menge an Ressourcen ist, die unsere Abfrage dafür verbraucht PostgreSQL bietet uns ERKLÄREN ein Tool, mit dem wir sehen, wie unsere Abfrage ausgeführt wird und alles, was sie darstellt.
ERKLÄREN und ERKLÄREN ANALYSIEREN
Diese beiden Tools sind die Hauptbasis bei der Suche nach Leistungsproblemen der von uns durchgeführten Abfragen, obwohl sie trotz ihrer Nützlichkeit nichts Neues sind, da sie in die Software aufgenommen wurden PostgreSQL Seit ihren Anfangsjahren bedeutet dies jedoch nicht, dass sie veraltet oder veraltet sind, im Gegenteil, sie sind zu einem Werkzeug gereift, das in der Lage ist, die detailliertesten Berichte über die Ausführung von Abfragen zu erstellen, einschließlich der vom Werkzeug geworfenen Ergebnisse in Formaten wie XML oder JSON zur späteren Analyse mit anderen Tools.
In pgAdmin Wir haben eine Option, um eine Grafik des Ergebnisses von zu erhalten ERKLÄREN damit wir anstelle der Analyse von Zahlen eine Grafik sehen und auf diese Weise die Probleme der Abfrage und die Verbesserungsmöglichkeiten leichter erkennen können.
Unterschiede zwischen EXPLAIN und EXPLAIN ANALYZE
Vielleicht werden beide Begriffe so verwendet, als ob sie dasselbe wären, aber zwischen ihnen gibt es zum Beispiel Unterschiede ERKLÄREN gibt uns eine Vorstellung davon, wie der Abfrageplaner die Abfrage ausführen möchte, führt sie jedoch nicht aus ANALYSE ERKLÄREN wenn Sie es ausführen und es uns einen Vergleich zwischen der erwarteten Leistung und der bei der Ausführung erzielten tatsächlichen Leistung liefert. Beim Starten ERKLÄREN über pgAdmin Wir können zwischen EXPLAIN und EXPLAIN ANALYZE wählen, was uns das Ergebnis jedes einzelnen liefert, wenn wir sie auswählen
Sehen wir uns ein Beispiel für die Verwendung dieses Tools an, dafür werden wir verwenden ANALYSE ERKLÄREN, sehen wir uns den folgenden Code an:
 EXPLAIN ANALYZE SELECT left (tract_id, 5) Als county_code, SUM (hispanic_or_latino) Als tot, SUM (white_alone) Als tot_white, SUM (coalesce (hispanic_or_latino, 0) - coalesce (white_alone, 0)) AS non_white FROM census.BY ._pop county_code ***** BY county_code; 

Es ist eine sehr einfache Abfrage, bei der wir die Felder summieren, gruppieren und nach einem der Felder sortieren. Als Ergebnis der Leistungsanalyse erhalten wir Folgendes:
 GroupAggregate (Kosten = 111,29… 151,93 Zeilen = 1478) (tatsächliche Zeit = 6,099… 10,194 Zeilen = 14 Schleifen = 1) -> Sortieren (Kosten = 111,29… 114,98 Zeilen = 1478) (tatsächliche Zeit = 5,897… 6,565 Zeilen = 1478 Schleifen = 1) Sortierschlüssel: ("left" ((tract_id) :: text, 5)) Sortiermethode: quicksort Speicher: 136kB -> Seq Scan auf hisp_pop (Kosten = 0,00… 33,48 Zeilen = 1478) (tatsächliche Zeit = 0,390… 2,693 Reihen = 1478 Schleifen = 1) Gesamtlaufzeit: 10.370 ms 

Wenn wir uns beim Lesen ein wenig Mühe geben, werden die Ergebnisse für uns nach und nach leichter lesbar, aber wenn wir nicht viel Zeit haben oder das Ergebnis sehr umfangreich ist, können wir immer die Grafik sehen.

Wie wir sehen, ist es schneller, die Ergebnisse auf grafischer Ebene zu sehen, das Ideal ist, beide Tools zu verwenden und beide Blickwinkel zu ergänzen, es sind die gleichen Informationen nur mit verschiedenen Blickwinkeln, es wird Puristen geben, die nur arbeiten wollen mit der Kommandokonsole und das ist in Ordnung, ein umfassender Datenbankprofi muss jedoch alle ihm zur Verfügung stehenden Werkzeuge nutzen, um seine Arbeit zu verbessern.
Damit beenden wir das Tutorial, mit dem Einsatz dieser Tools werden wir bereits in der Lage sein, die Ursachen zu erkennen, die unsere Abfragen nicht schnell machen oder die Verbesserungsmöglichkeiten zur Optimierung unserer Abfrage.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben
wave wave wave wave wave