Έλεγχος συγχρονικότητας Μέρος 2 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Έλεγχος συγχρονικότητας Μέρος 2 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη"

Transcript

1 Έλεγχος συγχρονικότητας Μέρος 2 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition

2 Πρωτόκολλα βασισμένα σε γράφο (1) Πρωτόκολλα με βάση γράφο είναι μία εναλλακτική περίπτωση του κλειδώματος δύο φάσεων Επιβάλλει μία μερική ταξινόμηση στο σύνολο D = {d 1, d 2,..., d h } όλων των στοιχείων δεδομένων. Εάν d i d j τότε όποια δοσοληψία προσπελαύνει τόσο το d i όσο και το d j πρέπει να προσπελαύνει το d i πριν προσπελάση d j. Υπονοεί ότι το σύνολο D μπορούμε να το δούμε σαν ένα κατευθυνόμενο ακυκλικό γράφο, ο οποίος ονομάζεται γράφος βάσης δεδομένων. Το πρωτόκολλο-δέντρο είναι ένα απλού είδους πρωτόκολλο γράφος. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 2

3 Πρωτόκολλο δέντρου Μόνο τα αποκλειστικά κλειδώματα επιτρέπονται. Το πρώτο κλείδωμα από το T i μπορεί να είναι σε οποιοδήποτε αντικείμενο. Στη συνέχεια, ένα στοιχείο Q μπορεί να κλειδωθεί από το T i μόνο εάν ο πατέρας του Q είναι αυτή τη στιγμή κλειδωμένος από το T i. Τα στοιχεία μπορεί να ξεκλειδωθούν οποιαδήποτε στιγμή. Ένα στοιχείο που έχει κλειδωθεί και ξεκλειδωθεί από το T i, δεν μπορεί στη συνέχεια να ξανακλειδωθεί από το T i Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 3

4 Πρωτόκολλα με βάση το γράφο (2) Το πρωτόκολλο δέντρου διαβεβαιώνει σειριακή διάταξη ως προς σύγκρουση καθώς και ελευθερία από αδιέξοδα. Το ξεκλείδωμα μπορεί να συμβεί νωρίτερα σε ένα πρωτόκολλο κλειδώματος δέντρου από ότι σ ένα δύο φάσεων πρωτόκολλο κλειδώματος. Μικρότερος χρόνος αναμονής και αύξηση της ταυτοχρονικότητας Το πρωτόκολλο είναι απαλλαγμένο από αδιέξοδα. Η αναίρεση μίας δοσοληψίας μπορεί να οδηγήσει σε διαδοχικές αναιρέσεις. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 4

5 Πρωτόκολλα με βάση το γράφο (3) Σ ένα πρωτόκολλο κλειδώματος δέντρου, μία δοσοληψία μπορεί να χρειαστεί να κλειδώσει αντικείμενα που δεν τα προσπελαύνει. Αυξάνει τα επιπλέον κλειδώματα και τον επιπρόσθετο χρόνο αναμονής Πιθανή μείωση του ταυτοχρονισμού Χρονοπρογράμματα που δεν είναι δυνατά κάτω από δύοφάσεων κλειδώματα είναι δυνατά κάτω από πρωτόκολλο δέντρου και το αντίστροφο. Προσπέλαση των δεδομένων Α και J Απαιτεί κλείδωμα και των B, D και Η Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 5

6 Χρονοπρογράμματα σειριακής διάταξης κάτω από πρωτόκολλο δέντρου Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 6

7 Πρωτόκολλα με βάση Timestamp (1) Προσεγγίσεις ελέγχου συγχρονικότητας Κλείδωμα : Αναίρεση δοσοληψίας ή μπλοκάρισμα για επίλυση σύγκρουσης Χωρίς κλειδώματα Ετικέτες χρόνου: Οι περισσότερες δοσοληψίες δεν συγκρούονται με άλλες Εκτέλεση σε 3 φάσεις Read: Ανάγνωση από ΒΔ, εγγραφή σε ιδιωτικό χώρο Validation: Η δοσοληψία αποφασίζει να κάνει commit. To ΣΔΒΔ ελέγχει εάν υπάρχει σύγκρουση με άλλες δοσοληψίες Write: εγγραφή στη ΒΔ Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 7

8 Πρωτόκολλα με βάση Timestamp (2) Για κάθε δοσοληψία εκδίδεται ένα timestamp όταν εισέρχεται στο σύστημα. Εάν μία παλιά δοσοληψία T i έχει time-stamp TS(T i ), σε μία νέα δοσοληψία T j ανατίθεται time-stamp TS(T j ) τέτοιο ώστε TS(T i ) <TS(T j ). Θα πρέπει να ικανοποιούνται οι εξής συνθήκες T i ολοκληρώνεται πριν η T j αρχίσει Τ i ολοκληρώνεται πριν T j αρχίσει τη φάση εγγραφής και η T i δεν γράφει κάποιο αντικείμενο της βάσης που διαβάζει η T j T i ολοκληρώνει την ανάγνωση πριν η T j ολοκληρώσει τη φάση ανάγνωσης και η T i δεν γράφει κάποιο αντικείμενο που γράφει ή διαβάζει η Τ j Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 8

9 Πρωτόκολλα με βάση Timestamp (3) Το πρωτόκολλο διαχειρίζεται ταυτόχρονη εκτέλεση τέτοια ώστε τα time-stamps να ορίζουν σειριακή διάταξη. Προκειμένου να επιβεβαιώσουμε τέτοια συμπεριφορά, το πρωτόκολλο διατηρεί για κάθε αντικείμενο Q δύο τιμές timestamp: W-timestamp(Q) είναι το μεγαλύτερο time-stamp οποιαδήποτε δοσοληψίας που εκτελεί επιτυχώς write(q). R-timestamp(Q) είναι το μεγαλύτερο time-stamp οποιασδήποτε δοσοληψίας που εκτελεί επιτυχώς read(q). Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 9

10 Πρωτόκολλα με βάση Timestamp (4) Το πρωτόκολλο διάταξης με βάση το timestamp διαβεβαιώνει ότι οποιεσδήποτε σε σύγκρουση λειτουργίες read και write εκτελούνται με βάση τη σειρά των timestamps. Υποθέτουμε μία δοσοληψία T i εκδίδει ένα read(q) 1. Εάν TS(T i ) W-timestamp(Q), τότε T i ξεκίνησε πριν γραφτεί Q. Συνεπώς, η λειτουργία read απορρίπτεται και το T i αναιρείται. 2. Εάν TS(T i ) W-timestamp(Q), τότε η λειτουργία read εκτελείται και η R-timestamp(Q) τίθεται στη μέγιστη τιμή του R-timestamp(Q) και TS(T i ). Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 10

11 Πρωτόκολλα με βάση Timestamp (5) Υποθέτουμε ότι η δοσοληψία T i εκδίδει write(q). Εάν TS(T i ) < R-timestamp(Q), T i ξεκίνησε πριν διαβαστεί η τιμή του Q. Η τιμή του Q που παράγει η T i χρειαζόταν προηγουμένως και το σύστημα υπέθεσε ότι η τιμή αυτή δεν θα παραχθεί ποτέ. Συνεπώς, η λειτουργία write απορρίπτεται και η T i αναιρείται. Εάν TS(T i ) < W-timestamp(Q), τότε T i προσπαθεί να γράψει μία παλιά τιμή του Q. Συνεπώς, αυτή η λειτουργία write απορρίπτεται και η T i αναιρείται. Διαφορετικά, η λειτουργία write εκτελείται και το W-timestamp(Q) τίθεται σε TS(T i ). Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 11

12 Αποκαταστάσιμο και ελεύθερο από Διαδοχικές αναιρέσεις Προβλήματα με το πρωτόκολλο timestamp-ordering : Υποθέτουμε T i αναιρείται, αλλά T j έχει διαβάσει ένα αντικείμενο το οποίο έχει γραφεί από την T i Συνεπώς η T j πρέπει να αναιρεθεί Εάν η T j έχει επιτραπεί να κάνει commit νωρίτερα,το χρονοπρόγραμμα δεν είναι αποκαταστάσιμο. Επιπρόσθετα, κάθε δοσοληψία που διαβάζει ένα αντικείμενο που έχει γράψει η T j πρέπει να αναιρεθεί Μπορεί να οδηγήσει σε διαδοχικές αναιρέσεις--- δηλ. Αλυσίδα από rollbacks Λύση Μία δοσοληψία A δομείται έτσι ώστε οι εγγραφές της να εκτελούνται στο τέλος της επεξεργασίας της Όλες οι εντολές εγγραφής διαμορφώνουν μία ατομική ενέργεια Καμία δοσοληψία δεν μπορεί να εκτελεστεί ενώ μία δοσοληψία εκτελεί εντολή εγγραφής Μία δοσοληψία που αναιρείται αρχίζει από την αρχή με νέο timestamp Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 13

13 Thomas Write Rule Τροποποιημένη έκδοση του πρωτοκόλλου ταξινόμησης με timestamp στο οποίο οι παλιές λειτουργίες write μπορούν να αγνοηθούν κάτω από συγκεκριμένες καταστάσεις. Όταν η T i προσπαθεί να γράψει ένα αντικείμενο Q, Εάν TS(T i ) < W-timestamp(Q), τότε T i προσπαθεί να γράψει μία παλιά τιμή του {Q}. Αντί να αναιρεθεί η T i όπως θα γινόταν στο timestamp ordering protocol, αυτή η λειτουργία {write} μπορεί να αγνοηθεί. Αλλιώς το πρωτόκολλο είναι το ίδιο με το timestamp ordering protocol. Thomas' Write Rule επιτρέπει μεγαλύτερη προοπτική ταυτοχρονισμού. Αντίθετα με τα προηγούμενα πρωτόκολλα, επιτρέπουν κάποια χρονοπρογράμματα σειριακής διάταξης ως προς την όψη τα οποία δεν είναι σειριακής διάταξης ως προς τις συγκρούσεις. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 14

14 Πρωτόκολλο βασισμένο στην εγκυρότητα (1) Validation based Protocol Η εκτέλεση της δοσοληψίας T i γίνεται σε τρεις φάσεις. 1. Φάση ανάγνωσης και εκτέλεσης: Η δοσοληψία T i γράφει μόνο προσωρινές τοπικές μεταβλητές 2. Φάση εγκυρότητας: Η δοσοληψία T i εκτελεί «έλεγχο εγκυρότητας» για να ορίσουμε εάν τοπικές μεταβλητές μπορούν να γραφούν χωρίς παραβίαση της σειριακής διάταξης. 3. Φάση εγγραφής: Εάν T i επικυρωθεί, οι ενημερώσεις εφαρμόζονται στη βάση δεδομένων. Aλλιώς, T i αναιρείται. Kάθε δοσοληψία πρέπει να περάσει διαμέσου των τριών φάσεων με αυτή τη σειρά. Καλείται αισιόδοξος ταυτόχρονος έλεγχος καθώς η δοσοληψία εκτελείται πλήρως με την ελπίδα ότι όλα θα πάνε καλά στη διάρκεια τους ελέγχου εγκυρότητας Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 15

15 Πρωτόκολλο βασισμένο στην εγγυρότητα (2) Κάθε δοσοληψία Τ i έχει 3 timestamps Start(T i ) : ο χρόνος που αρχίζει η T i την εκτέλεσή της Validation(T i ): ο χρόνος που η T i τελειώνει τη φάση της ανάγνωσης και ξεκινάει της επικύρωσης Finish(T i ) : ο χρόνος όταν η T i τελειώνει τη φάση εγγραφής Η σειριακή διάταξη ορίζεται από το timestamp δεδομένου του χρόνου επικύρωσης, για να αυξήσουμε την ταυτοχρονικότητα. Έτσι στηts(t i ) δίνεται η τιμή της Validation(T i ). Αυτό το πρωτόκολλο είναι χρήσιμο και δίνει μεγαλύτερο βαθμό ταυτοχρονισμού εάν η πιθανότητα των συγκρούσεων είναι χαμηλή. Αυτό συμβαίνει εξαιτίας του ότι η σειριακή διάταξη δεν είναι προαποφασισμένη και σχετικά λίγες δοσοληψίες θα πρέπει να αναιρεθούν. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 16

16 Έλεγχος εγκυρότητας για τη δοσοληψία T j Εάν για όλα τα T i με TS (T i ) < TS (T j ) μία από τις ακόλουθες συνθήκες ισχύουν: finish(t i ) < start(t j ) start(t j ) < finish(t i ) < validation(t j ) και το σύνολο των αντικειμένων που γράφονται από την T i δεν τέμνεται με το σύνολο των αντικειμένων που διαβάζονται από την T j. τότε η εγκυρότητα επιτυγχάνει και T j μπορεί να κάνει commit. Διαφορετικά, η εγκυρότητα αποτυγχάνει και η T j αναιρείται. Δικαιολόγηση: Είτε η πρώτη συνθήκη ικανοποιείται και δεν υπάρχει επικαλυπτόμενη εκτέλεση ή η δεύτερη συνθήκη ικανοποιείται και 1. οι εντολές εγγραφής της T j δεν επηρεάζουν εντολές ανάγνωσης της T i καθώς συμβαίνουν αφού η T i έχει τελειώσει τις αναγνώσεις της. 2. οι εντολές εγγραφής της T i δεν επηρεάζουν τις αναγνώσεις της T j καθώς η T j δεν διαβάζει κάποιο αντικείμενο που να γράφεται από την T i. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 17

17 Χρονοπρόγραμμα που παράγεται από εγκυρότητα start(t 15 ) < finish(t 14 ) < validation(t 15 ) οι εντολές εγγραφής της T 15 δεν επηρεάζουν εντολές ανάγνωσης της T 14 καθώς συμβαίνουν αφού η T 14 έχει τελειώσει τις αναγνώσεις της. οι εντολές εγγραφής της T 14 δεν επηρεάζουν τις αναγνώσεις της T 15 καθώς η T 15 δεν διαβάζει κάποιο αντικείμενο που να γράφεται από την T 14. T 14 T 15 read(b) read(a) (validate) display (A+B) read(b) B:- B-50 read(a) A:- A+50 (validate) write (B) write (A) Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 18

18 Σχήματα πολλαπλών εκδόσεων Διατηρούν παλιές εκδόσεις αντικειμένων δεδομένων για να αυξήσουν την ταυτοχρονικότητα. Πολλαπλών εκδόσεων διάταξη με βάση Timestamp Πολλαπλών εκδόσεων κλείδωμα δύο φάσεων Όταν εκδίδεται μία λειτουργία read(q), επιλέγεται μία κατάλληλη έκδοση του Q με βάση το timestamp της δοσοληψίας και επιστρέφει την τιμή της επιλεγμένης έκδοσης. read ποτέ δεν πρέπει να περιμένει καθώς μία κατάλληλη έκδοση επιστρέφεται άμεσα. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 19

19 Έλεγχος ταυτοχρονισμού με πολλαπλές εκδόσεις Κάθε επιτυχές write οδηγεί στη δημιουργία μίας νέας έκδοσης από δεδομένα που γράφονται Ιδέα: Κάθε δοσοληψία που γράφει ένα αντικείμενο Ο, κατασκευάζει ένα ιδιωτικό copy του Ο που αποθηκεύεται σε μια Version pool Κάθε δοσοληψία έχει timestamp TS τη στιγμή εκκίνησής της MAIN SEGMENT (Τρέχουσες versions της DB) O O O VERSION POOL (παλαιότερες εκδόσεις μπορεί να είναι χρήσιμες για άλλες δοσοληψίες).

20 Έλεγχος ταυτοχρονισμού με πολλαπλές εκδόσεις Κάθε αντικείμενο Q έχει μία ακολουθία από εκδόσεις <Q 1, Q 2,..., Q m >. Κάθε έκδοση Q k περιέχει τρία πεδία δεδομένων: Content τιμή της έκδοσης Q k. W-timestamp(Q k ) -- timestamp της δοσοληψίας που δημιουργεί (γράφει) την έκδοση Q k R-timestamp(Q k ) μεγαλύτερο timestamp μίας δοσοληψίας που επιτυχώς διαβάζει μία έκδοση Q k Όταν μία δοσοληψία T i δημιουργεί μία νέα έκδοση Q k του Q, oι τιμές W-timestamp και R-timestamp του Q k αρχικοποιούνται σε TS(T i ). Η τιμή R-timestamp του Q k ενημερώνεται οποτεδήποτε μία δοσοληψία T j διαβάζει το Q k, και TS(T j ) > R-timestamp(Q k ). Οι versions του ιδίου αντικειμένου συνδέονται με pointers σε μια λίστα.

21 Πολλαπλών εκδόσεων διάταξη με βάση timestamps: Ανάγνωση WTS timeline old new Για να διαβάσει μια δοσοληψία Τ: Βρίσκει την τελευταία version με W-timestamp < TS(T) (Αν δεν της κάνει η τρέχουσα version ψάχνει για προηγούμενες) Αν υποθέσουμε ότι για κάθε αντικείμενο υπάρχει και μια version οι δοσοληψίες που διαβάζουν μόνο (χωρίς να γράφουν ποτέ) δεν αποτυγχάνουν ποτέ. T

22 Σειριακή διάταξη με βάση timestamps: Εγγραφή (1) Για να γράψει μια δοσοληψία Τ: Βρίσκει τη νεότερη version V με W-timestamp < TS(T). Αν R-timestamp(V) < TS(T), T κάνει ένα copy CV του V, με W-timestamp(CV) = R-timestamp(CV) = TS(T) (η εγγραφή αναμένει μέχρι το commit της Τ - οι άλλες δοσοληψίες δεν μπορούν να δουν την version CV) Αλλιώς, abort & restart με νέο TS. WTS old CV new V RTS(V) T

23 Εγγραφή (2) Αν R-Timestamp(V) < TS(T), τότε κάποια Τ διάβασε πριν ξεκινήσει η δοσοληψία Τ η Τ μπορεί να γράψει [στη χειρότερη περίπτωση να κάνει overwrite ότι θα έγραφε η Τ ] Αν R-Timestamp(V) > TS(T) προφανώς κάποια Τ διάβασε αφού ξεκίνησε η Τ κάποια πρέπει να κάνει abort & επιλέγουμε την Τ WTS old CV new V T RTS(V)

24 Πολλαπλών εκδόσεων δύο φάσεων κλείδωμα (1) Διαφοροποίηση ανάμεσα σε read-only δοσοληψίες και σε update δοσοληψίες Δοσοληψίες ενημέρωσης (Update transactions) αποκτούν κλειδώματα read και write, και διατηρούν όλα τα κλειδώματα μέχρι το τέλος της δοσοληψίας Οι δοσοληψίες update ακολουθούν αυστηρό δύοφάσεων κλείδωμα(rigorous two-phase locking) Κάθε επιτυχές write οδηγεί στη δημιουργία μίας έκδοσης των αντικειμένων που γράφονται. Κάθε έκδοση ενός αντικειμένου έχει ένα μόνο timestamp του οποίου η τιμή λαμβάνεται από ένα μετρητή ts-counter που αυξάνεται στη διάρκεια της επεξεργασίας του commit. Στις δοσοληψίες Read-only ανατίθεται ένα timestamp διαβάζοντας την τρέχουσα τιμή του ts-counter πριν αρχίσει η εκτέλεση; Ακολουθούν το πρωτόκολλο multiversion timestamp-ordering για την εκτέλεση των reads. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 25

25 Πολλαπλών εκδόσεων δύο φάσεων κλείδωμα (2) Μια update δοσοληψία όταν θέλει να διαβάσει ένα αντικείμενο, λαμβάνει ένα S_lock πάνω σ αυτό, και διαβάζει τη τελευταία έκδοση. όταν θέλει να γράψει ένα αντικείμενο, λαμβάνει X_lock πάνω σ αυτό. δημιουργεί μία νέα έκδοση του αντικειμένου και θέτει το timestamp της έκδοσης αυτής σε. Όταν η ενημέρωση της δοσοληψίας T i ολοκληρωθεί, πραγματοποιείται η επεξεργασία του commit : T i θέτει το timestamp στις εκδόσεις που έχει δημιουργήσει σε ts-counter + 1 Για το T i ts-counter = ts-counter +1 Read-only transactions που ξεκινάνε μετά την αύξηση του ts-counter από T i = θα δούν τις τιμές να ενημερώνονται από T i. Read-only δοσοληψίες που αρχίζουν πριν η T i αυξήσει το ts-counter θα δουν την τιμή πριν τις ενημερώσεις από το T i. Μόνο σειριακής διάταξης χρονοπρογράμματα παράγονται. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 26

26 Διαχείριση αδιεξόδου (1) Υποθέτουμε τις ακόλουθες δύο δοσοληψίες: T 1 : write (X) T 2 : write(y) write(y) write(x) Χρονοπρόγραμμα με αδιέξοδο T 1 T 2 lock-x on X write (X) wait for lock-x on Y lock-x on Y write (X) wait for lock-x on X Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 27

27 Διαχείριση αδιεξόδου (2) Πρωτόκολλα αποφυγής αδιεξόδου (Deadlock prevention) επιβεβαιώνουν ότι το σύστημα δεν θα μπει ποτέ σε κατάσταση αδιεξόδου. Μερικές στρατηγικές αποφυγής: Κάθε δοσοληψία θα πρέπει να κλειδώνει όλα τα αντικείμενα που την ενδιαφέρουν πριν ξεκινήσει η εκτέλεση (predeclaration). Επιβάλλει μερική ταξινόμηση των δεδομένων και απαιτεί μία δοσοληψία να μπορεί να κλειδώνει αντικείμενα μόνο με τη σειρά που καθορίζεται από τη μερική ταξινόμηση (πρωτόκολλο βασισμένο στο γράφο). Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 28

28 Στρατηγικές αποφυγής αδιεξόδου (2) Σχήματα που χρησιμοποιούν timestamps δοσοληψίών για χάρη αποφυγής αδιεξόδου. wait-die scheme non-preemptive Παλιότερες δοσοληψίες μπορούν να περιμένουν για κάποια νεότερη να αποδεσμέυσει κάποιο αντικείμενο. Νεότερες δοσοληψίες δεν περιμένουν ποτέ για παλιότερες; Αντίθετα αναιρούνται. Μία δοσοληψία μπορεί να περάσει στη κατάσταση die πολλές φορές πριν αποκτήσει τα δεδομένα που χρειάζεται wound-wait scheme preemptive Παλιότερες δοσοληψίες αναγκάζουν σε αναίρεση νεότερη δοσοληψία αντί να περιμένουν γι αυτή. Νεότερες δοσοληψίες μπορούν να περιμένουν για παλιότερες. Μπορεί να έχει λιγότερες αναιρέσεις απ ότι το σχήμα wait-die. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 29

29 Στρατηγικές αποφυγής αδιεξόδου (3) wait-die και wound-wait σχήματα: Δοσοληψίες που αναιρούνται αρχίζουν πάλι με το αρχικό τους timestamp. Έτσι παλιότερες δοσοληψίες έχουν προτεραιότητα πάνω σε νεότερες και το starvation συνεπώς αποφεύγεται. Timeout-Based σχήματα : Μία δοσοληψία περιμένει για ένα κλειδωμα μόνο για συγκεκριμένο χρονικό διάστημα. Μετά από αυτό το χρόνο, η αναμονή σταματάει και η δοσοληψία αναιρείται. Συνεπώς αδιέξοδα δεν είναι δυνατά Απλά στην υλοποίηση; Υπάρχει πιθανότητα starvation Δύσκολο να οριστούν καλές τιμές του διαστήματος αναμονής. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 30

30 Αναγνώριση Αδιεξόδου (1) Τα αδιέξοδα μπορούν να περιγραφούν ως γράφει wait-for, το οποίο αποτελείται από ένα ζεύγος G = (V,E), V σύνολο από κόμβους δοσοληψίες στο σύστημα E ένα σύνολο από ακμές; Κάθε στοιχείο είναι ένα ταξινομημένο ζεύγος T i T j. Όταν T i αιτείται ένα αντικείμενο που αυτή τη στιγμή δεσμεύεται από το T j,τότε η ακμή T i T j εισάγεται στον wait-for γράφο. \ η ακμή απομακρύνεται μόνο όταν η T j δεν κρατάει πλέον ένα αντικείμενο που χρειάζεται η T i. Το σύστημα είναι σε μία κατάσταση αδιεξόδου εάν και μόνο εάν ο γράφος wait-for έχει κάποιο κύκλο. Πρέπει να επικαλεστούμε έναν αλγόριθμο αναγνώρισης deadlockdetection περιοδικά για να ψάχνουμε για κύκλους. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 31

31 Αναγνώριση Αδιεξόδου Wait-for graph without a cycle Χωρίς Αδιέξοδο Wait-for graph with a cycle Κατάσταση αδιεξόδου Όταν T i αιτείται ένα αντικείμενο που αυτή τη στιγμή κρατείται από το T j,τότε η ακμή T i T j εισάγεται στον wait-for γράφο Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 32

32 Ανάνηψη από αδιέξοδο Όταν αναγνωριστεί κάποιο αδιέξοδο: Κάποια δοσοληψία πρέπει να αναιρεθεί (victim) για να σπάσει το αδιέξοδο. Επιλέγουμε ως victim τη δοσοληψία που προκαλεί το λιγότερο κόστος. Rollback ορίζει πόσο μακριά θα αναιρεθεί η δοσοληψία Πλήρης rollback: Αναίρεση της δοσοληψίας και μετά ξαναρχίζει. Πιο αποτελεσματικό: μία δοσοληψία κάνει roll back μόνο όσο χρειάζεται για να σπάσει το αδιέξοδο. Starvation συμβαίνει έαν η ίδια δοσοληψία επιλέγεται πάντα ως θύμα. Περιλαμβάνουμε τον αριθμό των rollbacks στον παράγοντα κόστους για να αποφύγουμε starvation Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 33

33 Δυναμικές Βάσεις Δεδομένων Μέχρι στιγμής, κάναμε δύο μη προφανείς υποθέσεις: Η ΒΔ δεν εμπλουτίζεται με νέες εγγραφές κατά τη διάρκεια των δοσοληψιών υποθέτομε ότι write = UPDATE και όχι INSERT Τα αντικείμενα της ΒΔ είναι ανεξάρτητα μεταξύ τους Η υπόθεση αυτή δεν ισχύει αν υποθέσουμε π.χ., ένα B+ tree σε κάποιο πεδίο ενός πίνακα Εάν δεν είναι σταθερό το σύνολο των εγγραφών τότε ακόμα και με βάση το αυστηρό πρωτόκολλο δύο φάσεων δεν εξασφαλίζεται σειριακή διάταξη Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 34

34 T2: Παράδειγμα: Sailors SID SNAME RATING AGE 1 Popay Popay Popay Popay INSERT INTO SAILORS (5, X,1,96); DELETE FROM SAILORS WHERE RATING = 2 AND AGE IN (SELECT MAX(AGE) FROM SAILORS WHERE RATING =2) T1: SELECT RATING, MAX(AGE) FROM SAILORS GROUP BY RATING Πρόβλημα Η Τ1 θεωρούμε ότι έχει κλειδώσει όλες τις εγγραφές του Sailor με rating=1 Η υπόθεση αυτή ισχύει όταν δεν προστίθενται εγγραφές στο sailor όταν εκτελείται η T1 Απαιτείται κάποιος μηχανισμός για να επιλύσει αυτό το πρόβλημα Κλείδωμα κατηγορήματος, κλείδωμα ευρετηρίου Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 35

35 Πιθανή Εκτέλεση SID SNAME RATING AGE 1 Popay Popay Popay Χ1 Χ1 T1: SELECT RATING, MAX(AGE) FROM SAILORS GROUP BY RATING 4 Popay RATING AGE T2: INSERT INTO SAILORS (5, X,1,96); DELETE FROM SAILORS WHERE RATING = 2 AND AGE IN (SELECT MAX(AGE) FROM SAILORS WHERE RATING =2) 1 71 Πρώτα, οι RATING=1 Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 36

36 Πιθανή Εκτέλεση SID SNAME RATING AGE 1 Popay Popay Popay Popay X 1 96 Χ1 Χ1 Χ2 T1: SELECT RATING, MAX(AGE) FROM SAILORS GROUP BY RATING RATING AGE 1 71 T2: INSERT INTO SAILORS (5, X,1,96); DELETE FROM SAILORS WHERE RATING = 2 AND AGE IN (SELECT MAX(AGE) FROM SAILORS WHERE RATING =2) Το INS παίρνει X- lock Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 37

37 T2: Πιθανή Εκτέλεση SID SNAME RATING AGE 1 Popay Popay Popay Popay X 1 96 INSERT INTO SAILORS (5, X,1,96); DELETE FROM SAILORS WHERE RATING = 2 AND AGE IN (SELECT MAX(AGE) FROM SAILORS WHERE RATING =2) Χ1 Χ1 Χ2 Χ2 Χ2 T1: SELECT RATING, MAX(AGE) FROM SAILORS GROUP BY RATING RATING AGE 1 71 Το DEL παίρνει X- lock Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 38

38 Πιθανή Εκτέλεση SID SNAME RATING AGE 1 Popay Popay Popay X 1 96 Χ1 Χ1 T1: SELECT RATING, MAX(AGE) FROM SAILORS GROUP BY RATING RATING AGE 1 71 T2: INSERT INTO SAILORS (5, X,1,96); DELETE FROM SAILORS WHERE RATING = 2 AND AGE IN (SELECT MAX(AGE) FROM SAILORS WHERE RATING =2) Τ2 COMMITS!! Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 39

39 Πιθανή Εκτέλεση SID SNAME RATING AGE 1 Popay Popay T1: SELECT RATING, MAX(AGE) FROM SAILORS GROUP BY RATING T2: 4 Popay X 1 96 INSERT INTO SAILORS (5, X,1,96); DELETE FROM SAILORS WHERE RATING = 2 AND AGE IN (SELECT MAX(AGE) FROM SAILORS WHERE RATING =2) Χ1 RATING AGE Μετά, όσοι έχουν RATING=2 Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 40

40 Πιθανές Εκτελέσεις... Τ1 Τ2 RATING AGE SID SNAME RATING AGE 1 Popay Popay Popay Popay X 1 96 Τ1 ; Τ RATING AGE Τ2 ; Τ1 RATING AGE Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 41

41 Φάντασμα Το φαινόμενο κατά το οποίο μια δοσοληψία ξεκινά με ένα σύνολο εγγραφών στην αρχή της, και βρίσκεται με ένα διαφορετικό σύνολο εγγραφών στο τέλος της, χωρίς να έχει κάνει αυτή τις αλλαγές. Το πρωτόκολλο δύο φάσεων ΔΕΝ μας προστατεύει από φαντάσματα! Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 42

42 Κλείδωμα κατηγορήματος Κλείδωμα των εγγραφών που πληρούν μια συνθήκη (όπως π.χ., RATING = 1, age > 2*salary) Απλούστερη λύση να κλειδώσω όλο τον πίνακα Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 43

43 Κλείδωμα ευρετηρίου Εάν υπάρχει πυκνό ευρετήριο πάνω στο πεδίο Rating η Τ1 πρέπει να κλειδώσει τη σελίδα του ευρετηρίου που περιέχει τις εισόδου δεδομένων με rating =1 Εάν δεν υπάρχουν εγγραφές με Rating =1, η Τ1 πρέπει να κλειδώσει τη σελίδα ευρετηρίου όπου μία τέτοια είσοδος θα ήταν, εάν υπήρχε! Εάν δεν υπάρχει κατάλληλο ευρετήριο, το Τ1 πρέπει να κλειδώνει όλες τις σελίδες και να κλειδώνει το file/table για να αποφύγουμε νέες σελίδες από το να προστεθούν, να επιβεβαιώσουμε ότι καμία νέα εγγραφή με rating =1 δεν θα προστεθεί Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 44

44 Πρώτη λύση Ας υποθέσουμε ότι θέλουμε να εισάγουμε μια εγγραφή με RATING=1στη διάρκεια της Τ1 Κατεβαίνοντας από τη ρίζα προς τα φύλλα του Β+ δέντρου, μπορούμε να κλειδώνουμε κάθε κόμβο με X- lock [του φύλλου συμπεριλαμβανομένου] Τραγική απόδοση: ήδη από το πρώτο βήμα έχω κλειδώσει τη ρίζα,δηλ. ΟΛΟ το δέντρο. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 45

45 Παρατήρηση Στα Β+ δέντρα, οι ενδιάμεσοι κόμβοι χρησιμεύουν ΜΟΝΟ ως μονοπάτια για τα φύλλα Αν κλειδώναμε με S-lock τους ενδιάμεσους κόμβους και με X-lock τα φύλλα? Bug: τι θα γίνει αν η εισαγωγή διασπάσει το παιδί? Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 46

46 Απλός αλγόριθμος κλειδώματος δέντρων SELECT: Ξεκινώντας από τη ρίζα κλειδώνουμε με S-lock κάθε κόμβο. Μετά, ξεκλειδώνουμε τον γονέα του. INS/DEL: Ξεκινώντας από τη ρίζα κλειδώνουμε με X-locks κατά περίπτωση. Μετά ελέγχουμε αν ο κόμβος που κλειδώσαμε είναι ασφαλής: Αν ναι, ξεκλειδώνουμε τους προγόνους του. Ασφαλής κόμβος: οι όποιες αλλαγές γίνουν δεν θα διαδοθούν προς τα πάνω από τον κόμβο αυτό INS: ο κόμβος δεν είναι πλήρης. DEL: ο κόμβος δεν είναι άδειος κατά το ήμισυ. Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 47

47 Απλός αλγόριθμος κλειδώματος δέντρων 1 ος τρόπος για το «κατά περίπτωση» X-locks για όλους τους κόμβους 2 ος τρόπος για το «κατά περίπτωση» S-locks για τους ενδιάμεσους κόμβους X-locks για τα φύλλα Μετατροπή του S-lock σε Χ-lock αν υπάρχει διάσπαση Elmasri & Navathe, Ramakrishnan & Gehrke Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 48

48 ROOT 20 A 35 B 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 49 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

49 ROOT Χ 20 A DEL 38* 35 B Με Α τρόπο F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 50 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

50 ROOT 20 A DEL 38* 35 Χ B 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 51 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

51 ROOT 20 A DEL 38* 35 B 23 F Χ C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 52 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

52 ROOT 20 A DEL 38* 35 B 23 F C 20* G H I D E 22* 23* 24* 35* 36* 38* 41* 44* Χ Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 53 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

53 ROOT 20 A DEL 38* 35 B 23 F C 20* G H I D 22* 23* 24* 35* 36* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 54 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

54 ROOT S 20 A INS 45* 35 B Με Β τρόπο F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 55 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

55 ROOT 20 A INS 45* 35 S B 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 56 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

56 ROOT 20 A 35 S B INS 45* S Γιατί ΔΕΝ ξεκλειδώνω το Β? 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 57 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

57 ROOT 20 A INS 45* 35 B 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* Χ E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 58 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

58 ROOT 20 A INS 45* 35 B 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E 45* Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 59 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

59 ROOT S 20 A INS 25* 35 B Με Β τρόπο F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 60 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

60 ROOT 20 A INS 25* 35 S B 23 F C 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 61 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

61 ROOT 20 A INS 25* 35 B 23 F C S 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 62 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

62 ROOT 20 A INS 25* Πλήρης κόμβος Διάσπαση Η 35 B 23 F C S 20* G H I D 22* 23* 24* 35* 36* 38* 41* 44* E Χ Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 63 Διαφάνειες από Π. Βασιλειάδης, Παν. Ιωαννίνων

63 ROOT 20 A INS 25* 35 B 23 F C Upgrade S Χ 20* G H H 22* 23* 24* I 35* 36* Χ Χ Χ Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 64

64 ROOT 20 A INS 25* 35 B 23 24* F C 20* G H H 22* 23* 24* 25* I 35* 36* Βάσεις Δεδομένων ΙΙ, Παν. Πειραιά 65

Έλεγχος συγχρονικότητας Μέρος 1 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

Έλεγχος συγχρονικότητας Μέρος 1 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη Έλεγχος συγχρονικότητας Μέρος 1 Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Έλεγχος συγχρονικότητας Διάφορες

Διαβάστε περισσότερα

Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη Δοσοληψίες Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Βασικές έννοιες της δοσοληψίας Δοσοληψία είναι μία

Διαβάστε περισσότερα

Θεµατολόγιο. Α) Πρακτικά Θέµατα στον Έλεγχο Ταυτοχρονισµού

Θεµατολόγιο. Α) Πρακτικά Θέµατα στον Έλεγχο Ταυτοχρονισµού Θεµατολόγιο Α) Πρακτικά Θέµατα στον Έλεγχο Ταυτοχρονισµού Φαντάσµατα Κλείδωµα δέντρων Κλείδωµα σε διαφορετικά επίπεδα διακριτότητας Πώς τα βάζω όλα µαζί Β) Εναλλακτικές Τεχνικές Αισιόδοξος έλεγχος ταυτοχρονισµού

Διαβάστε περισσότερα

Έλεγχος Ταυτοχρονισμού

Έλεγχος Ταυτοχρονισμού Έλεγχος Ταυτοχρονισμού Κεφάλαιο 17 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke Ελληνική Μετάφραση: Γεώργιος Ευαγγελίδης 1 Συγκρουσιακώς Σειριοποιήσιμα Χρονοπρογράμματα Δυο χρονοπρογράμματα

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών (συνέχεια)

Επεξεργασία οσοληψιών (συνέχεια) Επανάληψη: οσοληψίες Επεξεργασία οσοληψιών (συνέχεια) Πρόβληµα «Σωστή» εκτέλεση προγραµµάτων όταν επιτρέπουµε ταυτοχρονισµό και ακόµα και αν υπάρχουν αποτυχίες 1 2 οσοληψία (transaction) Επανάληψη: οσοληψίες

Διαβάστε περισσότερα

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για

Διαβάστε περισσότερα

Βάσεις Δεδομένων 2. Φροντιστήριο Δοσοληψίες Τεχνικές ελέγχου συνδρομικότητας. Ημερ: 05/5/2009 Ακ.Έτος 2008-09

Βάσεις Δεδομένων 2. Φροντιστήριο Δοσοληψίες Τεχνικές ελέγχου συνδρομικότητας. Ημερ: 05/5/2009 Ακ.Έτος 2008-09 Βάσεις Δεδομένων 2 Φροντιστήριο Δοσοληψίες Τεχνικές ελέγχου συνδρομικότητας Ημερ: 05/5/2009 Ακ.Έτος 2008-09 Θεωρία-Επανάληψη Δοσοληψία-ορισμός Το πρόβλημα της απώλειας των ενημερώσεων Το πρόβλημα της προσωρινής

Διαβάστε περισσότερα

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για

Διαβάστε περισσότερα

Βάσεις Δεδομένων ΙΙ. Διάλεξη 2 η Tεχνικές Ελέγχου Συνδρομικότητας

Βάσεις Δεδομένων ΙΙ. Διάλεξη 2 η Tεχνικές Ελέγχου Συνδρομικότητας Βάσεις Δεδομένων ΙΙ Διάλεξη 2 η Tεχνικές Ελέγχου Συνδρομικότητας Δ. Χριστοδουλάκης - Α. Φωκά Τμήμα Μηχανικών Η/Υ & Πληροφορικής - Εαρινό Εξάμηνο 2007 Τεχνικές Ελέγχου Συνδρομικότητας Ο χρήστης δεν ασχολείται

Διαβάστε περισσότερα

Αποκατάσταση συστήματος Βάσεις Δεδομένων

Αποκατάσταση συστήματος Βάσεις Δεδομένων Αποκατάσταση συστήματος Βάσεις Δεδομένων με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Κατηγοριοποίηση αποτυχιών Αποτυχία συναλλαγής (Transaction failure):

Διαβάστε περισσότερα

Βάσεις Δεδομένων ΙΙ. Διάλεξη 1 η Επεξεργασία Δοσοληψιών. Σύστημα Επεξεργασίας Δοσοληψιών

Βάσεις Δεδομένων ΙΙ. Διάλεξη 1 η Επεξεργασία Δοσοληψιών. Σύστημα Επεξεργασίας Δοσοληψιών Βάσεις Δεδομένων ΙΙ Διάλεξη 1 η Επεξεργασία Δοσοληψιών Δ. Χριστοδουλάκης - Α. Φωκά Τμήμα Μηχανικών Η/Υ & Πληροφορικής - Εαρινό Εξάμηνο 2007 Ορισμός Προβλήματος Σύστημα Επεξεργασίας Δοσοληψιών Συστήματα

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Δοσοληψίες Concurrent Data Access (Ταυτόχρονη Πρόσβαση σε Δεδομένα) Συνήθως πολλοί χρήστες έχουν ταυτόχρονη

Διαβάστε περισσότερα

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Πληροφοριακά Συστήματα και Βάσεις Δεδομένων. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. Πληροφοριακά Συστήματα και Βάσεις Δεδομένων. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Δρ. Κωνσταντίνος Χ. Γιωτόπουλος ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΑ και ΔΥΝΑΤΟΤΗΤΑ ΑΝΑΚΑΜΨΗΣ Όταν οι δοσοληψίες

Διαβάστε περισσότερα

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Τζικούλης Βασίλειος Credits:Γιάννης Μακρυδάκης Συναλλαγές Η ταυτόχρονες συναλλαγές (δοσοληψίες, transactions) µε µια

Διαβάστε περισσότερα

Κεφάλαιο 13 Δοσοληψίες

Κεφάλαιο 13 Δοσοληψίες Κεφάλαιο 13 Δοσοληψίες Σύνοψη Στο παρόν κεφάλαιο θα παρουσιασθούν βασικά στοιχεία όσον αφορά τις δοσοληψίες, την έννοια της σειριοποιησιμότητας και των διαφόρων επιπέδων απομόνωσης. Προαπαιτούμενη γνώση

Διαβάστε περισσότερα

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 7: Transactions (Συναλλαγές) Ο λόγος που αναπτύχθηκαν

Διαβάστε περισσότερα

Επαναληπτικές ασκήσεις

Επαναληπτικές ασκήσεις Επαναληπτικές ασκήσεις Ασκ 1: Θεωρείστε τα παρακάτω χρονοδιαγράμματα σύγχρονης εκτέλεσης : S 1 = r 1 (A); w 4 (B); w 1 (C); w 3 (D); r 2 (C); w 3 (A); w 1 (A); r 3 (B); w 3 (B); r 2 (D); w 2 (A) S 2 =

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI Β. Μεγαλοοικονόμου Επεξεργασία Δοσοληψιών (Transaction Processing) (παρουσίαση βασισμένη εν μέρη σε σημειώσεις των Silberchatz, Korth και Sudarshan και του

Διαβάστε περισσότερα

Θεµατολόγιο. Πώς ελέγχουµε σειριοποιησιµότητα στην πράξη;

Θεµατολόγιο. Πώς ελέγχουµε σειριοποιησιµότητα στην πράξη; Θεµατολόγιο Κλειδώµατα 2 Phase Locking Πώς γίνεται στην πράξη; Αδιέξοδα 1 Πώς ελέγχουµε σειριοποιησιµότητα στην πράξη; Η σειριοποιησιµότητα όψεων είναι πολύ ακριβή για να ελεγχθεί, ούτως ή άλλως... Οι

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙI

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙI Β. Μεγαλοοικονόµου Έλεγχος συνδροµικότητας (παρουσίαση βασισµένη εν µέρη σε σηµειώσεις των Silberchatz, Korth και Sudarshan και του C. Faloutsos) Γενική Επισκόπηση

Διαβάστε περισσότερα

Προχωρημένα Θέματα Βάσεων Δεδομένων

Προχωρημένα Θέματα Βάσεων Δεδομένων Προχωρημένα Θέματα Βάσεων Δεδομένων 1ο Σετ Ασκήσεων ΕΡΩΤΗΜΑ 1 Ατομικότητα : Η ατομικότητα πρακτικά εξασφαλίζει ότι είτε όλες οι πράξεις μιας δοσοληψίας θα εκτελεστούν ή καμμιά από αυτές δεν θα εκτελεστεί.

Διαβάστε περισσότερα

Πλειάδες φαντάσματα (phantoms)

Πλειάδες φαντάσματα (phantoms) Πλειάδες φαντάσματα (phantoms) Τα phantoms είναι πλειάδες που θα έπρεπε να έχουν φραγή αλλά δεν έχουν, γιατί δεν υπήρχαν όταν αποκτήθηκε το lock Παράδειγμα: σχέση R (E#, name, ) constraint: E# is key χρήση

Διαβάστε περισσότερα

Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων

Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Περιορισμοί πεδίου τιμών Περιορισμοί ακεραιότητας

Διαβάστε περισσότερα

Δοσοληψίες. Κατανεμημένα Συστήματα

Δοσοληψίες. Κατανεμημένα Συστήματα Δοσοληψίες Κατανεμημένα Συστήματα 2018-2019 http://www.cslab.ece.ntua.gr/courses/distrib Στο προηγούμενο μάθημα Group communication Multicast για FIFO διάταξη Multicast για ολική διάταξη Sequencer ISIS

Διαβάστε περισσότερα

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε:

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: Μια βάση δεδοµένων είναι σε συνεπή κατάσταση (consistent state) εάν όλοι οι περιορισµοί ακεραιότητας που έχουν δηλωθεί για αυτήν πληρούνται. Οι αλλαγές στην κατάσταση

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών Επανάληψη: οσοληψίες Επεξεργασία οσοληψιών Ανακεφαλαίωση Πρόβληµα «Σωστή» εκτέλεση προγραµµάτων όταν επιτρέπουµε ταυτοχρονισµό και ακόµα και αν υπάρχουν αποτυχίες Βάσεις εδοµένων II 2003-2004 Ευαγγελία

Διαβάστε περισσότερα

Δοσοληψίες. Κατανεμημένα Συστήματα

Δοσοληψίες. Κατανεμημένα Συστήματα Δοσοληψίες Κατανεμημένα Συστήματα 2016-2017 http://www.cslab.ece.ntua.gr/courses/distrib Στο προηγούμενο μάθημα Group communication Multicast για FIFO διάταξη Multicast για ολική διάταξη Sequencer ISIS

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Δοσοληψίες (Transactions) Μέχρι στιγμής θεωρούσαμε πως υπάρχει μόνο ένας DB χρήστης που εκτελεί μία

Διαβάστε περισσότερα

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Εισαγωγή Μοντέλο συστήματος Χαρακτηρισμός και ορισμός κατάστασης αδιεξόδου Μέθοδοι χειρισμού αδιεξόδων Αποτροπή αδιεξόδου (Deadlock Prevention) Αποφυγή

Διαβάστε περισσότερα

Διαχείριση Δοσοληψιών

Διαχείριση Δοσοληψιών Διαχείριση Δοσοληψιών Ορισμός της δοσοληψίας Συνδρομικές εκτελέσεις (concurrency) Έλεγχος σειριοποιησιμότητας Ανάκαμψη δοσοληψιών (recovery) Υλοποίηση της Απομόνωσης Βασική πηγή διαφανειών: Silberschatz

Διαβάστε περισσότερα

Βάσεις Δεδομένων ΙΙ Ενότητα 1

Βάσεις Δεδομένων ΙΙ Ενότητα 1 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 1: Επεξεργασία Δοσοληψιών Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Το Πρόβλημα του Αδιεξόδου Ένα σύνολο από διεργασίες σε αναμονή, όπου η κάθε μια κατέχει έναν αριθμό από πόρους και περιμένει να αποκτήσει και έναν

Διαβάστε περισσότερα

ΗΥ360 Αρχεία και Βάσεις εδοµένων

ΗΥ360 Αρχεία και Βάσεις εδοµένων 1 ΗΥ360 Αρχεία και Βάσεις εδοµένων ιαχείριση Συναλλαγών II - Tree Protocols Αυγουστάκη Αργυρώ 2 Διαχείριση Συναλλαγών - Επανάληψη Συναλλαγή (Τ) είναι ένα σύνολο από ενέργειες σε κάποιο αντικείμενο της

Διαβάστε περισσότερα

Βάσεις Δεδομένων ΙΙ Ενότητα 2

Βάσεις Δεδομένων ΙΙ Ενότητα 2 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 2: Ελέγχου Συνδρομικότητας Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Τεχνικές Ελέγχου Συνδροµικότητας

Τεχνικές Ελέγχου Συνδροµικότητας Τεχνικές Ελέγχου Συνδροµικότητας Τεχνικές Ελέγχου Συνδροµικότητας Ο χρήστης δεν ασχολείται µε τη συνδροµικότητα Το Σ Β εξασφαλίζει «σωστή συνδροµικότητα», γενικά δροµολογεί τις πράξεις των δοσοληψιών ώστε

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών (συνέχεια)

Επεξεργασία οσοληψιών (συνέχεια) Επανάληψη: οσοληψίες Επεξεργασία οσοληψιών (συνέχεια) Πρόβληµα «Σωστή» εκτέλεση προγραµµάτων όταν επιτρέπουµε ταυτοχρονισµό και ακόµα και αν υπάρχουν αποτυχίες 1 2 οσοληψία (transaction) Επανάληψη: οσοληψίες

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών οσοληψίες Επεξεργασία οσοληψιών Ηταυτόχρονη εκτέλεση προγραµµάτων χρηστών είναι απαραίτητη για την καλή απόδοση ενός Σ Β Επειδή οι προσπελάσεις στο δίσκο είναι συχνές και σχετικά αργές, είναι σηµαντικό

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα με Java. Ενότητα # 7: Ατομικές συναλλαγές Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα με Java. Ενότητα # 7: Ατομικές συναλλαγές Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα με Java Ενότητα # 7: Ατομικές συναλλαγές Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού

Διαβάστε περισσότερα

Ιδιοκτησία Αντικειµένου

Ιδιοκτησία Αντικειµένου Software Transactional Memory H STM υποστηρίζει την εκτέλεση δοσοληψιών από τις διεργασίες, οι οποίες περιέχουν λειτουργίες που ο χρήστης θέλει να εκτελέσει στα διαµοιραζόµενα αντικείµενα. H STM εγγυάται

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών οσοληψίες Επεξεργασία οσοληψιών Ηταυτόχρονη εκτέλεση προγραµµάτων χρηστών είναι απαραίτητη για την καλή απόδοση ενός Σ Β Επειδή οι προσπελάσεις στο δίσκο είναι συχνές και σχετικά αργές, είναι σηµαντικό

Διαβάστε περισσότερα

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό)

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό) Επανάκτηση δεδομένων (εμπλουτισμένο υλικό) http://delab.csd.auth.gr/courses/c_dbimpl/ Ευχαριστίες Μέρος του υλικού είναι βασισμένο στο βιβλίο Database Systems: The Complete Book 2 Επανάκτηση ηδεδομένων

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΦΘΙΝΟΠΩΡΟ 2005 Λύση ΑΣΚΗΣΗΣ #1 Τ. Σελλής

Διαβάστε περισσότερα

Έλεγχος Ταυτοχρονισμού

Έλεγχος Ταυτοχρονισμού Έλεγχος Ταυτοχρονισμού (εμπλουτισμένο λ έ υλικό) http://delab.csd.auth.gr/courses/c_dbimpl/ Ευχαριστίες Μέρος του υλικού είναι βασισμένο στο βιβλίο Database Systems: The Complete Book 2 Εισαγωγικά γ Ένα

Διαβάστε περισσότερα

Άσκηση 1 (15 μονάδες) (Επεκτατός Κατακερματισμός)

Άσκηση 1 (15 μονάδες) (Επεκτατός Κατακερματισμός) ΗΥ460 Τελική Εξέηαζη 29 Ιανουαπίου 2013 Σελίδα 1 από 8 Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών ΗΥ-460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Δημήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Επαναληπτική

Διαβάστε περισσότερα

Advanced Data Indexing

Advanced Data Indexing Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Αναζήτηση Δέντρα (2 ο Μέρος) Διαχρονικά -Δέντρα (Persistent -trees) Σε μερικές εφαρμογές βάσεων/δομών δεδομένων όπου γίνονται ενημερώσεις μας ενδιαφέρει

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Τ. Σελλής ΦΘΙΝΟΠΩΡΟ 2008 Λύση ΑΣΚΗΣΗΣ

Διαβάστε περισσότερα

Επαναφορά του Συστήματος (Μέρος Α')

Επαναφορά του Συστήματος (Μέρος Α') Επαναφορά του Συστήματος (Μέρος Α') Κεφάλαιο 18 Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke Ελληνική Μετάφραση: Γεώργιος Ευαγγελίδης 1 Επανάληψη: Οι ιδιότητες ACID A tomicity (Ατομικότητα):

Διαβάστε περισσότερα

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες Κατευθυνόμενο γράφημα Συνάρτηση χωρητικότητας 12 16 2 Ροή δικτύου Συνάρτηση αφετηρίακός κόμβος 13 1 με τις ακόλουθες ιδιότητες 4 14 9 7 4 τερματικός κόμβος Περιορισμός χωρητικότητας: Αντισυμμετρία: Διατήρηση

Διαβάστε περισσότερα

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1 Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1 Κεφάλαιο 20 Φυσικός Σχεδιασμός Βάσεων Δεδομένων και Ρύθμιση Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΦΘΙΝΟΠΩΡΟ 2007 Λύση ΑΣΚΗΣΗΣ #2 Τ. Σελλής

Διαβάστε περισσότερα

Κατανεμημένες δοσοληψίες

Κατανεμημένες δοσοληψίες Κατανεμημένες δοσοληψίες Κατανεμημένα Συστήματα 2015-2016 http://www.cslab.ece.ntua.gr/courses/distrib Στο προηγούμενο μάθημα Απλές δοσοληψίες (transactions) Flat Nested Ιδιότητες ACID Και κυρίως atomicity

Διαβάστε περισσότερα

Κεφ.11: Ευρετήρια και Κατακερματισμός

Κεφ.11: Ευρετήρια και Κατακερματισμός Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση

Διαβάστε περισσότερα

Συναλλαγές. Εαρινό Εξάμηνο Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών. Συναλλαγές. Βάσεις Δεδομένων ΙΙ

Συναλλαγές. Εαρινό Εξάμηνο Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών. Συναλλαγές. Βάσεις Δεδομένων ΙΙ Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών Εαρινό Εξάμηνο 2011-2012 Table of contents 1 Table of contents 1 2 Table of contents 1 2 3 1 2 3 T read(a) A -= 30 write(a) read(b)

Διαβάστε περισσότερα

Σημεία ελέγχου (Checkpoints)

Σημεία ελέγχου (Checkpoints) Σημεία ελέγχου (Checkpoints) Από την στιγμή που γίνεται ένα σε ένα Undo Recovery θα μπορούσε κανείς να υποθέσει ότι τα πρακτικά της δοσοληψίας μέχρι το δεν είναι πλέον απαραίτητα για

Διαβάστε περισσότερα

Διαχρονικές δομές δεδομένων

Διαχρονικές δομές δεδομένων Διαχρονικές δομές δεδομένων Μια τυπική δομή δεδομένων μεταβάλλεται με πράξεις εισαγωγής ή διαγραφής Π.χ. κοκκινόμαυρο δένδρο εισαγωγή 0 18 0 5 39 73 1 46 6 80 Αποκατάσταση ισορροπίας 5 39 73 0 46 6 80

Διαβάστε περισσότερα

Αδιέξοδα (Deadlocks)

Αδιέξοδα (Deadlocks) Αδιέξοδα (Deadlocks) Περίληψη Αδιέξοδα (deadlocks) Τύποι πόρων (preemptable non preemptable) Μοντελοποίηση αδιεξόδων Στρατηγικές Στρουθοκαµηλισµός (ostrich algorithm) Ανίχνευση και αποκατάσταση (detection

Διαβάστε περισσότερα

ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης

ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Ονοµατεπώνυµο: Αριθµός Μητρώου: Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία:

Διαβάστε περισσότερα

Μάθημα Βάσεις Δεδομένων ΙΙ - Ασκήσεις Επανάληψης. 01 Εκφώνηση

Μάθημα Βάσεις Δεδομένων ΙΙ - Ασκήσεις Επανάληψης. 01 Εκφώνηση Μάθημα Βάσεις Δεδομένων ΙΙ - Ασκήσεις Επανάληψης 01 Εκφώνηση Θεωρείστε το παρακάτω B+tree (κάθε κόμβος ευρετηρίου χωρά 4 καταχωρίσεις ευρετηρίου και κάθε κόμβος φύλλο χωρά 4 καταχωρίσεις δεδομένων): (Α)

Διαβάστε περισσότερα

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών Βάσεις Δεδομένων ΙΙ Διάλεξη 3 η Tεχνικές Aνάκαμψης Δ. Χριστοδουλάκης - Α. Φωκά Τμήμα Μηχανικών Η/Υ & Πληροφορικής - Εαρινό Εξάμηνο 2007 Επιθυμητές Ιδιότητες μιας Δοσοληψίας Ιδιότητες Δοσοληψιών Αtomicity

Διαβάστε περισσότερα

10 η Διάλεξη Python Βάσεις δεδομένων στη python

10 η Διάλεξη Python Βάσεις δεδομένων στη python 10 η Διάλεξη Python Βάσεις δεδομένων στη python ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Η standard διεπαφη της python για βάσεις δεδομένων βασίζεται στο DB-API Python Database API υποστηρίζει ένα ευρύ φάσμα βάσεων δεδομένων

Διαβάστε περισσότερα

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών Επανάληψη: οσοληψίες Επεξεργασία οσοληψιών Ανακεφαλαίωση Πρόβληµα «Σωστή» εκτέλεση προγραµµάτων προσπέλασης µίας βδ, στην περίπτωση: ταυτοχρονισµού αποτυχιών 1 2 Επανάληψη: οσοληψίες Επανάληψη: οσοληψίες

Διαβάστε περισσότερα

Κατανεμημένες δοσοληψίες

Κατανεμημένες δοσοληψίες Κατανεμημένες δοσοληψίες Κατανεμημένα Συστήματα 2018-2019 http://www.cslab.ece.ntua.gr/courses/distrib Στο προηγούμενο μάθημα Απλές δοσοληψίες (transactions) Ιδιότητες ACID Και κυρίως atomicity και durability

Διαβάστε περισσότερα

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα Βάσεις

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Συναίνεση και Σφάλματα Διεργασιών Παναγιώτα Παναγοπούλου Περίληψη Συναίνεση με σφάλματα διεργασιών Το πρόβλημα Ο αλγόριθμος FloodSet Επικύρωση δοσοληψιών Ορισμός του προβλήματος

Διαβάστε περισσότερα

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2017-2018 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ

Διαβάστε περισσότερα

ΑΔΙΕΞΟΔΑ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

ΑΔΙΕΞΟΔΑ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΑΔΙΕΞΟΔΑ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΑΔΙΕΞΟΔΑ 2 ΠΟΡΟΙ Υπάρχουν δύο τύποι πόρων σε υπολογιστικά συστήματα: Προεκτοπίσιμοι πόροι

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI Β. Μεγαλοοικονόμου Κατανεμημένες Βάσεις Δεδομένων (παρουσίαση βασισμένη εν μέρη σε σημειώσεις των Silberchatz, Korth και Sudarshan και του C. Faloutsos)

Διαβάστε περισσότερα

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες ως εξής P 1 K 1 P

Διαβάστε περισσότερα

Έλεγχος Ταυτοχρονισμού

Έλεγχος Ταυτοχρονισμού Έλεγχος Ταυτοχρονισμού (εμπλουτισμένο λ έ υλικό) http://delab.csd.auth.gr/courses/c_dbimpl/ Ευχαριστίες Μέρος του υλικού είναι βασισμένο στο βιβλίο Database Systems: The Complete Book Κεφάλαια 18.1 18.3

Διαβάστε περισσότερα

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Σχετικά µε το µάθηµα: Αξιολόγηση. Σχετικά µε το µάθηµα:faq ΟΧΙ ΝΑΙ. Λιγότερος! (ας πούµε το 1/3-1/4)

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Σχετικά µε το µάθηµα: Αξιολόγηση. Σχετικά µε το µάθηµα:faq ΟΧΙ ΝΑΙ. Λιγότερος! (ας πούµε το 1/3-1/4) ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ Κάποιες γενικές πληροφορίες συνοπτικά... Βάσεις εδοµένων II 2004-2005 Ευαγγελία Πιτουρά 1 Βάσεις εδοµένων II 2004-2005 Ευαγγελία Πιτουρά 2 Σχετικά µε το µάθηµα: Ύλη Σχετικά µε το µάθηµα:

Διαβάστε περισσότερα

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Επεξεργασία οσοληψιών. το πώς βλέπει το Σ Β τα προγράµµατα των χρηστών. οσοληψία (transaction)

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Επεξεργασία οσοληψιών. το πώς βλέπει το Σ Β τα προγράµµατα των χρηστών. οσοληψία (transaction) Ύλη Ύλη Έννοιες Επεξεργασίας οσοληψιών Τεχνικές Ελέγχου Συνδροµικότητας ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ Τεχνικές Ανάκαµψεις από Σφάλµατα Κατανεµηµένες και Παράλληλες Βάσεις εδοµένων Βάσεις εδοµένων και ιαδίκτυο Βάσεις

Διαβάστε περισσότερα

PostgreSQL. Oracle. Εαρινό Εξάμηνο

PostgreSQL. Oracle. Εαρινό Εξάμηνο . - Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών Εαρινό Εξάμηνο 2011-2012 Table of contents 1 - Table of contents 1 2 - Table of contents 1 2 3 - 1 2-3 - Καταγωγή από την

Διαβάστε περισσότερα

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες

Διαβάστε περισσότερα

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια Ευαγγελία Πιτουρά 1 τιμή γνωρίσματος Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται

Διαβάστε περισσότερα

Εαρινό Εξάμηνο

Εαρινό Εξάμηνο ΙΙ Παράλληλες ΙΙ Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών Εαρινό Εξάμηνο 2011-2012 Table of contents ΙΙ 1 Παράλληλες Table of contents ΙΙ Παράλληλες 1 2 Table of contents

Διαβάστε περισσότερα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

Διαβάστε περισσότερα

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα 2 Βήματα Επεξεργασίας Τα βασικά βήματα στην επεξεργασία

Διαβάστε περισσότερα

HY-486 Αρχές Κατανεμημένου Υπολογισμού

HY-486 Αρχές Κατανεμημένου Υπολογισμού HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο 2016-2017 Πρώτη Προγραμματιστική Εργασία Προθεσμία παράδοσης: Τρίτη 2/5 στις 23:59. 1. Γενική Περιγραφή Στην πρώτη προγραμματιστική εργασία καλείστε

Διαβάστε περισσότερα

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 1η: Εισαγωγή στην Οργάνωση Η/Υ Άσκηση 1: Αναλύστε τη διαδοχική εκτέλεση των παρακάτω εντολών MIPS με βάση τις

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΑΚΑ. ΕΤΟΣ 2012-13 Ι ΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής, Τοµέας Τεχνολογίας

Διαβάστε περισσότερα

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΣΔΒΔ Σύνολο από προγράµµατα για τη διαχείριση της ΒΔ Αρχεία ευρετηρίου Κατάλογος ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Αρχεία δεδοµένων συστήµατος Σύστηµα Βάσεων Δεδοµένων (ΣΒΔ)

Διαβάστε περισσότερα

Σηµειώσεις Βάσεων εδοµένων. ιαχείριση οσοληψιών. Γιάννης Θεοδωρίδης. Τµήµα Πληροφορικής, Πανεπιστήµιο Πειραιά. http://isl.cs.unipi.

Σηµειώσεις Βάσεων εδοµένων. ιαχείριση οσοληψιών. Γιάννης Θεοδωρίδης. Τµήµα Πληροφορικής, Πανεπιστήµιο Πειραιά. http://isl.cs.unipi. Σηµειώσεις Βάσεων εδοµένων ιαχείριση οσοληψιών Γιάννης Θεοδωρίδης Τµήµα Πληροφορικής, Πανεπιστήµιο Πειραιά http://isl.cs.unipi.gr/db/ version: 2006-11-28 Περιεχόµενα Ορισµός της δοσοληψίας Καταστάσεις

Διαβάστε περισσότερα

an:3 are:6 a:10

an:3 are:6 a:10 Άσκηση 1 Προγραμματισμός Συστήματος Προθεσμία: 18 Μαΐου 2014 Σ αυτή την άσκηση θα υλοποιήσετε ένα σύστημα auto-complete κατά τη διάρκεια πληκτρολόγησης. Ο πυρήνας του συστήματος είναι μια δομή trie (απλό

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα Ασκήσεις.

Κατανεμημένα Συστήματα Ασκήσεις. Κατανεμημένα Συστήματα Ασκήσεις 2016-2017 http://www.cslab.ece.ntua.gr/courses/distrib Άσκηση 1 3 διεργασίες, η P1, η P2 και η P3 στέλνουν μεταξύ τους multicast μηνύματα. Σε περίπτωση που θέλουμε να εξασφαλίσουμε:

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Συναίνεση με σφάλματα διεργασιών Κατανεμημένα Συστήματα Ι 5η Διάλεξη 10 Νοεμβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 5η Διάλεξη 1 Συναίνεση με σφάλματα διεργασιών Προηγούμενη διάλεξη

Διαβάστε περισσότερα

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές

Διαβάστε περισσότερα

Υ- 07 Παράλληλα Συστήματα Transac9onal memory

Υ- 07 Παράλληλα Συστήματα Transac9onal memory Υ- 07 Παράλληλα Συστήματα Transac9onal memory Αρης Ευθυμίου Παρ. προγρ/μός με κλειδιά Χαμηλού επιπέδου πολύ κοντά στα μέσα και τις δομές του υλικού πολλές λεπτομέρειες, εύκολα γίνεται λάθος χαμηλή παραγωγικότητα

Διαβάστε περισσότερα

Φραγή σε πολλαπλά επίπεδα λεπτομέρειας Τι αντικείμενα κλειδώνουμε?

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

Διαβάστε περισσότερα

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2018-2019 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)

Διαβάστε περισσότερα

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation) Για τη δηµιουργία των διαφανειών έχει χρησιµοποιηθεί υλικό από τις διαφάνειες παραδόσεων που βασίζονται στο βιβλίο, Silberschatz, Galvin and Gagne,

Διαβάστε περισσότερα

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2017-2018 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)

Διαβάστε περισσότερα

Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης

Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης Υ- 07 Παράλληλα Συστήματα Συνέπεια και συνοχή μνήμης Αρης Ευθυμίου Λειτουργία μνήμης Η μνήμη είναι ένας πίνακας αποθήκευσης Οταν διαβάζουμε μια θέση, περιμένουμε να πάρουμε την τελευταία τιμή που έχει

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (Λ/Σ)

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Αδιέξοδα Βασίλης Σακκάς 22/1/2014 1 Εισαγωγή Πόροι Ένα σύνολο διεργασιών βρίσκεται σε αδιέξοδο (deadlock) αν κάθε διεργασία του συνόλου περιμένει ένα γεγονός που μόνο μια άλλη

Διαβάστε περισσότερα

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1 Αµοιβαίοςαποκλεισµός Εισαγωγή Συγκεντρωτική προσέγγιση Κατανεµηµένη προσέγγιση Αλγόριθµος Lamport Αλγόριθµος Ricart-Agrawala Προσέγγιση µεταβίβασης σκυτάλης Αλγόριθµος LeLann Αλγόριθµος Raymond Αλγόριθµος

Διαβάστε περισσότερα

HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο

HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο HY-486 Αρχές Κατανεμημένου Υπολογισμού Εαρινό Εξάμηνο 2017-2018 Πρώτη Προγραμματιστική Εργασία Προθεσμία παράδοσης: Δευτέρα 30/4 στις 23:59. 1. Γενική Περιγραφή Στην πρώτη προγραμματιστική εργασία καλείστε

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1 ΣΥΝΑΛΛΑΓΕΣ ΚΑΙ ΕΛΕΓΧΟΣ ΤΑΥΤΟΧΡΟΝΙΣΜΟΥ

ΚΕΦΑΛΑΙΟ 1 ΣΥΝΑΛΛΑΓΕΣ ΚΑΙ ΕΛΕΓΧΟΣ ΤΑΥΤΟΧΡΟΝΙΣΜΟΥ ΚΕΦΑΛΑΙΟ 1 ΣΥΝΑΛΛΑΓΕΣ ΚΑΙ ΕΛΕΓΧΟΣ ΤΑΥΤΟΧΡΟΝΙΣΜΟΥ Σε αυτό το κεφάλαιο θα ασχοληθούµε µε βασικές έννοιες που αφορούν τη διαχείριση των συναλλαγών και ειδικότερα τον έλεγχο ταυτοχρονισµού. Ασχολούµαστε πρωταρχικά

Διαβάστε περισσότερα

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή (ως τρόπος οργάνωσης αρχείου) μέγεθος

Διαβάστε περισσότερα

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων 2009-2010: Ευρετήρια 1

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων 2009-2010: Ευρετήρια 1 Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου

Διαβάστε περισσότερα

Transactions Management. (Διαχείριση Δοσοληψιών)

Transactions Management. (Διαχείριση Δοσοληψιών) Transactions Management (Διαχείριση Δοσοληψιών) Επισκόπηση διαλέξεων Αντιμετώπιση αστοχιών συστήματος (failure recovery) Χρήση ιστορικού/πρακτικού - Logging (Undo, Redo, Undo/Redo) Χρονοπρογράμματα Δοσοληψιών

Διαβάστε περισσότερα