Sobes.tech
Junior — Middle

როგორ განსაზღვრავთ SQL-საკითხებში ინდექსირების გამოყენების საჭიროებას?

sobes.tech AI

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

SQL-ში ინდექსირება გამოიყენება მონაცემთა ძიებისა და ამოღების სიჩქარის გასაზრდელად. მისი გამოყენების საჭიროება განსაზღვრავს შემდეგ ნიშნებს:

  • ხშირი შეკითხვები WHERE, JOIN ან ORDER BY პირობებით გარკვეულ სვეტებზე.
  • სვეტების დიდი რაოდენობით სვეტების მქონე სია, სადაც სრული სკანირება (full table scan) დიდ დროს მოითხოვს.
  • შეკითხვის შესრულების გეგმის ანალიზი (EXPLAIN) აჩვენებს, რომ შეკითხვები ნელი მუშაობს ინდექსების არარსებობის გამო.

მაგალითი: თუ გაქვთ სია Users მილიონობით ჩანაწერით და ხშირად ახორციელებთ შეკითხვებს Email-ზე, უნდა შექმნათ ინდექსი:

CREATE INDEX idx_users_email ON Users(Email);

თუმცა, ინდექსები აჩერებენ ჩასმასა და განახლებას, ამიტომ საჭიროა მათი ზომიერი გამოყენება.