Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

1 Βάσεις Δεδομένων I Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ Σχεσιακή Άλγεβρα T Manavis.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "1 Βάσεις Δεδομένων I Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ Σχεσιακή Άλγεβρα T Manavis."— Μεταγράφημα παρουσίασης:

1 1 Βάσεις Δεδομένων I Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ Σχεσιακή Άλγεβρα T Manavis

2 2 Συνενώσεις - Joins

3 Προγράμματα που απαντούν σε ερωτήσεις για τον παρόν στιγμιότυπο της βάσης δεδομένων (quering) Το σχεσιακό μοντέλο έχει ένα σύνολο από πράξεις -> Σχεσιακή Άλγεβρα Τι είναι μία άλγεβρα ? Ένα κλειστό σύνολο Α ως προς ένα σύνολο πράξεων, με άλλα λόγια το αποτέλεσμα της πράξης είναι στοιχείο του Α. Πράξεις επί πινάκων που δίνουν πίνακες. Ερωτήματα και Άλγεβρα

4 Το σχεσιακό μοντέλο υποστηρίζει απλές και ισχυρές γλώσσες ερωτήσεων (σε αντίθεση με το μοντέλο Ο/Σ) Γλώσσες Ερωτήσεων (Query Languages): Επιτρέπουν τον χειρισμό και την εύρεση πληροφορίας από μια βάση δεδομένων Σχεσιακή Άλγεβρα

5 Γλώσσες Ερωτήσεων != Γλώσσες Προγραμματισμού! Δεν αναμένεται να είναι “Turing complete”. Δεν αναμένεται να χρησιμοποιηθούν για ”δύσκολους υπολογισμούς”. Υποστηρίζουν εύκολη και αποδοτική προσπέλαση σε μεγάλα σύνολα δεδομένων Σχεσιακή Άλγεβρα

6 Σχεσιακή Άλγεβρα: Πιο λειτουργική “operational” (database byte-code!) Σχεσιακός Λογισμός (calculus): Επιτρέπει στους χρήστες να περιγράψουν τι θέλουν αλλά όχι πώς να το υπολογίσουν (δηλωτική) Δύο μαθηματικές γλώσσες ερωτήσεων αποτελούν το θεωρητικό υπόβαθρο για τις πραγματικές γλώσσες ερωτήσεων (π.χ. SQL) και για την υλοποίησή τους Σχεσιακή Άλγεβρα

7 Σχεσιακή άλγεβρα: ένας απλός τρόπος δημιουργίας νέων σχέσεων από παλιές. Ένα σύνολο από πράξεις που όταν εφαρμοστούν σε σχέσεις μας δίνουν νέες σχέσεις SQL Σχεσιακή ΆλγεβραΠλάνο Εκτέλεσης μετάφραση optimization Σχεσιακή Άλγεβρα

8 Οι πράξεις τις σχεσιακής άλγεβρας: 1. Πράξεις που αφαιρούν κομμάτια από μια σχέση είτε επιλέγοντας γραμμές είτε προβάλλοντας στήλες 2. Οι συνηθισμένες πράξεις συνόλου - ένωση, τομή, διαφορά 3. Πράξεις που συνδυάζουν πλειάδες από δύο σχέσεις 4. Μετονομασία γνωρισμάτων Σχεσιακή Άλγεβρα

9 Η πράξη της επιλογής (selection) σ ( ) Επιλογή ενός υποσυνόλου των πλειάδων (γραμμών) μιας σχέσης (πίνακα) που ικανοποιεί μια συνθήκη επιλογής θ Η Πράξη της Επιλογής

10 σ θ ( ) Επιλογή ενός υποσυνόλου των πλειάδων μιας σχέσης που ικανοποιεί μια συνθήκη επιλογής θ =, >, <, , ,  συνδυασμένες με AND, OR, NOT ή προτάσεις της μορφής συνθήκη θ Η Πράξη της Επιλογής

11 Παραδείγματα τίτλος χρόνοςδιάρκειαείδος Star Wars έγχρωμη Mighty Ducks έγχρωμη Wayne’s World έγχρωμη 1. Ταινίες με διάρκεια μεγαλύτερη των 100 λεπτών) σ διάρκεια > 100 (Ταινία) τίτλος χρόνοςδιάρκειαείδος Star Wars έγχρωμη Mighty Ducks έγχρωμη Η Πράξη της Επιλογής

12 τίτλος χρόνοςδιάρκειαείδος Star Wars έγχρωμη Mighty Ducks έγχρωμη Wayne’s World έγχρωμη 2. Ταινίες με διάρκεια μεγαλύτερη των 100 λεπτών που γυρίστηκαν μετά το 1995 σ διάρκεια > 100 AND χρόνος > 1995 (Ταινία) τίτλος χρόνοςδιάρκειαείδος Star Wars έγχρωμη Η Πράξη της Επιλογής

13 Η συνθήκη επιλογής εφαρμόζεται ανεξάρτητα σε κάθε πλειάδα (γραμμή) Ο τελεστής είναι μοναδιαίος (unary) Ο βαθμός της σχέσης που προκύπτει είναι ίδιος με τον βαθμό της αρχικής R Πλήθος γραμμών μικρότερο ή ίσο με την αρχική σχέση: το ποσοστό που επιλέγονται ονομάζεται επιλεκτικότητα (selectivity) Η Πράξη της Επιλογής

14 Η πράξη της προβολής (projectιοn) π ( ) Επιλογή συγκεκριμένων στηλών (γνωρισμάτων) Η Πράξη της Προβολής

15 Παραδείγματα τίτλος χρόνοςδιάρκειαείδος Star Wars έγχρωμη Mighty Ducks έγχρωμη Wayne’s World έγχρωμη Η Πράξη της Προβολής

16 1. Τίτλος, χρόνος, διάρκεια των ταινιών π τίτλος, χρόνος, διάρκεια (Ταινία) τίτλος χρόνοςδιάρκεια Star Wars Mighty Ducks Wayne’s World Η Πράξη της Προβολής

17 2. Είδος ταινιών π είδος (Ταινία) είδος έγχρωμη Προσοχή: απαλοιφή διπλότιμων (duplicate elimination) Η Πράξη της Προβολής

18 Τα γνωρίσματα έχουν την ίδια διάταξη Ο τελεστής είναι μοναδιαίος Ο βαθμός της σχέσης είναι ίσος με τον αριθμό γνωρισμάτων στη Πλήθος πλειάδων μικρότερο ή ίσο (πότε;) με την αρχική σχέση Η Πράξη της Προβολής

19 διάρκεια Παράδειγμα (ερώτημα με πράξεις σε σειρά - σημαντικό) Διάρκειες μεγαλύτερες των 100 λεπτών π διάρκεια (σ διάρκεια > 100 (Ταινία)) Σχεσιακή Άλγεβρα - Συνθετικότητα

20 Πράξεις συνόλου Ένωση (  ) - union Τομή (  ) - intersection Διαφορά (-) - difference Συμβατότητα ως προς την ένωση Δύo σχέσεις R(A 1, A 2, …, A n ) και S(B 1, B 2, …, B n ) είναι συμβατές ως προς την ένωση όταν 1. Έχουν τον ίδιο βαθμό n, και 2.  i, dom(A i ) = dom(B i )

21 Ανάθεση (Assignment) R  όνομα στην ενδιάμεση σχέση (χρησιμοποιείται και το ελληνικό γράμμα ‘ρ’ ΜΕΓΑΛΗΣ_ΔΙΑΡΚΕΙΑΣ  σ διάρκεια > 100 (Ταινία) Παράδειγμα Ανάθεση

22 R(λίστα με νέα ονόματα)  μετονομασία γνωρισμάτων ΜΕΓΑΛΗΣ_ΔΙΑΡΚΕΙΑΣ (όνομα ταινίας, έτος παραγωγής, διάρκεια, είδος)  σ διάρκεια > 100 (Ταινία) Παράδειγμα όνομα ταινίας έτος παραγωγής διάρκειαείδος Star Wars έγχρωμη Mighty Ducks έγχρωμη Μετονομασία

23 Καρτεσιανό Γινόμενο (cartesian product) R(A 1, A 2, …, A n ) x S(B 1, B 2, …, B m ) (ή χιαστί γινόμενο (cross product) ή χιαστί συζεύξη (cross join) αποτέλεσμα η σχέση Q: Q(A 1, A 2, …, A n, B 1, B 2, …, B m ) n + m γνωρίσματα n R * n S πλειάδες τι γίνεται αν κάποια γνωρίσματα έχουν ίδια ονόματα ? Καρτεσιανό Γινόμενο

24 Α Β B C D RS R x S A R.B S.B C D Καρτεσιανό Γινόμενο

25 Παράδειγμα – Υπάλληλος(ΑΦΜ, κωδικός, όνομα, διευθυνση, μισθος) Project (κωδικός_έργου, περιγραφή, τοποθεσία) Συμμετέχει(ΑΦΜ, κωδικός_έργου, ώρες) Παράδειγμα

26 Για κάθε υπάλληλο δείξε το όνομα του και την περιγραφή κάθε έργου στο οποίο συμμετέχει. Παράδειγμα π ονομα, περιγραφη (σ κωδικός_έργου = Project.κωδικός_έργου (σ Υπάλληλος.ΑΦΜ = Συμμετέχει.ΑΦΜ (Υπάλληλος x Συμμετέχει) x Project)) Άλλη έκφραση που να περιγράφει το ίδιο ερώτημα? Γιατί? Καρτεσιανό Γινόμενο

27 Θ-Σύζευξη (θ-join) συνδυασμός σχετιζόμενων πλειάδων R θ S (  σ θ (R x S) ) =, >, <, , ,  Συνθήκη σύζευξης θ A i B j όπου A i γνώρισμα της R, B j γνώρισμα της S, και dom(A i ) = dom(B j ) Προτάσεις της μορφής συνδυασμένες με AND Σύζευξη (Join)

28 το αποτέλεσμα είναι οι συνδυασμοί πλειάδων που ικανοποιούν τη συνθήκη η συνθήκη αποτιμάται για κάθε συνδυασμό αποτέλεσμα σχέση Q με n + m γνωρίσματα πλειάδες με τιμή null σε γνώρισμα συνένωσης δεν εμφανίζονται στο αποτέλεσμα γιατί μια καινούργια πράξη? πιο αποτελεσματικό implementation + σύνηθες Σύζευξη (Join)

29 B C D UV Α Β C U A

30 30 Η σύζευξη των 2 ακόλουθων πινάκων EMP και DEPART δίνει...

31 31

32 32 Επίσης:

33 Χρήσιμη η δυνατότητα της συνάθροισης: συνδυασμός των γραμμών μιας σχέσης για τον υπολογισμό μιας συναθροιστικής τιμής (π.χ. min, max, sum, count, avg) Παραδείγματα: πόσοι ηθοποιοί παίζουν σε μια ταινία, ποιος ηθοποιός πήρε το μεγαλύτερο μισθό, κ.λ.π. Παραδείγματα: πόσοι δουλεύουν σε κάποιο έργο, ποιός έχει το μεγαλύτερο μισθό, κ.λ.π. Η βάση για ερωτήματα στήριξης αποφάσεων (decision support) Συναθροιστικές Συναρτήσεις (Aggregate functions)

34 συναρτήσεις που παίρνουν ως παράμετρο μια συλλογή (όχι σύνολο) από τιμές αποτέλεσμα μια σχέση (πίνακας) και όχι μια τιμή π ( ) συνήθεις συναρτήσεις: SUM, AVERAGE, MAX, MIN, COUNT ζεύγη - π.χ. max(μισθός) Συναθροιστικές Συναρτήσεις

35 Παράδειγμα: μέση διάρκεια ταινιών AVERAGE_διάρκεια 91 Παράδειγμα: παλιότερη και πιο πρόσφατη έγχρωμη ταινία π AVERAGE(διάρκεια) (Ταινία) π ΜΙΝ (έτος), ΜΑΧ (έτος) ( σ είδος = έγχρωμη (Ταινία)) ΜΙΝ_έτος MAX_έτος Συναθροιστικές Συναρτήσεις

36 F ( ) Ομαδοποίηση (Grouping) Παράδειγμα: πόσοι ηθοποιοί ανά ταινία πόσα έργα ανά υπάλληλο Συναθροιστικές Συναρτήσεις

37 Παράδειγμα: αριθμός ηθοποιών ανά ταινία Τίτλος, έτος F COUNT Όνομα-Ηθοποιού (Παίζει) Τίτλος Έτος COUNT_Όνομα Ηθοποιού Sixth Sense Run Lola Run Eyes Wide Shut Ποιο θα ήταν το αποτέλεσμα αν δεν υπήρχαν τα γνωρίσματα ομαδοποίησης; Συναθροιστικές Συναρτήσεις

38 Εξωτερική Σύζευξη Όταν θέλουμε να κρατήσουμε στο αποτέλεσμα όλες τις πλειάδες - και αυτές που δεν ταιριάζουν) είτε της σχέσης στα αριστερά (αριστερή – left - εξωτερική συνένωση) είτε της σχέσης στα δεξιά (δεξιά – right - εξωτερική συνένωση) R S Α C Α B Α C B Α C B null Α C B null 9 R * S Εξωτερική Σύζευξη (Outer Join)

39 Πανεπιστήμιο Ιωαννίνων – σημειώσεις του μαθήματος Βάσεις Δεδομένων Πανεπιστήμιο Πατρών, τμήμα Μηχανικών Η/Υ και Πληροφορικής – σημειώσεις μαθήματος Βάσεις Δεδομένων Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης – σημειώσεις μαθήματος Βάσεις Δεδομένων ΤΕΙ Σερρών – σημειώσεις μαθήματος Βάσεις Δεδομένων Πηγές


Κατέβασμα ppt "1 Βάσεις Δεδομένων I Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ Σχεσιακή Άλγεβρα T Manavis."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google