Skip to main content

Ποιο είναι το ένθετο μοντέλο set;

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

Χρησιμοποιείται συνήθως για να αντιπροσωπεύει ένθετα σύνολα ή ιεραρχικές πληροφορίες με τη μορφή δέντρων, το ένθετο μοντέλο εισήχθη από τον Joe Celko.Ένα δέντρο, σε αυτή την περίπτωση, είναι μια δομή δεδομένων που περιέχει έναν αριθμό συνδεδεμένων κόμβων.Για παράδειγμα, ένας γονικός κόμβος μπορεί να συνδεθεί με διάφορους παιδικούς κόμβους και αυτή η δομή επαναλαμβάνεται μέσω του δέντρου μέσω διαφόρων επιπέδων.

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

Μια σχεσιακή βάση δεδομένων αποθηκεύει όλες αυτές τις πληροφορίες σε μια εύχρηστη μορφή και ένα ένθετο μοντέλο που επιτρέπει την αποτελεσματική διαχείριση της δομής δέντρων.Χρησιμοποιώντας το παραπάνω παράδειγμα, ο κόμβος ρίζας θα ήταν φαγητό, το οποίο αντιπροσωπεύεται από δύο τιμές.Δεδομένης της αριστερής τιμής για τα τρόφιμα ως 1, τα άλλα αντικείμενα στο δέντρο έχουν εκχωρηθεί ένας αριθμός στα αριστερά.Τα φρούτα θα έχουν αξία 2 στα αριστερά, τα μούρα θα ήταν 3 και ούτω καθεξής.Οι τιμές στη συνέχεια εκχωρούνται στη δεξιά πλευρά, που εργάζονται σε όλη τη διαδρομή μέσα από το δέντρο, από κάτω προς τα πάνω, μέσω κάθε κλάδου έως ότου η τελευταία τιμή αποδοθεί σε τρόφιμα στη δεξιά πλευρά.

Κάθε στοιχείο στο δέντρο καταλήγει με δύο τιμές,Πείτε lft για αριστερά και rgt για δεξιά, τα οποία μπορούν να χρησιμοποιηθούν για να τα αναγνωρίσουν και να υποδείξουν τη σχέση τους με άλλα αντικείμενα.Για παράδειγμα, εάν τα φρούτα έχουν τιμή 2 και 15, τότε όλοι οι κόμβοι που έχουν αφήσει τιμές μεγαλύτερες από 2 και οι σωστές τιμές μικρότερες από 15 είναι απόγονοι του δέντρου φρούτων 2 15.Γίνεται εύκολο να τραβήξετε πληροφορίες σε όλα τα φρούτα με ένα go, επειδή αυτές οι τιμές μπορούν να καθοριστούν σε ένα μόνο ερώτημα στη βάση δεδομένων.

Αυτό το μοντέλο είναι εξαιρετικό για την αποθήκευση πληροφοριών που έχουν πρόσβαση συχνά, αλλά οι εισαγωγές, οι διαγραφές και οι πληροφορίες αναδιάταξηςΤο ένθετο μοντέλο καθίσταται πολύ κουραστικό.Η επανεγγραφή των ευρετηρίων και η ανανέωση των πληροφοριών μπορεί να προκαλέσει συντριβή της βάσης δεδομένων, ειδικά εάν το δέντρο αναπτύσσεται για να συμπεριλάβει εκατοντάδες χιλιάδες κόμβους.Το ένθετο μοντέλο Set είναι το καλύτερο για συστήματα διαχείρισης περιεχομένου φωτός που έχουν ελάχιστες εισαγωγές και αλλαγές.Οι εισαγωγές μπορούν να γίνουν πολύ πιο γρήγορα στο μοντέλο ένθετων διαστήματος, επειδή αποθηκεύει τη θέση κάθε κόμβου στο δέντρο χρησιμοποιώντας τα δεκαδικά ψηφία κυμαινόμενου σημείου, ενώ ταυτόχρονα κωδικοποιούν τις πληροφορίες διαδρομής.