Oracle: Extentsize für Index-Tablespace

Hallo,

wenn man einen Index Tablespace anlegt, ist es dann sinnvoller als Standart eher kleine oder große Extents zu nutzen ?

Wie bestimme ich die „optimale“ Größe ?

Gibt es eigentlich eine Faustformel, ab welcher Zeilenanzahl ein Index sinnvoll sein könnte ?

Es ist ziemlich schwer Informationen über derartige Designfragen zu finden. Grundlegende Informationen über den Aufbau, Überlegungen bezüglich Normalisierung kenne ich.

Aber wie man Größen für Extents ermittelt oder sowas… ?

Grüße

Chris

Moin, Chris,

Wie bestimme ich die „optimale“ Größe ?

dazu sollte es in der Database Administrator’s Reference Formeln geben. Die Überlegungen sind nicht so kompliziert: Je größer der Extent, desto mehr Indizes passen hinein, dann musst Du aber noch wissen, wie groß das gelesene Segment ist - davon hängt die Zahl der Plattenzugriffe ab. Je größer das Segment (heißt manchmal auch Page), das eingelesen werden muss, desto weniger Zugriffe, desto mehr Rechenzeit.

Gibt es eigentlich eine Faustformel, ab welcher Zeilenanzahl
ein Index sinnvoll sein könnte ?

Das ist beim Suchen wurscht, weil der Optimizer selbst entscheidet, ob er den Index nutzt oder nicht. Also lieber einen zuviel anlegen - wenn ihn niemand nutzt, ist das kein Unglück. Der Aufwand, den Index zu pflegen, hält sich in Grenzen.

Aber wie man Größen für Extents ermittelt oder sowas… ?

Bei DB2 uaf dem Host wüsste ich, wo das zu finden wäre, in der PC-Welt leider nicht.

Gruß Ralf