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);