Sobes.tech
Middle

რა ტიპის ინდექსები არსებობს?

sobes.tech AI

პასუხი AI-სგან

ინდექსების ტიპები დამოკიდებულია მათი გამოყენების კონტექსტზე, ჩვეულებრივ მონაცემთა ბაზებში.

საწყობის სტრუქტურის მიხედვით:

  • B-ხე (B-Tree): ყველაზე გავრცელებული ტიპი, გამოიყენება მონაცემების სორტირებისთვის და სწრაფი დიაპაზონის ძიებისთვის.
  • B+ ხე (B+ Tree): B-ხეს ვარიანტი, სადაც ყველა მონაცემი მოთავსებულია ფოთლოვან ნოდებში, რაც ოპტიმიზირებს სექვენტულ წაკითხვას.
  • Hash ინდექსი: დაფუძნებულია ჰეშ სქემებზე, ეფექტურია ზუსტ შესაბამისობებზე ძიებისთვის, მაგრამ არ არის შესაფერის დიაპაზონის ან სორტირების ძიებისთვის.
  • R-ხე (R-Tree): გამოიყენება მრავალმეტრიული მონაცემების ინდექსირებისთვის, მაგალითად, გეოგრაფიული კოორდინატებისთვის.

მიზნის მიხედვით:

  • ძირითადი გასაღების ინდექსი: ავტომატურად იქმნება ძირითადი გასაღებისთვის, უზრუნველყოფს უნიკალურობას და სერვისს როგორც ჩანაწერის იდენტიფიკატორს.
  • მეორე დონის ინდექსი: იქმნება ერთ ან რამდენიმე სვეტზე, რათა გაადვილოს შეკითხვები, რომლებიც არ არის ძირითადი გასაღები.
  • უნიკალური ინდექსი: უზრუნველყოფს მნიშვნელობების უნიკალურობას ინდექსირებულ სვეტში (ან სვეტების კომბინაციაში).
  • სრული ტექსტის ინდექსი: გამოიყენება ტექსტის ძიებისთვის სვეტებში.
  • მიწისზომის ინდექსი: გამოიყენება სივრცული მონაცემების ინდექსირებისთვის.

შექმნის მეთოდით:

  • კლასტერული ინდექსი: განსაზღვრავს ფიზიკურ წესს მონაცემების შენახვისთვის ცხრილში. ცხრილი შეიძლება ჰქონდეს მხოლოდ ერთ კლასტერულ ინდექსს.
  • ნაკლასტერული ინდექსი: ინახავს მითითებებს რეალურ მონაცემებზე, რომლებიც შეიძლება იყოს სხვა წესით განლაგებული.

SQL-ში ინდექსების შექმნის მაგალითი:

-- ჩვეულებრივი ინდექსის შექმნა
CREATE INDEX idx_lastname ON Employees (LastName);

-- უნიკალური ინდექსის შექმნა
CREATE UNIQUE INDEX idx_employeeid ON Employees (EmployeeID);

-- კომპოზიციური ინდექსის შექმნა
CREATE INDEX idx_name_city ON Customers (FirstName, City);