it-swarm.com.de

Unterschied zwischen abgerufenen und zurückgegebenen Tupeln in postgresql

Es fällt mir schwer, einige Leistungsprobleme in meiner Datenbank herauszufinden. Ich verwende eine Reihe von Online-Ressourcen, um zu lernen, was zu überwachen und wie diese Informationen zu interpretieren sind.

Aus dem oben Gesagten kann ich keine klare Erklärung für den Unterschied zwischen pg_stat_database.tup_returned und pg_stat_database.tup_fetched.

In pgAdmin4 gibt es ein schönes Diagramm namens "Tuples out", in dem diese beiden Konzepte gegenübergestellt werden, aber ich weiß nicht, wie ich die Informationen interpretieren soll. In der offizielle Dokumentation heißt es nur:

  • tup_returned: Anzahl der Zeilen, die von Abfragen in dieser Datenbank zurückgegeben werden
  • tup_fetched: Anzahl der Zeilen, die von Abfragen in dieser Datenbank abgerufen wurden

Was genau bedeutet "abgerufen" und "zurückgegeben"?

Ich benutze postgresql 10.

7
Rogelio Delgado

Wenn Sie select count(*) from million_row_table ausführen, wird eine Million Zeilen zurückgegeben, aber nur eine Zeile wird abgerufen.

Ich kann nicht sehen, dass ich diese Felder jemals für die Diagnose von Leistungsproblemen nützlich gefunden habe. Suchen Sie Ihre langsame Abfrage und führen Sie eine EXPLAIN (ANALYZE, BUFFERS) davon aus.

11
jjanes