Стандартты B * ағашында ROWID мәндері индекстің жапырақ түйіндерінде сақталады. Бит индексінде әр бит бір RO-WID-ді көрсетеді. Егер жолда белгілі бір мән болса, сол жолға сәйкес келетін бит «жоғарыға» айналады. Бит нөмірін ROWID түрлендіру үшін салыстыру функциясы қолданылады. Басқа типтерден айырмашылығы, бит индекстері де негізгі мән ретінде NULL болатын жолдарды ұсынады.
Бит индексін аз мәндермен сақтау үшін стандартты B * ағашына қарағанда әлдеқайда аз орын қажет.
Разрядтық индекстердің мүмкіндіктері мәліметтер қоймаларын ұйымдастырған кезде маңызды, бұл кезде қойманың әр өлшемінде көптеген мәндер пайда болады.
Oracle8i-де функционалды пернелердің индекстері енгізілді. Мұндай индекс стандартты B * ағашына немесе биттік индекске ұқсайды, тек басты мән бағанда (немесе бірнеше бағанда) сақталатын мән емес, SQL функциясын бағалаудың нәтижесі болып табылады.
Егер сіз өз функцияларыңызды жасасаңыз, бұл механизм одан да пайдалы. Сіз өте күрделі функция жаза аласыз, содан кейін оның негізінде индекс құра аласыз және сол арқылы осы функцияны қолданатын сұраныстардың өнімділігін күрт жақсарта аласыз.
Көрінбейтін индекстер
Oracle Database llg жоғарыда қарастырылған барлық индекстер типтері үшін қосымша мүмкіндік - көрінбейтін индекс ұсынады. Әдетте кез-келген индексті оптимизатор ескереді. Индексті оптимизатордан оны оффлайн режимінде немесе өшіру арқылы жасыруға болады. Бірақ кез-келген жағдайда индексті одан әрі нақты құруға айналдыру қажет болады.
Егер сіз индексті оңтайландырғыштан уақытша алып тастағыңыз келсе, мысалы, өнімділікті тексеру үшін не істеу керек? Бұл жерде көрінбейтін индекстер көмекке келеді - мұндай индекс деректерге қол жеткізудің мүмкін тәсілдерінің бірі болып саналмайды, бірақ оған қарамастан деректерді жаңарту және жою операциялары көрсетіледі.
НАЗАР АУДАРҒАНЫҢЫЗҒА РАҚМЕТ!
Дәріс бойынша кеңестер: «АТ»кафедрасы, корпус 2-Б, каб. 301