Έλεγχος Συγχρονικότητας. (Concurrency Control)

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

Download "Έλεγχος Συγχρονικότητας. (Concurrency Control)"

Transcript

1 Έλεγχος Συγχρονικότητας (Concurrency Control)

2 Συγχρονικότητα δοσοληψιών Οι αλληλεπιδράσεις ανάμεσα σε πολλαπλές δοσοληψίες που εκτελούνται ταυτόχρονα (multiple transactions execute concurrently) μπορεί να καταστήσουν ασυνεπή την κατάσταση της ΒΔ ακόμα και αν κάθε δοσοληψία από μόνη της διατηρεί την συνέπεια της ΒΔ ακόμα και αν δεν υπάρχει αστοχία του συστήματος Πρέπει να υπάρχει κάποιου είδους έλεγχος στις χρονικές στιγμές πραγματοποίησης των επιμέρους βημάτων των δοσοληψιών. 2

3 Προβλήματα Λόγω Συγχρονικότητας Παράδειγμα 1 Θεωρούμε δύο δοσοληψίες Τ1 και Τ2 ως εξής: T1: R(X), X=Χ-N, W(X), R(Y), Y=Y+N, W(Y) T2: R(X), X=X+M, W(X) Ν και Μ είναι κρατήσεις στην πτήση Χ και Υ. Η T1 μεταφέρει Ν κρατήσεις θέσεων από την πτήση Χ στη Y. Η T2 κρατά Μ θέσεις στη Χ. Αν και η δύο δοσοληψίες υποβληθούν ταυτόχρονα, δεν υπάρχει καμία εγγύηση ότι η T1 θα εκτελεστεί πριν την T2 ή το ανάποδο. Ωστόσο, το συνολικό αποτέλεσμα πρέπει να είναι ισοδύναμο με τη μία ή την άλλη περίπτωση (δηλαδή, με κάποια σειριακή εκτέλεση των δύο δοσοληψιών). 3

4 Προβλήματα Λόγω Συγχρονικότητας Παράδειγμα 1: Χ = 100 κρατήσεις, Υ = 90 κρατήσεις μεταφορά Ν = 30 κρατήσεων νέα κράτηση Μ = 5 θέσεις T1 μεταφέρει Ν κρατήσεις θέσεων από την πτήση Χ στη Y. T2 κρατά Μ θέσεις στη Χ. Σωστό αποτέλεσμα: Χ = 75, Υ = 120 Σειριακή εκτέλεση Τ1 Τ2 T1 T2 Χ Υ Read(Χ) Χ Χ Ν Write(Χ) 70 Read(Υ) Υ Υ + Ν Write(Υ) 120 Read(Χ) Χ Χ + Μ Write(Χ)

5 Προβλήματα Λόγω Συγχρονικότητας Παράδειγμα 1: Χ = 100 κρατήσεις, Υ = 90 κρατήσεις μεταφορά Ν = 30 κρατήσεων νέα κράτηση Μ = 5 θέσεις T1 μεταφέρει Ν κρατήσεις θέσεων από την πτήση Χ στη Y. T2 κρατά Μ θέσεις στη Χ. Σωστό αποτέλεσμα: Χ = 75, Υ = 120 Σειριακή εκτέλεση Τ2 Τ1 T1 T2 Χ Υ Read(Χ) Χ Χ + Μ Write(Χ) 105 Read(Χ) Χ Χ Ν Write(Χ) 75 Read(Υ) Υ Υ + Ν Write(Υ)

6 Προβλήματα Λόγω Συγχρονικότητας Παράδειγμα 1: Χ = 100 κρατήσεις, Υ = 90 κρατήσεις μεταφορά Ν = 30 κρατήσεων νέα κράτηση Μ = 5 θέσεις T1 μεταφέρει Ν κρατήσεις θέσεων από την πτήση Χ στη Y. T2 κρατά Μ θέσεις στη Χ. Σωστό αποτέλεσμα: Χ = 75, Υ = 120 Η τιμή του X είναι τελικά λανθασμένη Απώλεια ενημερώσεων στο δίσκο T1 T2 Χ Υ Read(Χ) Χ Χ Ν [70] Read(Χ) Χ Χ + Μ [105] Write(Χ) 70 Read(Υ) Write(Χ) 105 Υ Υ + Ν Write(Υ)

7 Προβλήματα Λόγω Συγχρονικότητας Παράδειγμα 1: Χ = 100 κρατήσεις, Υ = 90 κρατήσεις μεταφορά Ν = 30 κρατήσεων νέα κράτηση Μ = 5 θέσεις T1 μεταφέρει Ν κρατήσεις θέσεων από την πτήση Χ στη Y. T2 κρατά Μ θέσεις στη Χ. Σωστό αποτέλεσμα: Χ = 75, Υ = 120 Προσωρινή ενημέρωση T1 T2 Χ Υ Dirty Read Read(Χ) Χ Χ Ν Write(Χ) 70 Read(Χ) Χ Χ + Μ Write(Χ) 75 Failure! Τι θα συμβεί αν η Τ1 αποτύχει η Τ2 θα έχει διαβάσει «ανύπαρκτη τιμή» 7

8 Προβλήματα Λόγω Συγχρονικότητας Παράδειγμα 1: Χ = 100 κρατήσεις, Υ = 90 κρατήσεις μεταφορά Ν = 30 κρατήσεων νέα κράτηση Μ = 5 θέσεις T1 μεταφέρει Ν κρατήσεις θέσεων από την πτήση Χ στη Y. T2 κρατά Μ θέσεις στη Χ. Σωστό αποτέλεσμα: Χ = 75, Υ = 120 H τιμή του Χ που διαβάζει η Τ1 είναι διαφορετική!! Μη επαναλήψιμη ανάγνωση T1 T2 Χ Υ Read(Χ) Read(Χ) Χ Χ Ν Write(Χ) 70 Read(Υ) Υ Υ + Ν Write(Υ) 120 Read(Χ) 8

9 Χρονοδιάγραμμα/Χρονοπρόγραμμα Χρονοδιάγραμμα ή Χρονοπρόγραμμα (Schedule) είναι μια σειρά/ακολουθία ενεργειών που πραγματοποιούνται από μια ή περισσότερες δοσοληψίες. Σημαντικές ενέργειες: ανάγνωση, εγγραφή Όταν ένα στοιχείο της ΒΔ μεταφέρεται σε ένα buffer από την δοσοληψία Τ, μπορεί να αναγνωστεί ή να εγγραφεί στον συγκεκριμένο buffer όχι μόνο από την Τ αλλά και από άλλες δοσοληψίες. 9

10 Σειριακό χρονοδιάγραμμα Σειριακό (serial) λέγεται ένα χρονοδιάγραμμα αν αποτελείται από όλες τις ενέργειες μιας δοσοληψίας και στην συνέχεια από όλες μιας άλλης. Δεν επιτρέπεται η ανάμιξη ενεργειών. Ένα σειριακό χρονοδιάγραμμα διατηρεί την συνέπεια της ΒΔ. Συμβολισμός: (Τ1, Τ2) ή (Τ2, Τ1) Παράδειγμα: Constraint A=B (περιορισμός συνέπειας) T1: Read(A) T2: Read(A) A A+100 A A*2 Write(A) Write(A) Read(B) Read(B) B B+100 B B*2 Write(B) Write(B) 10

11 Σειριακό χρονοδιάγραμμα T1 Read(A); A A+100; Write(A); Read(B); B B+100; Write(B); T2 A B Schedule Α Read(A); A A*2; Write(A); Read(B); B B*2; Write(B);

12 T1 Σειριακό χρονοδιάγραμμα T2 Read(A); A A*2; Write(A); Read(B); B B*2; Write(B); A B Read(A); A A+100; Write(A); Read(B); B B+100; Write(B); Schedule Β

13 Σειριόμορφο χρονοδιάγραμμα Υπάρχουν άλλα χρονοδιαγράμματα που να εγγυώνται τη συνέπεια της ΒΔ; Ένα χρονοδιαγράμματα S είναι σειριόμορφο (serializable) αν υπάρχει σειριακό χρονοδιαγράμματα S τέτοιο ώστε, για κάθε αρχική κατάσταση της ΒΔ, η επίδραση του S και του S να είναι η ίδια. 13

14 Σειριόμορφο χρονοδιάγραμμα T1 Read(A); A A+100; Write(A); T2 Read(A); A A*2; Write(A); A B Read(B); B B+100; Write(B); Schedule C Read(B); B B*2; Write(B);

15 Μη-Σειριόμορφο χρονοδιάγραμμα T1 Read(A); A A+100; Write(A); T2 Read(A); A A*2; Write(A); A B Read(B); B B+100; Write(B); Schedule D Read(B); B B*2; Write(B);

16 Σειριόμορφο χρονοδιάγραμμα T1 T2 Read(A); A A+100; Write(A); Read(A); A A+200; Write(A); Οι λεπτομέρειες των δοσοληψιών έχουν σημασία! Αλλά δεν είναι ρεαλιστικό ο scheduler να ασχολείται με αυτές τις λεπτομέρειες. Read(B); B B+100; Write(B); Schedule E Read(B); B B+200; Write(B); A B

17 Transaction Scheduling Θέλουμε να επιτρέπουμε την εκτέλεση μόνο «καλών» χρονοδιαγραμμάτων ανεξάρτητα από αρχικές καταστάσεις σημασιολογία των δοσοληψιών Μετράει μόνο η σειρά των αναγνώσεων και εγγραφών Παράδειγμα: Δεδομένου ενός χρονοδιαγράμματος στην παρακάτω μορφή, προσδιόρισε αν πρέπει να επιτραπεί η εκτέλεση του χωρίς να προκαλεί προβλήματα ασυνέπειας στην ΒΔ. Sc = r1(a)w1(a)r2(a)w2(a)r1(b)w1(b)r2(b)w2(b) 17

18 Συγκρούσεις (Conflicts) Τα περισσότερα ζεύγη ενεργειών δεν συγκρούονται Δεν πρέπει να εναλλάξομε την σειρά των ενεργειών όταν: Δύο ενέργειες ανήκουν στην ίδια δοσοληψία, γιατί η σειρά των ενεργειών είναι καθορισμένη Δύο εγγραφές του ίδιου στοιχείου της ΒΔ από διαφορετικές δοσοληψίες συγκρούονται Μια ανάγνωση και μια εγγραφή του ίδιου στοιχείου της ΒΔ από διαφορετικές δοσοληψίες συγκρούονται Γενικά, μπορούμε να εναλλάξουμε (swap) δύο ενέργειες που εκτελούνται από διαφορετικές δοσοληψίες, εκτός αν: Αφορούν το ίδιο στοιχείο της ΒΔ Τουλάχιστον η μία ενέργεια να είναι εγγραφή 18

19 Συγκρούσεις (Conflicts) Ένα χρονοδιάγραμμα είναι συγκρουσιακώς σειριόμορφο (conflict-serializable) αν είναι συγκρουσιακώς ισοδύναμο (conflict-equivalent δηλ. το ένα μπορεί να μετατραπεί στο άλλο μέσω μιας ακολουθίας μη συγκρουσιακών εναλλαγών) με ένα σειριακό χρονοδιάγραμμα. Sc=r1(A)w1(A)r2(A)w2(A)r1(B)w1(B)r2(B)w2(B) Sc =r1(a)w1(a) r1(b)w1(b)r2(a)w2(a)r2(b)w2(b) T1 T2 Το Sc είναι συγκρουσιακώς σειριόμορφο? 19

20 Χρονοπρογραμματισμός Δοσοληψιών (Transaction Scheduling) Παράδειγμα: Υπάρχει ισοδύναμο σειριακό χρονοδιάγραμμα του Sd=r1(A)w1(A)r2(A)w2(A) r2(b)w2(b)r1(b)w1(b)? Πρέπει να γίνει είτε T1, T2 είτε T2, T1. Όμως για το Sd: Sd=r1(A)w1(A)r2(A)w2(A) r2(b)w2(b)r1(b)w1(b) Για το Sd δεν υπάρχουν εναλλαγές που να το μετατρέπουν σε ισοδύναμο σειριακό, επομένως το Sd είναι «κακό» 20

21 Βασικές έννοιες Δοσοληψία (Transaction): μια σειρά ενεργειών ri(x) και wi(x) Συγκρουόμενες ενέργειες (Conflicting actions): r1(a) w2(a) w1(a) w2(a) r1(a) w2(a) Χρονοπρόγραμμα (Schedule): αναπαριστά την χρονολογική σειρά εκτέλεσης των ενεργειών Σειριακό χρονοπρόγραμμα (Serial schedule): δεν επιτρέπεται διαπλοκή (interleaving) των δοσοληψιών

22 Γράφημα προήγησης (precedence graph) Για ένα χρονοδιάγραμμα S, ο γράφος προήγησης P(S) ορίζεται ως εξής: Κόμβοι (Nodes): οι δοσοληψίες στο S Ακμές (Arcs): προηγείται η Ti έναντι της Tj (Ti Tj) όταν pi(a), qj(a) είναι ενέργειες στο S pi(a) < S qj(a) και αφορούν το ίδιο στοιχείο Α Τουλάχιστον ένα από τα pi, qj είναι ενέργεια εγγραφής 22

23 Γράφημα προήγησης (precedence graph) Παράδειγμα1 S : r2(a);r1(b);w2(a);r3(a);w1(b);w3(a);r2(b);w2(b); Για τις ενέργειες που αφορούν το Α, Τ2(A) < S Τ3(A) 2 3 Για τις ενέργειες που αφορούν το Β, Τ1(Β) < S Τ2(Β) 1 2 Συνολικά:

24 Γράφημα προήγησης (precedence graph) Παράδειγμα2 S : r2(a);r1(b);w2(a);r2(b);r3(a);w1(b);w3(a);w2(b); Για τις ενέργειες που αφορούν το Α, Τ2(A) < S Τ3(A) 2 3 Για τις ενέργειες όμως που αφορούν το Β, διαπιστώνουμε ότι Τ1(Β) < S Τ2(Β) και Τ2(Β) < S Τ1(Β) Συνολικά:

25 Γράφημα προήγησης (precedence graph) Άσκηση: Βρείτε το P(S) για το S = w3(a) w2(c) r1(a) w1(b) r1(c) w2(a) r4(a) w4(d) Για να διαπιστώσουμε αν ένα χρονοδιάγραμμα είναι συγκρουσιακώς σειριόμορφο, κατασκευάζουμε το γράφημα προήγησης και εξετάζουμε αν περιέχει κύκλους. Αν ναι, τότε δεν είναι συγκρουσιακώς σειριόμορφο. 25

26 Γράφημα προήγησης (precedence graph) Lemma S1, S2 conflict equivalent P(S1)=P(S2) Proof: Assume P(S1) P(S2) Then, Ti: Ti Tj in S1 and not in S2 S1 = pi(a)... qj(a) pi, qj S2 = qj(a) pi(a)... conflict Hence, S1 and S2 cannot be conflict equivalent Note: P(S1)=P(S2) does not imply S1, S2 conflict equivalent Counterexample: S1=w1(A) r2(a) w2(b) r1(b) S2=r2(A) w1(a) r1(b) w2(b) 26

27 Γράφημα προήγησης (precedence graph) Theorem: P(S1) acyclic iff S1 conflict serializable Proof: (if) Assume S1 is conflict serializable Ss: Ss, S1 conflict equivalent P(Ss) = P(S1) P(S1) acyclic since P(Ss) is acyclic (only if) Assume P(S1) is acyclic Transform S1 as follows: 1. Take T1 to be transaction with no incoming arcs 2. Move all T1 actions to the front 3. We now have S1 = < T1 actions ><... rest...>; remove T1 and incident arcs 4. Repeat above steps to serialize rest! 27

28 Επιβολή σειριομορφίας Επιλογή 1: επιτρέπουμε κάθε χρονοπρόγραμμα και ελέγχουμε για κύκλους στο γράφο προήγησης (reactive) Επιλογή 2: αποτρέπουμε κύκλους στο γράφο προήγησης (proactive) Πρωτόκολλα φραγμών/κλειδωμάτων (Locking protocols) χρησιμοποιούνται για την υλοποίηση της επιλογής 2 New actions: lock (exclusive), unlock Scheduler maintains information about locks in a lock table Rule 1: well-formed transactions A transaction is well-formed when every operation on a database item X (read or write) is preceded by a lock request on X and followed by an unlock request on X Rule 2: legal schedule A schedule is legal if no lock request is granted to a transaction T j for a database item X when a transaction T i has already been granted the lock to X 28

29 Απλό πρωτόκολλο φραγμών Δύο νέες ενέργειες: lock (exclusive): li (Χ) unlock: ui (Χ) Ένα μόνο είδος κλειδιού Rule #1: Well-formed transactions Ti: li(χ) pi(χ) ui(χ)... Rule #2: Legal schedule S =.. li(χ)... ui(χ)... όχι lj(χ) T1 T2 scheduler lock table Περιέχει εγγραφές του τύπου: Lock(X, Ti) 29

30 Απλό πρωτόκολλο φραγμών Άσκηση: Ποια από τα παρακάτω χρονοπρογράμματα είναι legal? Ποιες δοσοληψίες είναι well-formed? S1 = l1(a)l1(b)r1(a)w1(b)l2(b)u1(a)u1(b)r2(b)w2(b)u2(b)l3(b)r3(b)u3(b) S2 = l1(a)r1(a)w1(b)u1(a)u1(b)l2(b)r2(b)w2(b)l3(b)r3(b)u3(b) u2(b)? S3 = l1(a)r1(a)u1(a)l1(b)w1(b)u1(b)l2(b)r2(b)w2(b)u2(b)l3(b)r3(b)u3(b) 30

31 Διφασική φραγή (2-Phase Lock) Rule #3: 2-Phase Locking (2PL) Σε κάθε δοσοληψία, όλες οι αιτήσεις για φραγές προηγούνται όλων των αιτήσεων για εκφραγές/ξεκλειδώματα. Ιδέα: Ti =. li(a)... ui(a)... no unlock no locks # locks held by T i time Το προηγούμενο παράδειγμα S3 συμμορφώνεται με το 2PL? Growing Phase Shrinking Phase 31

32 Διφασική φραγή (2-Phase Lock) Διαισθητικά, μπορούμε να θεωρήσουμε ότι κάθε δοσοληψία 2PL εκτελείτε εξ ολοκλήρου την στιγμή που υποβάλλει το πρώτο αίτημα για unlock (απελευθέρωση του πρώτου στοιχείου) Για κάθε χρονοπρόγραμμα S που αποτελείται από 2PL δοσοληψίες υπάρχει πάντοτε τουλάχιστον ένα συγκρουσιακώς ισοδύναμο σειριακό χρονοπρόγραμμα (conflict-equivalent serial schedule): αυτό στο οποίο οι δοσοληψίες εμφανίζονται με την ίδια σειρά που έχουν οι πρώτες εκφραγές (unlocks) που εκτελούν Απόδειξη: με επαγωγή ως προς το πλήθος n των δοσοληψιών στο legal schedule S Σημείωση: εναλλάσσουμε (swap) την σειρά μόνο των ενεργειών read και write των διαφόρων δοσοληψιών και αγνοούμε τα locks και unlocks. Μόλις διατάξουμε σειριακά τις ενέργειες τότε προσθέτουμε τα lock / unlock 32

33 Επαγωγή Διφασική φραγή (2-Phase Lock) Αν n=1 τότε το S είναι ήδη σειριακό Έστω ότι το S περιέχει n δοσοληψίες T1, T2,, Tn. Let Ti be the first transaction to unlock an item by op. Ui(X). Then, it is possible to move all read/write actions of Ti to the beginning of S without passing any conflicting action. Let Ti include an action Wi(Y). If there existed an action Wj(Y) in S that precedes Wi(Y), then Uj(Y) and Li(Y) must also appear between Wj(Y) and Wi(Y). We assumed that Ui(X) is the first unlock, hence it precedes Uj(Y). This means that Ui(X) must also appear before Li(Y). But then, Ti is not a 2PL transaction. 33

34 2PL και Deadlocks Το 2PL δεν λύνει το πρόβλημα πιθανών αδιεξόδων (deadlocks) Παράδειγμα: Θεωρούμε το παρακάτω S L1(A), R1(A), L2(B), R2(B), W1(A), W2(B), L1(B), L2(A) wait Καμία δεν μπορεί να προχωρήσει, και οι δύο θα περιμένουν για πάντα η μια την άλλη για να απελευθερώσουν διαφορετικά αντικείμενα 34

35 Πολλαπλοί τύποι φραγμών Πρόβλημα: Με το 2PL εφαρμόζουμε μια φραγή στο στοιχείο Χ ακόμα και αν θέλουμε απλώς να το διαβάσουμε. Βελτίωση την απόδοση του 2PL με δύο διαφορετικά είδη φραγμών: Κοινόχρηστος φραγμός ή φραγμός ανάγνωσης (shared lock) Αποκλειστικός φραγμός ή φραγμός εγγραφής (exclusive lock) Κοινόχρηστος φραγμός ενέργειες ανάγνωσης δεν συγκρούονται δεν χρειάζεται αποκλειστικός φραγμός για ανάγνωση Συμβολισμός: SLi(X): Η Ti αιτείται ένα κοινόχρηστο φραγμό για το X XLi(X): Η Ti αιτείται ένα αποκλειστικό φραγμό για το X Ui(X): Η Ti απελευθερώνει τον φραγμό για το X 35

36 Κοινόχρηστος φραγμός Μέχρι τώρα στο 2PL: S =...l1(a) r1(a) u1(a) l2(a) r2(a) u2(a) Τώρα: Do not conflict S =... ls1(a) r1(a) ls2(a) r2(a). u1(a) u2(a) ui(a): απελευθερώνει οποιοδήποτε φραγμό έχει κλειδώσει η Ti το A 36

37 Απαιτήσεις shared και exclusive locks Συνέπειας (Consistency) 2PL Πριν από κάθε ενέργεια Ri(X) πρέπει να προηγείται μια ενέργεια SLi(X) ή XLi(X) χωρίς παρεμβολή μιας ενέργειας Ui(X) Πριν από κάθε ενέργεια Wi(X) πρέπει να προηγείται μια ενέργεια XLi(X) χωρίς παρεμβολή μιας ενέργειας Ui(X) Όλα τα κλειδώματα πρέπει να ακολουθούνται από ένα ξεκλείδωμα του στοιχείου Σε κάθε 2PL δοσοληψία Ti, καμία ενέργεια SLi(X) ή XLi(X) δεν μπορεί να έπεται μιας ενέργειας Ui(Υ) για κανένα Υ 37

38 Απαιτήσεις shared και exclusive locks Επιτρεπτότητα (Legality) Ένα στοιχείο μπορεί είτε να έχει ένα exclusive lock από μια δοσοληψία είτε να έχει shared lock από πολλές δοσοληψίες, αλλά όχι και τα δύο: Αν εμφανίζεται ένα XLi(X) τότε δεν μπορεί να ακολουθεί ένα XLj(X) ή SLj(X) για j διαφορετικό του i, χωρίς παρεμβολή μιας ενέργειας Ui(X) Αν εμφανίζεται ένα SLi(X) τότε δεν μπορεί να ακολουθεί ένα XLj(X) για j διαφορετικό του i, χωρίς παρεμβολή μιας ενέργειας Ui(X) 38

39 Παράδειγμα Θεωρούμε τις παρακάτω δοσοληψίες T1: SL1(A), R1(A), XL1(B), R1(B), W1(B), U1(A), U1(B) T2: SL2(A), R2(A), SL2(B), R2(B), U2(A), U2(B) Μια επιτρεπτή συμπλεγμένη εκτέλεση των T1, T2 : T1 SL1(A); R1(A); XL1(B); wait XL1(B); R1(B); W1(B); U1(A), U1(B) T2 SL2(A); R2(A); SL2(B), R2(B); U2(A); U2(B); Παρατήρηση: Το διπλανό χρονοπρόγραμμα είναι συγκρουσιακώς σειριόμορφο γιατί υπάρχει ισοδύναμη σειριακή διάταξη (Τ2,Τ1) 39

40 Μήτρα/Πίνακας συμβατότητας (compatibility matrix) Όταν έχουμε πολλούς τύπους φραγμών, ο scheduler χρειάζεται μια πολιτική για το πότε μπορεί να ικανοποιήσει ένα αίτημα φραγής. Ένας βολικός τρόπος περιγραφής της διαχείρισης των φραγμών είναι η μήτρα συμβατότητας (για κάθε στοιχείο). φραγμός που κατέχεται S φραγμός που απαιτείται S True False X False False X Η στήλη για το S λέει ότι μπορούμε να δώσουμε ένα s-lock αν δεν υπάρχει x-lock. Η στήλη για το X λέει ότι μπορούμε να δώσουμε ένα x-lock αν δεν υπάρχουν οτιδήποτε άλλοι φραγμοί. 40

41 Αναβάθμιση φραγμών (upgrading locks) Η δοσοληψία που θέλει να διαβάσει και να γράψει ένα στοιχείο, μπορεί πρώτα να αποκτήσει ένα κοινόχρηστο φραγμό για ανάγνωση και μετά να τον αναβαθμίσει (upgrade) σε ένα αποκλειστικό φραγμό για εγγραφή Παράδειγμα: T1: SL1(A), R1(A), SL1(B), R1(B), XL1(B), W1(B), U1(A), U1(B) T2: SL2(A), R2(A), SL2(B), R2(B), U2(A), U2(B) Αν είχε ζητήσει εξ αρχής XL1(Β), τότε θα περίμενε και δεν θα μπορούσε ούτε καν να διαβάσει το Β. T1 SL1(A); R1(A); SL1(B); R1(B); XL1(B); wait XL1(B); W1(B); U1(A); U1(B); T2 SL2(A); R2(A); SL2(B); R2(B); U2(A); U2(B); 41

42 Αναβάθμιση φραγμών (upgrading locks) Η αναβάθμιση των φραγμών μπορεί να οδηγήσει σε αδιέξοδα (deadlocks) Παράδειγμα: T1 SL1(A); R1(A); XL1(A); wait T2 SL2(A); R2(A); XL2(A); wait 42

43 Ενημερώσιμοι φραγμοί (update locks) Μπορούμε να αποφύγουμε τα αδιέξοδα που προκαλούνται από την αναβάθμιση φραγμών χρησιμοποιώντας update locks: Ένα update lock ULi(X) επιτρέπει στην δοσοληψία Ti να διαβάσει το X αλλά όχι να γράψει το X Μόνο ένα update lock μπορεί αργότερα να αναβαθμιστεί σε ένα write lock (ένας φραγμός ανάγνωσης δεν μπορεί να αναβαθμιστεί) Μπορούμε να χορηγήσουμε ένα update lock στο X όταν υπάρχουν ήδη shared locks στο X Μόλις υπάρξει ένα update lock στο X, δεν επιτρέπεται η χορήγηση οποιοδήποτε άλλου είδους προσθέτων locks στο X (διαφορετικά μπορεί να μην καταφέρει ποτέ να αναβαθμίσει το lock σε exclusive γιατί υπάρχουν πάντοτε άλλοι φραγμοί) 43

44 Ενημερώσιμοι φραγμοί (update locks) Παράδειγμα: T1: UL1(A); R1(A); XL1(A); W1(A); U1(A); T2: UL2(A); R2(A); XL2(A); W2(A); U2(A); T1 T2 UL1(A); R1(A); XL1(A); W1(A); U1(A); UL2(A); wait UL2(A); R2(A); XL2(A); W2(A); U2(A); 44

45 Ενημερώσιμοι φραγμοί (update locks) Πίνακας συμβατότητας φραγμός που απαιτείται φραγμός που κατέχεται S X U S True False True X False False False U False False False 45

46 Φραγμοί αύξησης (increment locks) Η μόνη πράξη που εκτελούν πολλές δοσοληψίες είναι η αύξηση ή η μείωση των αποθηκευμένων τιμών π.χ., μεταφορά χρημάτων μεταξύ λογαριασμών, κρατήσεις θέσεων Η χρήσιμη ιδιότητα των ενεργειών αυτών είναι ότι μπορούν να αντιμετατεθούν μεταξύ τους αφού η σχετική τους σειρά δεν παίζει σημασία. Όμως, δεν μπορούν να αντιμετατεθούν με πράξεις που γράφουν ή διαβάζουν. Μια πράξη της μορφής INC(A,c), συμβολίζει την αύξηση του στοιχείου Α κατά μια σταθερά c Δηλαδή INC(A,c) σημαίνει: Read(A,t); t:=t+c; Write(A,t); Πράξεις αύξησης χρειάζονται και φραγμούς αύξησης: ILi(X) 46

47 Φραγμοί αύξησης (increment locks) Η ύπαρξη φραγμών αύξησης μας υποχρεώνει να κάνουμε τις εξής τροποποιήσεις: Μια συνεπής δοσοληψία μπορεί να κάνει μια ενέργεια αύξησης INCi(X) επί του Χ μόνο αν ήδη κατέχει ένα φραγμό αύξησης ILi(X) Σε ένα επιτρεπτό schedule, κάθε χρονική στιγμή οσεσδήποτε δοσοληψίες μπορούν να κατέχουν ένα φραγμό αύξησης επί του Χ. Αν μια δοσοληψία έχει ένα φραγμό αύξησης στο Χ, τότε καμία άλλη δοσοληψία δεν μπορεί να έχει ένα shared ή exclusive lock στο Χ την ίδια στιγμή. INCi(X) συγκρούεται με την Rj(X) και την Wj(X) για j διάφορο του i INCi(X) δεν συγκρούεται με την INCj(X) 47

48 Φραγμοί αύξησης (increment locks) Παράδειγμα: T1: SL1(A); R1(A); IL1(B); INC1(B); U1(A); U1(B); T2: SL2(A); R2(A); IL2(B); INC2(B); U2(A); U2(B); T1 T2 SL1(A); R1(A); IL1(B); INC1(B); U1(A); U1(B); SL2(A); R2(A); IL2(B); INC2(B); UL2(A); R2(A); 48

49 Φραγμοί αύξησης (increment locks) Πίνακας συμβατότητας φραγμός που απαιτείται φραγμός που κατέχεται S X I S True False False X False False False I False False True 49

50 Πίνακας φραγμών (lock table) Ο χρονοπρογραμματιστής διατηρεί ένα πίνακα φραγμών A Object: A Group mode: U Waiting: yes List: T1 S no T2 U no hash table Εξυπηρέτηση φραγμών σε αναμονή: με σειρά άφιξης ή πρώτα οι S ή πρώτα οι U T3 X yes σε άλλα της Τ3 50

Χρονοδιάγραμμα/Χρονοπρόγραμμα

Χρονοδιάγραμμα/Χρονοπρόγραμμα Χρονοδιάγραμμα/Χρονοπρόγραμμα Χρονοδιάγραμμα ή Χρονοπρόγραμμα (Schedule) είναι μια σειρά/ακολουθία ενεργειών που πραγματοποιούνται από μια ή περισσότερες δοσοληψίες. Σημαντικές ενέργειες: ανάγνωση, εγγραφή

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

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

Επαναληπτικές ασκήσεις Επαναληπτικές ασκήσεις Ασκ 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 =

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

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Συστήματα Διαχείρισης Βάσεων Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Διάλεξη 9η: Transactions - part 2 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Transaction Management Comparison of Undo

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

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

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

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

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

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

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

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

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

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

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

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

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

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Συστήματα Διαχείρισης Βάσεων Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Φροντιστήριο 10: Transactions - part 2 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Tutorial on 2-Phase Locking and Other

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Locking to ensure serializability

Locking to ensure serializability Locking to ensure serializability Concurrent access to database items is controlled by strategies based on locking, timestamping or certification A lock is an access privilege to a single database item

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

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

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

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

Αρχεία και Βάσεις Δεδομένων

Αρχεία και Βάσεις Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αρχεία και Βάσεις Δεδομένων Διάλεξη 16η: Διαχείριση Δοσοληψιών Μέρος 2ο - 2PL Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Locking to ensure serializability

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Finite Field Problems: Solutions

Finite Field Problems: Solutions Finite Field Problems: Solutions 1. Let f = x 2 +1 Z 11 [x] and let F = Z 11 [x]/(f), a field. Let Solution: F =11 2 = 121, so F = 121 1 = 120. The possible orders are the divisors of 120. Solution: The

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Άσκηση 3 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών ΗΥ 460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Διδάσκων: Δημήτρης

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

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

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

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

Transaction Processing (Διαχείριση Δοσοληψιών)

Transaction Processing (Διαχείριση Δοσοληψιών) Transaction Processing (Διαχείριση Δοσοληψιών) In modern applications databases are shared by more than one users at the same time who can query and update them It is not possible to provide each user

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

Αρχεία και Βάσεις Δεδομένων

Αρχεία και Βάσεις Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αρχεία και Βάσεις Δεδομένων Διάλεξη 15η: Διαχείριση Δοσοληψιών Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Transaction Processing (Διαχείριση Δοσοληψιών) In

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

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

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

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

EE512: Error Control Coding

EE512: Error Control Coding EE512: Error Control Coding Solution for Assignment on Finite Fields February 16, 2007 1. (a) Addition and Multiplication tables for GF (5) and GF (7) are shown in Tables 1 and 2. + 0 1 2 3 4 0 0 1 2 3

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

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

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

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

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

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

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

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

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

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

Every set of first-order formulas is equivalent to an independent set

Every set of first-order formulas is equivalent to an independent set Every set of first-order formulas is equivalent to an independent set May 6, 2008 Abstract A set of first-order formulas, whatever the cardinality of the set of symbols, is equivalent to an independent

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

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

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

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

Fractional Colorings and Zykov Products of graphs

Fractional Colorings and Zykov Products of graphs Fractional Colorings and Zykov Products of graphs Who? Nichole Schimanski When? July 27, 2011 Graphs A graph, G, consists of a vertex set, V (G), and an edge set, E(G). V (G) is any finite set E(G) is

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

Ordinal Arithmetic: Addition, Multiplication, Exponentiation and Limit

Ordinal Arithmetic: Addition, Multiplication, Exponentiation and Limit Ordinal Arithmetic: Addition, Multiplication, Exponentiation and Limit Ting Zhang Stanford May 11, 2001 Stanford, 5/11/2001 1 Outline Ordinal Classification Ordinal Addition Ordinal Multiplication Ordinal

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

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Συστήματα Διαχείρισης Βάσεων Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Φροντιστήριο 9: Transactions - part 1 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Tutorial on Undo, Redo and Undo/Redo

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

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

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

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

C.S. 430 Assignment 6, Sample Solutions

C.S. 430 Assignment 6, Sample Solutions C.S. 430 Assignment 6, Sample Solutions Paul Liu November 15, 2007 Note that these are sample solutions only; in many cases there were many acceptable answers. 1 Reynolds Problem 10.1 1.1 Normal-order

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

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

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

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

Lecture 2. Soundness and completeness of propositional logic

Lecture 2. Soundness and completeness of propositional logic Lecture 2 Soundness and completeness of propositional logic February 9, 2004 1 Overview Review of natural deduction. Soundness and completeness. Semantics of propositional formulas. Soundness proof. Completeness

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

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

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

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

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

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

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

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

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

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

ORDINAL ARITHMETIC JULIAN J. SCHLÖDER

ORDINAL ARITHMETIC JULIAN J. SCHLÖDER ORDINAL ARITHMETIC JULIAN J. SCHLÖDER Abstract. We define ordinal arithmetic and show laws of Left- Monotonicity, Associativity, Distributivity, some minor related properties and the Cantor Normal Form.

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

Section 8.3 Trigonometric Equations

Section 8.3 Trigonometric Equations 99 Section 8. Trigonometric Equations Objective 1: Solve Equations Involving One Trigonometric Function. In this section and the next, we will exple how to solving equations involving trigonometric functions.

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

CHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS

CHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS CHAPTER 5 SOLVING EQUATIONS BY ITERATIVE METHODS EXERCISE 104 Page 8 1. Find the positive root of the equation x + 3x 5 = 0, correct to 3 significant figures, using the method of bisection. Let f(x) =

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

2 Composition. Invertible Mappings

2 Composition. Invertible Mappings Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan Composition. Invertible Mappings In this section we discuss two procedures for creating new mappings from old ones, namely,

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

ST5224: Advanced Statistical Theory II

ST5224: Advanced Statistical Theory II ST5224: Advanced Statistical Theory II 2014/2015: Semester II Tutorial 7 1. Let X be a sample from a population P and consider testing hypotheses H 0 : P = P 0 versus H 1 : P = P 1, where P j is a known

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

2. THEORY OF EQUATIONS. PREVIOUS EAMCET Bits.

2. THEORY OF EQUATIONS. PREVIOUS EAMCET Bits. EAMCET-. THEORY OF EQUATIONS PREVIOUS EAMCET Bits. Each of the roots of the equation x 6x + 6x 5= are increased by k so that the new transformed equation does not contain term. Then k =... - 4. - Sol.

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

Bounding Nonsplitting Enumeration Degrees

Bounding Nonsplitting Enumeration Degrees Bounding Nonsplitting Enumeration Degrees Thomas F. Kent Andrea Sorbi Università degli Studi di Siena Italia July 18, 2007 Goal: Introduce a form of Σ 0 2-permitting for the enumeration degrees. Till now,

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

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή

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

Section 9.2 Polar Equations and Graphs

Section 9.2 Polar Equations and Graphs 180 Section 9. Polar Equations and Graphs In this section, we will be graphing polar equations on a polar grid. In the first few examples, we will write the polar equation in rectangular form to help identify

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

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

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

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

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

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

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

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

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

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

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

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

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

ANSWERSHEET (TOPIC = DIFFERENTIAL CALCULUS) COLLECTION #2. h 0 h h 0 h h 0 ( ) g k = g 0 + g 1 + g g 2009 =?

ANSWERSHEET (TOPIC = DIFFERENTIAL CALCULUS) COLLECTION #2. h 0 h h 0 h h 0 ( ) g k = g 0 + g 1 + g g 2009 =? Teko Classes IITJEE/AIEEE Maths by SUHAAG SIR, Bhopal, Ph (0755) 3 00 000 www.tekoclasses.com ANSWERSHEET (TOPIC DIFFERENTIAL CALCULUS) COLLECTION # Question Type A.Single Correct Type Q. (A) Sol least

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

Nowhere-zero flows Let be a digraph, Abelian group. A Γ-circulation in is a mapping : such that, where, and : tail in X, head in

Nowhere-zero flows Let be a digraph, Abelian group. A Γ-circulation in is a mapping : such that, where, and : tail in X, head in Nowhere-zero flows Let be a digraph, Abelian group. A Γ-circulation in is a mapping : such that, where, and : tail in X, head in : tail in X, head in A nowhere-zero Γ-flow is a Γ-circulation such that

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

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

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

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

derivation of the Laplacian from rectangular to spherical coordinates

derivation of the Laplacian from rectangular to spherical coordinates derivation of the Laplacian from rectangular to spherical coordinates swapnizzle 03-03- :5:43 We begin by recognizing the familiar conversion from rectangular to spherical coordinates (note that φ is used

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

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

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

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

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required) Phys460.nb 81 ψ n (t) is still the (same) eigenstate of H But for tdependent H. The answer is NO. 5.5.5. Solution for the tdependent Schrodinger s equation If we assume that at time t 0, the electron starts

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

Statistical Inference I Locally most powerful tests

Statistical Inference I Locally most powerful tests Statistical Inference I Locally most powerful tests Shirsendu Mukherjee Department of Statistics, Asutosh College, Kolkata, India. shirsendu st@yahoo.co.in So far we have treated the testing of one-sided

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

The Simply Typed Lambda Calculus

The Simply Typed Lambda Calculus Type Inference Instead of writing type annotations, can we use an algorithm to infer what the type annotations should be? That depends on the type system. For simple type systems the answer is yes, and

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

b. Use the parametrization from (a) to compute the area of S a as S a ds. Be sure to substitute for ds!

b. Use the parametrization from (a) to compute the area of S a as S a ds. Be sure to substitute for ds! MTH U341 urface Integrals, tokes theorem, the divergence theorem To be turned in Wed., Dec. 1. 1. Let be the sphere of radius a, x 2 + y 2 + z 2 a 2. a. Use spherical coordinates (with ρ a) to parametrize.

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

Example Sheet 3 Solutions

Example Sheet 3 Solutions Example Sheet 3 Solutions. i Regular Sturm-Liouville. ii Singular Sturm-Liouville mixed boundary conditions. iii Not Sturm-Liouville ODE is not in Sturm-Liouville form. iv Regular Sturm-Liouville note

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

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

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

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

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

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

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

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade Για να ελέγξετε το λογισμικό που έχει τώρα η συσκευή κάντε κλικ Menu > Options > Device > About Device Versions. Στο πιο κάτω παράδειγμα η συσκευή έχει έκδοση λογισμικού 6.0.0.546 με πλατφόρμα 6.6.0.207.

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

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

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

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

Τεχνικές Ανάνηψης Περιεχόµενα

Τεχνικές Ανάνηψης Περιεχόµενα Τεχνικές Ανάνηψης Περιεχόµενα Εισαγωγή & υποθέσεις εργασίας Αλγόριθµος Write-Ahead Log (WAL) Ανάνηψη τη παρουσία WAL 2 Επίπεδα αποθήκευσης Κυρίως µνήµη RAM, cache Ταχύτητα στην προσπέλαση Τα δεδοµένα χάνονται

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

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

Προχωρημένα Θέματα Βάσεων Δεδομένων Προχωρημένα Θέματα Βάσεων Δεδομένων Τεχνικές Ανάνηψης Διδάσκων: Νεκτάριος Κοζύρης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Ε.Μ.Π. Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

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

Matrices and Determinants

Matrices and Determinants Matrices and Determinants SUBJECTIVE PROBLEMS: Q 1. For what value of k do the following system of equations possess a non-trivial (i.e., not all zero) solution over the set of rationals Q? x + ky + 3z

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

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

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

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

Διάλεξη 8: Πρόβλημα Αμοιβαίου Αποκλεισμού. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 8: Πρόβλημα Αμοιβαίου Αποκλεισμού. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 8: Πρόβλημα Αμοιβαίου Αποκλεισμού ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Μοντέλο Κοινόχρηστης Μνήμης Αλγόριθμοι Αμοιβαίου Αποκλεισμού με Ισχυρούς Καταχωρητές ΕΠΛ432: Κατανεµηµένοι

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

Inverse trigonometric functions & General Solution of Trigonometric Equations. ------------------ ----------------------------- -----------------

Inverse trigonometric functions & General Solution of Trigonometric Equations. ------------------ ----------------------------- ----------------- Inverse trigonometric functions & General Solution of Trigonometric Equations. 1. Sin ( ) = a) b) c) d) Ans b. Solution : Method 1. Ans a: 17 > 1 a) is rejected. w.k.t Sin ( sin ) = d is rejected. If sin

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

Reminders: linear functions

Reminders: linear functions Reminders: linear functions Let U and V be vector spaces over the same field F. Definition A function f : U V is linear if for every u 1, u 2 U, f (u 1 + u 2 ) = f (u 1 ) + f (u 2 ), and for every u U

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

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch: HOMEWORK 4 Problem a For the fast loading case, we want to derive the relationship between P zz and λ z. We know that the nominal stress is expressed as: P zz = ψ λ z where λ z = λ λ z. Therefore, applying

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

The challenges of non-stable predicates

The challenges of non-stable predicates The challenges of non-stable predicates Consider a non-stable predicate Φ encoding, say, a safety property. We want to determine whether Φ holds for our program. The challenges of non-stable predicates

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

6.1. Dirac Equation. Hamiltonian. Dirac Eq.

6.1. Dirac Equation. Hamiltonian. Dirac Eq. 6.1. Dirac Equation Ref: M.Kaku, Quantum Field Theory, Oxford Univ Press (1993) η μν = η μν = diag(1, -1, -1, -1) p 0 = p 0 p = p i = -p i p μ p μ = p 0 p 0 + p i p i = E c 2 - p 2 = (m c) 2 H = c p 2

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

2. Let H 1 and H 2 be Hilbert spaces and let T : H 1 H 2 be a bounded linear operator. Prove that [T (H 1 )] = N (T ). (6p)

2. Let H 1 and H 2 be Hilbert spaces and let T : H 1 H 2 be a bounded linear operator. Prove that [T (H 1 )] = N (T ). (6p) Uppsala Universitet Matematiska Institutionen Andreas Strömbergsson Prov i matematik Funktionalanalys Kurs: F3B, F4Sy, NVP 2005-03-08 Skrivtid: 9 14 Tillåtna hjälpmedel: Manuella skrivdon, Kreyszigs bok

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

DESIGN OF MACHINERY SOLUTION MANUAL h in h 4 0.

DESIGN OF MACHINERY SOLUTION MANUAL h in h 4 0. DESIGN OF MACHINERY SOLUTION MANUAL -7-1! PROBLEM -7 Statement: Design a double-dwell cam to move a follower from to 25 6, dwell for 12, fall 25 and dwell for the remader The total cycle must take 4 sec

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

A Note on Intuitionistic Fuzzy. Equivalence Relation

A Note on Intuitionistic Fuzzy. Equivalence Relation International Mathematical Forum, 5, 2010, no. 67, 3301-3307 A Note on Intuitionistic Fuzzy Equivalence Relation D. K. Basnet Dept. of Mathematics, Assam University Silchar-788011, Assam, India dkbasnet@rediffmail.com

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

Other Test Constructions: Likelihood Ratio & Bayes Tests

Other Test Constructions: Likelihood Ratio & Bayes Tests Other Test Constructions: Likelihood Ratio & Bayes Tests Side-Note: So far we have seen a few approaches for creating tests such as Neyman-Pearson Lemma ( most powerful tests of H 0 : θ = θ 0 vs H 1 :

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

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

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

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