λογισμικό

* Γνώση Υπολογιστών >> λογισμικό >> λογισμικού βάσεων δεδομένων

DB2 και ανισότητα Χρήσεις του Δείκτη

Το σύστημα διαχείρισης βάσεων δεδομένων DB2 , όπως με τις περισσότερες σχεσιακές βάσεις δεδομένων , απασχολεί ειδικών αρχείων που ονομάζονται δείκτες να επιταχύνει αναζητήσεις ρεκόρ . Τις περισσότερες φορές , τα προγράμματα χρησιμοποιούν ένα ευρετήριο για να ανακτήσετε μια συγκεκριμένη εγγραφή από ένα πίνακα της βάσης δεδομένων ? Ωστόσο , DB2 σας επιτρέπει να εντοπίσετε πολλές εγγραφές που αντιπροσωπεύουν μια σειρά . Στην τελευταία περίπτωση , μπορείτε να δημιουργήσετε μια δομημένη δήλωση Query Language που χρησιμοποιεί ανισοτήτων, όπως μεγαλύτερες ή μικρότερες από ό, τι . Γιατί να χρησιμοποιήσετε ένα δείκτη;
Η

Χωρίς ένα ευρετήριο, ένας υπολογιστής πρέπει να διαβάσει κάθε εγγραφή σε έναν πίνακα μέχρι να εντοπίζει αυτό που ταιριάζει με ένα κριτήριο . Για παράδειγμα , σε απευθείας σύνδεση λιανοπωλητής έχει έναν πίνακα βάσης δεδομένων που περιέχει 100.000 πελάτες . Όταν Joe Smith συνδέεται με την ταυτότητα του πελάτη του , ο υπολογιστής θα πρέπει να διαβάσει δεκάδες χιλιάδες εγγραφές μέχρι να βρίσκεται του . Από μόνη της , η διαδικασία διαρκεί μερικά δευτερόλεπτα ? Πολλαπλασιάζεται με χιλιάδες πελάτες , αυτό γίνεται ώρες επιπλέον επεξεργασία . Ένα ευρετήριο αποθηκεύει μόνο τα αναγνωριστικά πελάτη σε ένα ξεχωριστό αρχείο που διοργανώνονται για γρήγορη πρόσβαση . DB2 εντοπίζει τη θέση του επιθυμητού εγγραφή στο αρχείο μετά την ανάγνωση μερικές εγγραφές δείκτη? Με τον αριθμό θέσης , ανακτά το αρχείο στον κύριο πίνακα άμεσα . Χρησιμοποιώντας ένα ευρετήριο , DB2 βρίσκει ένα αρχείο μέσα σε λίγα χιλιοστά του δευτερολέπτου , σε μεγάλο βαθμό την επιτάχυνση πολλές εργασίες βάσης δεδομένων .
Εικόνων Ισότητα και ανισότητα
Η

Ένα τυπικό πρόγραμμα χρησιμοποιεί μια ισότητα για να ανακτήσετε έναν δείκτη εγγραφή από ένα πίνακα DB2 , όπως ο κώδικας που ακολουθεί απεικονίζει SQL : SELECT

-πελάτη , διεύθυνση, πόλη , πολιτεία ΑΠΟ ΟΠΟΥ πελάτες CUSTOMER_ID = '51412 ' ?

η WHERE σε η εντολή SELECT εξισώνει το πεδίο CUSTOMER_ID σε μια τιμή αναγνωριστικό πελάτη . Περιστασιακά , μπορεί να θέλετε να δείτε τα αρχεία με ένα εύρος τιμών , όπως στην ακόλουθη δήλωση SQL : SELECT

-πελάτη , διεύθυνση, πόλη , πολιτεία ΑΠΟ ΟΠΟΥ πελάτες CUSTOMER_ID > = '51400 ' ?

Εδώ , η δήλωση τραβά πολλές εγγραφές από τη βάση δεδομένων , αρχίζοντας με το ένα που έχει ένα αναγνωριστικό πελάτη μεγαλύτερο ή ίσο με 51.400 . Η χρήση του είναι μεγαλύτερη από ή ίση με το σύμβολο είναι ένα παράδειγμα μιας ανισότητας. Παρά το γεγονός ότι η ισότητα ανακτά εγγραφές που ταιριάζουν σε ένα και μόνο αξία , μια ανισότητα βρίσκει αρχεία μεγαλύτερης ή μικρότερης αξίας .

Η Ο Τελεστής Like
Η

DB2 χρησιμοποιεί δείκτης ενός πίνακα όπου δυνατόν, αν και αυτό εξαρτάται από όρο WHERE δήλωση SQL σας . Εάν η δήλωση έχει ανισότητες , DB2 μπορούν να εξακολουθούν να χρησιμοποιούν το δείκτη , αλλά η απόδοση μπορεί να υποφέρει . Η τελεστή LIKE δείχνει πώς ο δείκτης λειτουργεί σε διαφορετικές καταστάσεις , στην πραγματικότητα δημιουργεί ανισότητες με χαρακτήρες μπαλαντέρ της , "%" και η πιο αποτελεσματική πρόταση SQL επιλέγει ένα ενιαίο, αδιάσπαστο σειρά , όπως φαίνεται στο παρακάτω SQL " _ ". :

SELECT -πελάτη , διεύθυνση, πόλη , πολιτεία ΑΠΟ ΟΠΟΥ πελάτες CUSTOMER_ID LIKE '514 % ' ? " . 514 "

Η δήλωση βρίσκει όλα τα αρχεία που έχουν customer_IDs αρχίζοντας με DB2 ​​βρίσκει την πρώτη εγγραφή που πληροί το κριτήριο αυτό , ανακτά όλες τις μεταγενέστερες εγγραφές που ταιριάζουν , τότε σταματά . Η επόμενη δήλωση SQL είναι λιγότερο αποτελεσματική :

SELECT -πελάτη , διεύθυνση, πόλη , πολιτεία ΑΠΟ ΟΠΟΥ πελάτες » _1400 » CUSTOMER_ID LIKE ?

Εδώ , το χαρακτήρα μπαλαντέρ " _ " καθορίζει όλες τις ταυτότητες των πελατών που τελειώνει με " 1400 " , αλλά η οποία αρχίζει με οποιοδήποτε αριθμό . DB2 πρέπει να αναζητήσετε το μεγαλύτερο μέρος του δείκτη , βρίσκοντας όλα τα αναγνωριστικά που αρχίζουν με " 1 ", " 2 " και ούτω καθεξής μέχρι το τέλος του πίνακα . Ο δείκτης αποθηκεύει λιγότερο χρόνο σε αυτή την κατάσταση . Εικόνων
Ευρετήρια πολλαπλών πεδίων
Η

Οι ρήτρες ΟΠΟΥ πολλές προτάσεις SELECT καθορίσετε πολλούς τομείς . Για να βελτιωθεί η ταχύτητα αυτών επιλέγει , ένας δείκτης μπορεί να φιλοξενήσει περισσότερα από ένα πεδία . Για παράδειγμα, η ακόλουθη SQL αναζητά αρχεία χρησιμοποιώντας ένα συνδυασμό των δραστηριοτήτων της ισότητας και της ανισότητας :

SELECT -πελάτη , διεύθυνση, πόλη , πολιτεία ΑΠΟ ΟΠΟΥ πελάτες state = ' IL ' ΚΑΙ zip_code > = '60600 ' ?

Αν έχετε συχνά ανακτήσετε τα δεδομένα , χρησιμοποιώντας τα ίδια πεδία και τα κριτήρια , να δημιουργήσετε ένα νέο δείκτη που συνδυάζει τα πεδία . Για καλύτερη απόδοση , τοποθετήστε τα πεδία της ισότητας στο δείκτη πρώτος, ακολουθούμενος από τους τομείς της ανισότητας .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα