Кластер ба Кластер бус индекс
Индексүүд нь аливаа мэдээллийн санд маш чухал байдаг. Эдгээрийг хүснэгтээс мэдээлэл авах ажиллагааг сайжруулахад ашигладаг. Эдгээр нь холбогдох хүснэгтүүдийн өгөгдлөөс логик болон физикийн хувьд бие даасан байдаг. Тиймээс үндсэн хүснэгтийн өгөгдөлд нөлөөлөхгүйгээр индексүүдийг буулгаж, дахин үүсгэж, дахин бүтээж болно. Oracle сервер нь холбогдох хүснэгтүүдийг оруулах, шинэчлэх, устгах үед DBA-ийн оролцоогүйгээр автоматаар индексээ хадгалах боломжтой. Хэд хэдэн төрлийн индекс байдаг. Тэдгээрийн заримыг энд оруулав.
1. B-модны индекс
2. Битмап индекс
3. Функцид суурилсан индекс
4. Урвуу түлхүүрийн индекс
5. B-модны кластерын индекс
Кластер бус индекс гэж юу вэ?
Дээрх индексийн төрлүүдээс дараах нь бөөгнөрөлгүй индексүүд юм.
• В модны индекс
• Битмап индекс
• Функцид суурилсан индекс
• Урвуу түлхүүрийн индексүүд
В-модны индексүүд нь мэдээллийн сангийн хамгийн өргөн хэрэглэгддэг индексийн төрөл юм. Өгөгдлийн сан дээр CREATE INDEX командыг төрлийг заахгүйгээр өгвөл Oracle сервер нь b модны индекс үүсгэдэг. Тодорхой багана дээр b модны индекс үүсгэх үед oracle сервер баганын утгыг хадгалж, хүснэгтийн бодит мөрийн лавлагааг хадгалдаг.
Битмап индексийг баганын өгөгдөл маш сонгомол биш үед үүсгэнэ. Энэ нь баганын өгөгдөл бага зэрэгтэй байна гэсэн үг юм. Эдгээр нь өгөгдлийн агуулахад зориулж тусгайлан бүтээгдсэн бөгөөд битмап индексийг маш их шинэчлэгдэх эсвэл гүйлгээтэй хүснэгтэд ашиглах нь тийм ч сайн биш юм.
Функциональ индексийг Oracle 8i-ээс гаргаж байна. Энд индексжүүлсэн баганад функцийг ашигладаг. Тиймээс функциональ индекст баганын өгөгдлийг ердийн аргаар эрэмбэлдэггүй. Энэ нь функцийг хэрэглэсний дараа баганын утгыг эрэмбэлдэг. Сонгосон асуулгын WHERE хаах функцийг ашиглах үед эдгээр нь маш хэрэгтэй.
Урвуу түлхүүр индексүүд нь маш сонирхолтой индексийн төрөл юм. Багана нь 'хотA', 'хотB', 'хотC'… гэх мэт олон өвөрмөц мөр өгөгдлийг агуулж байна гэж үзье. Бүх үнэ цэнэ нь загвартай байдаг. Эхний дөрвөн тэмдэгт ижил бөгөөд дараагийн хэсгүүд нь өөрчлөгдөнө. Тиймээс энэ баганад REVERSE түлхүүрийн индекс үүсгэгдэх үед Oracle стринг эргүүлж, b модны индекст сэргээх болно.
Дээр дурьдсан индексийн төрлүүд нь БҮЛГЭЭГҮЙ индексүүд юм. Энэ нь индексжүүлсэн өгөгдлийг хүснэгтээс гадуур хадгалж, хүснэгтийн эрэмбэлэгдсэн лавлагааг хадгална гэсэн үг.
Кластерт индекс гэж юу вэ?
Кластерт индексүүд нь тусгай төрлийн индекс юм. Энэ нь хүснэгтийн өгөгдлийг физик байдлаар хадгалах арга замын дагуу өгөгдлийг хадгалдаг. Тиймээс нэг хүснэгтэд олон тооны кластер индекс байж болохгүй. Нэг хүснэгт нь зөвхөн нэг кластер индекстэй байж болно.
Кластерт болон Кластерт бус индексүүдийн ялгаа нь юу вэ?
1. Хүснэгт нь зөвхөн нэг кластер индекстэй байж болох ч нэг хүснэгтэд 249 хүртэл кластер бус индекс байж болно.
2. Анхдагч түлхүүр үүсгэх үед кластерийн индекс автоматаар үүсгэгддэг, харин өвөрмөц түлхүүр үүсгэх үед кластерт бус индекс үүсдэг.
3. Бүлэглэсэн индексийн логик дараалал нь хүснэгтийн өгөгдлийн физик дараалалтай таарч байгаа боловч кластерт бус индексүүдэд тохирохгүй байна.