Thomas Güttler <[email protected]> wrote:

> Am 09.05.2011 12:04, schrieb Marcus Obst:
> ....
> 
> > Ein anschließendes
> > 
> > delete from measurements where session_id = 77;
> > 
> > dauert wie schon beschrieben ewig.
> 
> Hallo Marcus,
> 
> wenn die Tabelle vorher leer war, kann der Query-Planer
> kräftig daneben liegen. Bei kleinen Tabellen wählt
> er lieber sequentiellen-Scan als Index-Scan. Wenn
> nach dem Bulk-Insert die Statistik nicht stimmt, rammelt
> der Query durch zig-tausend Zeilen, obwohl es einen Index
> gibt.....
> 
> Hier lohnt es sich einmal ANALYZE per Hand aufzurufen.

Jein.

Wenn der Anteil an zu löschenden Zeilen groß gegenüber der Gesamtgröße
der Tabelle ist, dann ist ein Seq-Scan okay, weil ein Index-Scan nix
bringen würde. (höhere Kosten) Kommt natürlich auch auf das Storage an,
bei SSD's z.B. würde man die Kosten anders ansetzen und Index-Scan's
bevorzugen.

Aber prinzipiell stimmt die Aussage, daß ein (manuelles) ANALYSE nach
gröberen Änderungen sinnvoll ist. 


Andreas
-- 
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect.                              (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly."   (unknown)
Kaufbach, Saxony, Germany, Europe.              N 51.05082°, E 13.56889°

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Lug-dd maillist  -  [email protected]
https://ssl.schlittermann.de/mailman/listinfo/lug-dd

Antwort per Email an