Junior
Ի՞նչ տեսակների ինդեքսներ կան տվյալների բազաներում։
sobes.tech AI
Պատասխան AI-ից
Տեղեկատվական բազաների հիմնական ինդեքսների տեսակները:
-
B-Tree (B+Tree):
- ամենատարածված տեսակն է:
- հարմար է լայն սպեկտրի գործողությունների համար՝ տիրույթի որոնում, ճշգրիտ համապատասխանություն, դասավորություն:
- օգտագործվում է որպես նախնական տարբերակ շատ տվյալների բազաներում (MySQL, PostgreSQL, Oracle):
-
Հեշ-индեքսներ:
- հիմնված հեշ-թերթի վրա:
- շատ արագ է ճշգրիտ համապատասխանության որոնման համար (
=): - չի հարմար տիրույթի որոնման համար (
BETWEEN,<,>), դասավորության (ORDER BY) կամ պաթերնի որոնման (LIKE):
-
Լրացուցիչ տեքստային ինդեքսներ:
- նախատեսված են տեքստային դաշտերում որոնման համար (BLOB, TEXT):
- թույլ են տալիս որոնել բառեր կամ արտահայտություններ, հաշվի առնել սինոնիմները և մորֆոլոգիական վերլուծությունը:
- օրինակներ՝
MATCH...AGAINSTMySQL/MariaDB-ում,tsvector/tsqueryPostgreSQL-ում:
-
Տարածական ինդեքսներ (R-tree):
- օգտագործվում են աշխարհագրական կամ տարածական տվյալների ինդեքսավորման համար:
- արդյունավետորեն գտնում են օբյեկտները որոշ տարածության կամ սահմանների մեջ:
-
Բիթային քարտեզ (Bitmap):
- օգտագործվում է որոշ տվյալների բազաներում (օրինակ՝ Oracle, PostgreSQL):
- հարմար է ցածր կարդինալության դաշտերի համար (փոքր քանակությամբ եզակի արժեքներ՝ սեռ, կարգավիճակ՝ ակտիվ/ակտիվ չէ):
- կարող է շատ արդյունավետ լինել բարդ հարցումների համար՝ AND և OR օպերատորներով:
-
Կլաստերիզացված ինդեքս:
- ազդում է տվյալների ֆիզիկական կարգավորման վրա:
- միայն մեկ կլաստերիզացված ինդեքս կարող է լինել մեկ տողային աղյուսակում:
- հաճախ օգտագործվում է հիմնական բանալի համար:
-
Անկլաստերիզացված ինդեքս:
- չի որոշում ֆիզիկական կարգավորումը:
- պարունակում է ցուցիչներ ֆիզիկական դիրքորոշման համար:
- աղյուսակը կարող է ունենալ մի քանի անկլաստերիզացված ինդեքսներ:
-
Կապող (Covering) ինդեքս:
- ինդեքս, որը պարունակում է բոլոր սյունակները, որոնք անհրաժեշտ են հարցման կատարման համար՝ ներառյալ
SELECTցանկում,WHEREպայմաններում ևORDER BY: - թույլ է տալիս տվյալների բազային համակարգին չհասնել տվյալների, ինչը արագացնում է հարցումը:
- ինդեքս, որը պարունակում է բոլոր սյունակները, որոնք անհրաժեշտ են հարցման կատարման համար՝ ներառյալ
-
Ֆունկցիոնալ (արտահայտության վրա հիմնված) ինդեքս:
- կառուցված է մեկ կամ մի քանի սյունակների վրա ֆունկցիայի կամ արտահայտության արդյունքի վրա:
- թույլ է տալիս հաշվարկված արժեքների ինդեքսավորումը:
Ընտրելով ինդեքսի տեսակ, հաշվի առնվում է տվյալների տիպը, հաճախականությունը և հարցումների բնույթը (ճշգրիտ արժեքի որոնում, տիրույթ, դասավորություն, լրացուցիչ տեքստային որոնում և այլն), ինչպես նաև սյունակի կարդինալությունը։