Sobes.tech
Middle

Ποιοι τύποι ευρετηρίων υπάρχουν;

sobes.tech AI

Απάντηση από AI

Οι τύποι ευρετηρίων εξαρτώνται από το πλαίσιο χρήσης τους, συνήθως σε βάσεις δεδομένων.

Κατά δομή αποθήκευσης:

  • B-δέντρο (B-tree): Ο πιο συνηθισμένος τύπος, χρησιμοποιείται για ταξινομημένη αποθήκευση δεδομένων και γρήγορη εύρεση εύρους.
  • B+ δέντρο (B+ tree): Παραλλαγή του B-δέντρου, όπου όλα τα δεδομένα αποθηκεύονται στους φύλλους, βελτιστοποιώντας την σειριακή ανάγνωση.
  • Hash Index: Βασίζεται σε πίνακες κατακερματισμού, αποτελεσματικό για ακριβείς αντιστοιχίσεις, αλλά όχι κατάλληλο για εύρεση εύρους ή ταξινόμηση.
  • 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);