Christian Kruse: Full Table Scan schneller als Index Scan

Beitrag lesen

Hallo TS,

Wo liegt denn da nun mein Verständnisproblem?

In der Annahme, alle Dateisysteme wären fragmentiert. Sind sie aber nicht. Moderne Dateisysteme halten die Fragmentierung klein und gering.

Dann wäre es doch sinnvoller, zunächst mal den Index unfragmentiert zu halten, bzw. im Cache.

Der Index ist aufgrund seiner Datenstruktur „fragmentiert.“ Um in einem Baum zu suchen musst du ja innerhalb dieses Baumes den Knoten folgen.

Und ja, große Teile des RAMs auf dedizierten Datenbankservern wird für Cache verwendet, da hat ext recht. Das wird in die Kostenabschätzung auch mit einbezogen. Bei PostgreSQL gibt es dafür etwa den Parameter effective_cache_size. Mehr effective_cache_size macht es wahrscheinlicher, dass ein Index benutzt wird.

LG,
CK