Βάσεις Δεδομένων II Ενότητα 7: Ταυτοχρονισμός Γεωργία Γκαράνη

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΤΑΥΤΟΧΡΟΝΙΣΜΟΣ1. 2 Θεωρείστε δύο συναλλαγές (Xacts): T1:BEGIN R(X), X=Χ-N, W(X), R(Y), Y=Y+N, W(Y), END T2:BEGIN R(X) X=X+M, W(X) END v Διαισθητικά, η.
Advertisements

Ηλεκτρονική Ενότητα 5: DC λειτουργία – Πόλωση του διπολικού τρανζίστορ
Βάσεις Δεδομένων II Ενότητα 3: Σχεσιακός λογισμός I Γεωργία Γκαράνη Επίκουρος Καθηγήτρια Τμήμα Μηχανικών Πληροφορικής Τ.Ε. T.E.I. Θεσσαλίας.
Κατανεμημένα Συστήματα με Java Ενότητα # 5: Εκλογή αρχηγού Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής.
Ποιότητα Λογισμικού Ενότητα 3: Σουίτες Ελέγχων. Διδάσκων: Γεώργιος Κακαρόντζας, Καθηγητής Εφαρμογών. Τμήμα Μηχανικών Πληροφορικής, Τεχνολογικής Εκπαίδευσης.
Υδραυλικά & Πνευματικά ΣΑΕ
Εφαρμοσμένη Θερμοδυναμική
Χρονικός Προγραμματισμός Έργων (Εργαστήριο) Ενότητα 5: Αναθέσεις σε πόρους Κλεάνθης Συρακούλης, Επίκουρος Καθηγητής, Τμήμα Διοίκησης Επιχειρήσεων, T.E.I.
Ανθρωπολογία του Θεάτρου Ενότητα 4 η : Βασικές αρχές της Τέχνης του Ηθοποιού Γιώργος Σαμπατακάκης, M.Phil. (Καίμπρητζ) – Ph.D. (Λονδίνο) Τμήμα Θεατρικών.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Εκπαιδευτικά Προγράμματα με Χρήση Η/Υ ΙΙ Θέμα «παιγνίδια» (website address) Διδάσκουσα: Καθηγήτρια Τζένη.
Κλασσική Μηχανική Ενότητα 7: Η αρχή των δυνατών έργων. Η αρχή του D’ Alembert Βασίλειος Λουκόπουλος, Επίκουρος Καθηγητής Τμήμα Φυσικής.
Κλασσική Μηχανική Ενότητα 1: Εισαγωγικές Έννοιες-Ορισμοί Βασίλειος Λουκόπουλος, Επίκουρος Καθηγητής Τμήμα Φυσικής.
Αρχές Διοίκησης και Διαχείρισης Έργων Ενότητα 12: Οικονομική Διαχείριση Έργων – Ταμειακές Ροές. Διδάσκων: Φιτσιλής Παναγιώτης, Καθηγητής. Τμήμα Διοίκησης.
Τμήμα Τεχνολόγων Γεωπόνων Τίτλος Μαθήματος: ΚΑΛΛΩΠΙΣΤΙΚΑ ΔΕΝΤΡΑ ΚΑΙ ΘΑΜΝΟΙ Ενότητα 12: Οδηγίες δημιουργίας φυτολογίου Γρηγόριος Βάρρας Αν. Καθηγητής Άρτα,
Διοίκηση Ανθρωπίνων Πόρων Ενότητα 3: Προσέλκυση Ανθρώπινου Δυναμικού. Διδάσκων: Γεώργιος Ασπρίδης, Επίκουρος Καθηγητής. Τμήμα Διοίκησης Επιχειρήσεων.
Διαχείριση Κινδύνου Ενότητα 6: Αντιμετώπιση Κινδύνων.
Προγραμματισμός κινητών συσκευών
Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων
Επικοινωνιακός Προγραμματισμός Ι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου
Χρονικός Προγραμματισμός Έργων (Εργαστήριο)
Χρονικός Προγραμματισμός Έργων (Εργαστήριο)
Επιχειρησιακές Επικοινωνίες
Ποιοτικός Έλεγχος Πρώτων Υλών
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(9)
Ενότητα # 8: ΡΕΑΛΙΣΜΟΣ Αιλιάνα Μαρτίνη Τμήμα Ιστορίας
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου
ΦΡΟΝΤΙΣΤΗΡΙΟ: ΘΕΡΜΙΚΕΣ ΤΑΣΕΙΣ
Διαχείριση Κινδύνου Ενότητα 7: Παρακολούθηση Κινδύνων.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Διαχείριση Κινδύνου Ενότητα 3: Σχέδιο Διαχείρισης Κινδύνου.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Στατιστική Επιχειρήσεων
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(3)
Συστήματα Αυτομάτου Ελέγχου II
Χρονικός Προγραμματισμός Έργων (Εργαστήριο)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Επικοινωνιακός Προγραμματισμός Ι
Ηλεκτρικές Μηχανές ΙΙ Ενότητα 5: Κανονικοποιημένες Καμπύλες
Προγραμματισμός κινητών συσκευών
Επικοινωνιακός Προγραμματισμός Ι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Επιχειρησιακές Επικοινωνίες
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(7)
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(4)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΕνΟτητα # 8: Ms Word V CLAUDIA BOETTCHER ΤμΗμα ΙστορΙαΣ
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(5)
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(10)
ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Επιχειρησιακές Επικοινωνίες
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Επικοινωνιακός Προγραμματισμός Ι
Μεταγράφημα παρουσίασης:

Βάσεις Δεδομένων II Ενότητα 7: Ταυτοχρονισμός Γεωργία Γκαράνη Επίκουρος Καθηγήτρια Τμήμα Μηχανικών Πληροφορικής Τ.Ε. T.E.I. Θεσσαλίας

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς.

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Θεσσαλίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σκοποί ενότητας Λόγοι εμφάνισης του φαινομένου του ταυτοχρονισμού, Σκοποί ενότητας Λόγοι εμφάνισης του φαινομένου του ταυτοχρονισμού, Ικανότητα διαχωρισμού των τριών προβλημάτων του ταυτοχρονισμού, Ικανότητα διαχωρισμού των δύο διαφορετικών κλειδωμάτων που υποστηρίζει το σύστημα, Κατανόηση του τρόπου με τον οποίο λειτουργούν τα κλειδώματα στις συναλλαγές, Γιατί μπορεί ένα σύστημα να οδηγηθεί σε αδιέξοδο, Κατανόηση του τρόπου με τον οποίο σπάει ένα αδιέξοδο. Σημείωση: Οι διαφάνειες βασίζονται στο σύγγραμμα: C. J. Date. Εισαγωγή στα Συστήματα Βάσεων Δεδομένων. 6η έκδοση, Κλειδάριθμος, 1998. Ταυτοχρονισμός

Περιεχόμενα ενότητας Έννοια του ταυτοχρονισμού, Τα τρία προβλήματα ταυτοχρονισμού, Έννοια του κλειδώματος μιας συναλλαγής, Είδη κλειδωμάτων, Λύσεις στα τρία προβλήματα του ταυτοχρονισμού, Έννοια του αδιεξόδου, Σειροποιησιμότητα. Ταυτοχρονισμός

Ταυτοχρονισμός Ο όρος ταυτοχρονισμός (συνδρομικότητα) αναφέρεται στο γεγονός ότι τα DBMS κατά κανόνα επιτρέπουν σε πολλές συναλλαγές να προσπελάζουν τα ίδια δεδομένα την ίδια στιγμή –και σε ένα τέτοιο σύστημα, χρειάζεται ένας μηχανισμός ελέγχου ταυτοχρονισμού για να εξασφαλίζει ότι οι ταυτόχρονες συναλλαγές δε θα παρεμβάλλονται η μία στη λειτουργία της άλλης. Ταυτοχρονισμός 6

Τρία προβλήματα ταυτοχρονισμού Κάθε μηχανισμός ελέγχου ταυτοχρονισμού αντιμετωπίζει τα παρακάτω τρία προβλήματα (δηλαδή τρεις τρόποι με τους οποίους μπορεί μια συναλλαγή, αν και σωστή από μόνη της, να δώσει λανθασμένη απάντηση αν συμβεί παρεμβολή από κάποια άλλη συναλλαγή): 1.     Το πρόβλημα της χαμένης ενημέρωσης, 2.     Το πρόβλημα της εξάρτησης από ανεπικύρωτη μεταβολή, 3.     Το πρόβλημα της ασυνεπούς ανάλυσης. Ταυτοχρονισμός 7

Το πρόβλημα της χαμένης ενημέρωσης Η συναλλαγή Α χάνει μια ενημέρωση τη στιγμή t4 Ταυτοχρονισμός 8

Το πρόβλημα της εξάρτησης από ανεπικύρωτη μεταβολή (1 από 3) Το πρόβλημα της εξάρτησης από ανεπικύρωτη μεταβολή προκύπτει αν επιτραπεί σε μια συναλλαγή να ανακαλέσει –ή ακόμα χειρότερα να ενημερώσει- μια συστοιχία που έχει ενημερωθεί από μία άλλη συναλλαγή, αλλά δεν έχει ακόμα επικυρωθεί (COMMIT) από αυτή την άλλη συναλλαγή. Γιατί, αν δεν έχει επικυρωθεί ακόμα, πάντα υπάρχει περίπτωση να μην επικυρωθεί ποτέ, αλλά να ανασκευαστεί (ROLLBACK) –οπότε η πρώτη συναλλαγή θα έχει δει κάποια δεδομένα που τώρα δεν υπάρχουν πια. Ταυτοχρονισμός 9

Το πρόβλημα της εξάρτησης από ανεπικύρωτη μεταβολή (2 από 3) Η συναλλαγή Α γίνεται εξαρτημένη από μια ανεπικύρωτη μεταβολή τη χρονική στιγμή t2, Ταυτοχρονισμός 10

Το πρόβλημα της εξάρτησης από ανεπικύρωτη μεταβολή (3 από 3) Η συναλλαγή Α ενημερώνει μια ανεπικύρωτη μεταβολή τη χρονική στιγμή t2 και χάνει αυτή την ενημέρωση τη χρονική στιγμή t3. Ταυτοχρονισμός 11

Το πρόβλημα της ασυνεπούς ανάλυσης (1 από 3) Παράδειγμα: Η συναλλαγή Α πραγματοποιεί μια ασυνεπή ανάλυση Ταυτοχρονισμός 12

Το πρόβλημα της ασυνεπούς ανάλυσης (2 από 3) Ταυτοχρονισμός 13

Το πρόβλημα της ασυνεπούς ανάλυσης (3 από 3) Ταυτοχρονισμός 14

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

Είδη κλειδωμάτων (1 από 4) Το σύστημα υποστηρίζει δύο είδη κλειδωμάτων: τα αποκλειστικά ή κλειδώματα Χ και τα μεριζόμενα ή κλειδώματα S. Αν η συναλλαγή Α κατέχει ένα αποκλειστικό (Χ) κλείδωμα πάνω στη συστοιχία p, τότε μια αίτηση από κάποια άλλη συναλλαγή Β για ένα κλείδωμα οποιουδήποτε από τους δύο τύπους στην p θα απορριφθεί. Ταυτοχρονισμός 16

Είδη κλειδωμάτων (2 από 4) Αν η συναλλαγή Α κατέχει ένα μεριζόμενο (S) κλείδωμα πάνω στη συστοιχία p, τότε: Μια αίτηση από κάποια άλλη συναλλαγή Β για ένα κλείδωμα Χ στην p θα απορριφθεί. Μια αίτηση από κάποια άλλη συναλλαγή Β για ένα κλείδωμα S στην p θα γίνει δεκτή (δηλαδή, και η Β θα διατηρεί τώρα ένα κλείδωμα S στην p). Ταυτοχρονισμός

Είδη κλειδωμάτων (3 από 4) Ένα πρωτόκολλο προσπέλασης δεδομένων χρησιμοποιεί τα κλειδώματα X και S, για να εξασφαλίσει ότι δε θα μπορούν να παρουσιαστούν προβλήματα σαν εκείνα που περιγράψαμε παραπάνω: 1. Μια συναλλαγή που θέλει να ανακαλέσει (RETRIEVE) μια συστοιχία πρέπει πρώτα να αποκτήσει ένα κλείδωμα S σε αυτή τη συστοιχία. 2. Μια συναλλαγή που θέλει να ενημερώσει (UPDATE) μια συστοιχία πρέπει πρώτα να αποκτήσει ένα κλείδωμα Χ σε αυτή τη συστοιχία. Εναλλακτικά, αν κατέχει ήδη ένα κλείδωμα S στη συστοιχία, τότε θα πρέπει να προαγάγει το κλείδωμα S σε κλείδωμα επιπέδου Χ. Ταυτοχρονισμός

Είδη κλειδωμάτων (4 από 4) Αν μια αίτηση κλειδώματος από τη συναλλαγή Β απορριφθεί, επειδή έρχεται σε σύγκρουση με ένα κλείδωμα που κατέχει ήδη η συναλλαγή Α, τότε η συναλλαγή Β περνάει σε κατάσταση αναμονής. Η Β θα περιμένει μέχρι να απελευθερωθεί το κλείδωμα της Α. Τα κλειδώματα διατηρούνται μέχρι το τέλος της συναλλαγής (COMMIT ή ROLLBACK). Ταυτοχρονισμός 19

Λύσεις στα τρία προβλήματα ταυτοχρονισμού (1 από 6) Το πρόβλημα της χαμένης ενημέρωσης Ταυτοχρονισμός

Λύσεις στα τρία προβλήματα ταυτοχρονισμού (2 από 6) Καμιά ενημέρωση δε χάνεται, αλλά παρουσιάζεται αδιέξοδο τη χρονική στιγμή t4. Το πρόβλημα της εξάρτησης από ανεπικύρωτη μεταβολή Ταυτοχρονισμός

Λύσεις στα τρία προβλήματα ταυτοχρονισμού (3 από 6) Η συναλλαγή Α εμποδίζεται να δει μια ανεπικύρωτη μεταβολή τη χρονική στιγμή t2. Ταυτοχρονισμός

Λύσεις στα τρία προβλήματα ταυτοχρονισμού (4 από 6) Η συναλλαγή Α εμποδίζεται να ενημερώσει μια ανεπικύρωτη μεταβολή τη χρονική στιγμή t2. Το πρόβλημα της ασυνεπούς ανάλυσης Παράδειγμα: Η ασυνεπής ανάλυση αποτρέπεται, αλλά παρουσιάζεται αδιέξοδο τη χρονική στιγμή t7. Ταυτοχρονισμός

Λύσεις στα τρία προβλήματα ταυτοχρονισμού (5 από 6) Ταυτοχρονισμός

Λύσεις στα τρία προβλήματα ταυτοχρονισμού (6 από 6) Ταυτοχρονισμός

Αδιέξοδο (Deadlock) (1 από 3) Το αδιέξοδο είναι μια κατάσταση όπου δύο ή περισσότερες συναλλαγές είναι ταυτόχρονα σε κατάσταση αναμονής, και η κάθε μία περιμένει μια από τις άλλες να απελευθερώσει ένα κλείδωμα, πριν μπορέσει να προχωρήσει. Ταυτοχρονισμός

Αδιέξοδο (Deadlock) (2 από 3) Οι εντολές “LOCK, EXCLUSIVE” αντιπροσωπεύουν οποιεσδήποτε πράξεις που αποκτούν (αποκλειστικά) κλειδώματα, είτε με ρητό είτε με υπονοούμενο τρόπο. Αν συμβεί ένα αδιέξοδο, είναι επιθυμητό το σύστημα να το εντοπίσει και να το σπάσει. Ο εντοπισμός του αδιεξόδου σημαίνει τον εντοπισμό ενός κύκλου στο γράφημα αναμονών, δηλ. στο γράφημα που δείχνει «ποιος περιμένει ποιον». Ταυτοχρονισμός

Αδιέξοδο (Deadlock) (3 από 3) Σπάσιμο του αδιεξόδου σημαίνει να διαλέξουμε για θύμα μία από τις συναλλαγές που βρίσκονται σε αδιέξοδο –δηλαδή μία από τις συναλλαγές του κύκλου στο γράφημα- και να την ανασκευάσουμε, απελευθερώνοντας έτσι τα κλειδώματά της και επιτρέποντας να προχωρήσει κάποια άλλη συναλλαγή. Στην πράξη δεν εντοπίζουν όλα τα συστήματα τα αδιέξοδα –μερικά χρησιμοποιούν απλώς ένα μηχανισμό χρονικού ορίου και θεωρούν ότι μια συναλλαγή που δεν έχει κάνει καμιά δουλειά για ένα προκαθορισμένο χρονικό διάστημα είναι σε αδιέξοδο. Ταυτοχρονισμός

Σειροποιησιμότητα (1 από 2) Η σειροποιησιμότητα είναι το γενικά αποδεκτό κριτήριο ορθότητας για τον έλεγχο των συναλλαγών. Μια δεδομένη πλεκτή εκτέλεση ενός συνόλου συναλλαγών θεωρείται σωστή αν είναι σειροποιήσιμη –δηλαδή αν παράγει το ίδιο αποτέλεσμα με κάποια σειριακή εκτέλεση των ίδιων συναλλαγών, όπου εκτελούνται μία μία.   Ο μηχανισμός κλειδώματος επιβάλλει τη σειροποιησιμότητα σε κάθε περίπτωση. Ταυτοχρονισμός

Σειροποιησιμότητα (2 από 2) Με δεδομένο ένα σύνολο συναλλαγών, οποιαδήποτε εκτέλεση αυτών των συναλλαγών (πλεκτή ή όχι) ονομάζεται χρονοδιάγραμμα. Η εκτέλεση των συναλλαγών μίας προς μία, χωρίς διαπλοκή, αποτελεί ένα σειριακό χρονοδιάγραμμα. Ένα χρονοδιάγραμμα που δεν είναι σειριακό είναι ένα πλεκτό χρονοδιάγραμμα. Δύο χρονοδιαγράμματα λέγονται ισοδύναμα αν είναι εγγυημένο ότι δίνουν το ίδιο αποτέλεσμα, ανεξάρτητα από την αρχική κατάσταση της βάσης δεδομένων. Ταυτοχρονισμός

Τέλος Ενότητας Επεξεργασία υλικού: Χαρτώνας Αλέξανδρος