Fill factor

Fill factor udává procento zaplnění datových stránek při vytvoření, reorganizaci, nebo rebuildu indexů.

Hodnoty 0 a 100 jsou shodné a znamenají, že stránka bude plná. Hodnota 70 znamená, že stránka bude zaplněna na 70%, a že v ní tedy bude ještě 30% volného místa.

Fill factor se nastavuje na jinou hodnotu než 100, pokud chceme zamezit častému dělení stránek, nebo rychle rostoucí fragmentaci indexu. Dělení stránek je nákladná operace. Pokud ve stránce necháme volné místo, pak vložení nových dat nemusí hned znamenat dělení stránky. Fill factor tedy může snižovat náklady při vkládání záznamů.

Na druhou stranu je potřeba si uvědomit, že pokud nastavíme fill factor na hodnu 50, pak zdvojnásobíme velikost indexu a tím dvakrát zpomalíme čtení, protože bude nutné přečíst dvakrát tolik dat. Data budou zabírat dvakrát tolik jak v paměti, tak na disku.

Volné místo dle fill factoru se ve stránkách vytváří při vytvoření, reorganizaci, nebo rebuildu indexu. S vkládanými záznamy se již neudržuje.

Fill factor nemá cenu nastavovat pro indexy nad sloupci, které jsou stále rostoucí řadou (identity, časové razítka), protože do takového indexu se záznamy vkládají na konec a volné místo uprostřed indexu se tak nevyužije.