Еще есть такой прием (в одной книжке по ораклу вычитал) как overindexing - в индекс добавляется поле, которое нужно выбирать при выборке по индексу. Таким образом не нужна операция по подъему из базы страниц с данными - значение берется из индекса.
то есть если будет запрос
X++:
select recID from T where T.ItemID = 'z'
то будет выбрана одна страница с индексом, а не сначала страница с индексом, а потом с страница с данными самой таблицы.