Свободно индексиране - бази данни

RID се използва за намиране на желания запис. Но всъщност SQL сървърите не работят със записи, а със страници. Страницата се чете всеки път и необходимият запис се търси в страницата. И ако е така, тогава всъщност RID (идентификатор на запис) може да бъде заменен с идентификатор на страница. Тъй като няколкостотин записа могат да се поберат на една страница, действителният общ индекс може да бъде намален. Тоест страница, равна на 1 KB, 2 или 4 (накратко, до 8 KB) се чете от паметта, след което търсенето на желания запис се извършва не на диска, а в RAM, търсенето в RAM е 1000 пъти по-бързо, като по този начин търсенето се намалява. Вместо указатели на записи могат да се използват указатели на страници.

Например, ако говорим за градове, тогава страницата, където се намират всички доставчици: Лондон, Париж и т.н. (в зависимост от това как изберете).

Такъв индекс се нарича разреден. Ако клъстерирането се извършва във файла на доставчиците по някакво поле, например по номера на доставчика, и върху него се създава индекс, тогава не е необходимо всички номера да се съхраняват. Тъй като в този случай се оказва: на всяка страница се съхраняват определен брой записи, подредени във възходящ ред на този номер. Идентификаторът например ще бъде 100, 200, 300, 400, а номерата на доставчиците ще са на отделна страница, т.е. ако са физически поръчани там, което се прави по време на групирането, тогава е достатъчно да насочите индекса към страницата (обикновен индекс) и на страницата всички те ще бъдат в един ред (101, 102 и т.н.). И търсенето там не е проблем.