Query Status erfahren

Hallo zusammen,

ich bin aufgrund von sehr großen Datenmengen dazu genötigt Queries zu erstellen, die trotz Einsatz von Indexes sehr lange dauern (1 Stunde und mehr). Es wäre für die Optimierung und den Einsatz in meinem System sehr hilfreich, wenn man den aktuellen Status einer Query erfahren könnte. Wenn ich z.B. “create table TEST as (select * from XXX where a = b and …)” dieses nun aber sehr lange dauert, würde ich gerne einsehen können wie lange es vermutlich noch dauert, oder auch welche internen Aktionen gerade durchgeführt werden (sequentiellen Scannen einer mittels subquery eingebundenen Tabelle, schreiben der Daten auf die Festplatte etc.). Wer kann helfen?

Vielen Dank,
Florian

EXPLAIN zeigt Dir den Ausführungsplan. Zu sehen, was gerade gemacht wird, ist nicht möglich.

Aslo, Dein Freund ist EXPLAIN und EXPLAIN ANALYSE. Und alles, was Google zum Thema Optimierung, Hardware-Setup, postgresql.conf etc. nennt.


Andreas

Ja leider.
Sowas wie Oracle’s V$SESSION_LONGOPS wo der Fortschritt von “lang laufenden” Statements automatisch angezeigt, wird fehlt noch bei PostgreSQL