1 Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Παραγωγή πλάνων στην βελτιστοποίηση ερωτήσεων Πάνος Βασιλειάδης Φλεβάρης.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Προχωρημένα Θέματα Διαχείρισης Ταυτοχρονισμού Πάνος Βασιλειάδης Οκτώβρης.
Advertisements

Συνάφεια Κρυφής Μνήμης σε Επεκτάσιμα Μηχανήματα. Συστήματα με Κοινή ή Κατανεμημένη Μνήμη  Σύστημα μοιραζόμενης μνήμης  Σύστημα κατανεμημένης μνήμης.
Ανακτηση Πληροφοριασ σε νεφη Υπολογιστων
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Αλγόριθμοι Ταξινόμησης
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Επεξεργασία ερωτήσεων Πάνος Βασιλειάδης Ιανουάριος 2008
Ο Αλγόριθμος FP-Growth. Αλγόριθμος FP-Growth Ο αλγόριθμος χρησιμοποιεί μια συμπιεσμένη αναπαράσταση της βάσης των συναλλαγών με τη μορφή ενός FP-δέντρου.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Αλγόριθμοι και Πολυπλοκότητα
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Query Optimization.
Entity-Relationship Παραδείγματα Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Φροντιστήριο 1 Δαμιανός Χατζηαντωνίου.
Εργασία Η υλοποίηση του αλγορίθμου συγχώνευσης θα πρέπει να χρησιμοποιεί την ιδέα των ροών (streams). Θα πρέπει να υπάρχουν δύο διαφορετικά είδη.
Στοιχεία Θεωρίας Συνόλων
Κοντινότεροι Κοινοί Πρόγονοι α βγ θ δεζ η π ν ι κλμ ρσ τ κκπ(λ,ι)=α, κκπ(τ,σ)=ν, κκπ(λ,π)=η κκπ(π,σ)=γ, κκπ(ξ,ο)=κ ξο κκπ(ι,ξ)=β, κκπ(τ,θ)=θ, κκπ(ο,μ)=α.
Δυναμικός Προγραμματισμός
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Σχεδίαση αλγορίθμων (2ο μέρος)
1 Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Επεξεργασία και βελτιστοποίηση ερωτήσεων Πάνος Βασιλειάδης Σεπτέμβρης.
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Επεξεργασία και βελτιστοποίηση ερωτήσεων Πάνος Βασιλειάδης Σεπτέμβρης 2005.
ORACLE PL/SQL Records. Εγγραφές (Records) DECLARE TYPE t_Rec1Type IS RECORD ( Field1 NUMBER, Field2 VARCHAR2(5)); TYPE t_Rec2Type IS RECORD ( Field1 NUMBER,
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι12-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος του Prim και ο αλγόριθμος του Kruskal.
Επεξεργασία και βελτιστοποίηση σχεσιακών ερωτημάτων1 Βάσεις Δεδομένων II Τμήμα Διδακτικής της Τεχνολογίας και Ψηφιακών Συστημάτων Δαμιανός Χατζηαντωνίου.
Alpha-Beta Pruning for Games with Simultaneous Moves Abdallah Saffidine, Hilmar Finnsson, Michael Buro Παρουσίαση: Βάλβης Δημήτριος Εργασία στο μάθημα.
1 Συστήματα Βάσεων Δεδομένων Διαδικαστικά του μαθήματος Πάνος Βασιλειάδης Σεπτέμβριος 2008
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Διαχείριση Συναλλαγών Πάνος Βασιλειάδης Μάρτιος 2014
Το Scratch και ο σχεδιασμός γεωμετρικών σχημάτων
Ελάχιστο Συνδετικό Δέντρο
1 Βάσεις Δεδομένων ΙI Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ SQL (3 από 3) T Manavis.
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Κατακερματισμός – Hashing (1 ο Μέρος)
Ανασκόπηση Σχεδιασμού στο CAN Διονύσης Αθανασόπουλος Βασιλική Δεβελέγκα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Οργάνωση Αρχείων.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Επεξεργασία Ερωτήσεων.
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Τεχνικές Ανάνηψης Πάνος Βασιλειάδης Ιανουάριος 2008
ΗΥ150 – ΠρογραμματισμόςΞενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων I (Θ) Ενότητα 9: Yλοποίηση σχεσιακών βάσεων δεδομένων - Σύνθετες εντολές SQL Χ. Σκουρλάς Τμήμα Μηχανικών Πληροφορικής ΤΕ Ανοικτά Ακαδημαϊκά.
Βάσεις Δεδομένων I Ενότητα 9: Yλοποίηση σχεσιακών βάσεων δεδομένων - Σύνθετες εντολές SQL Χ. Σκουρλάς Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας Το περιεχόμενο.
Δομές δεδομένων και Αλγόριθμοι Κεφάλαιο 3. Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Δεδομένα Δεδομένα (data) Δεδομένα (data) –αφαιρετική αναπαράσταση.
Ηλεκτρική Οικονομία Σταμάτης Νικολόπουλος ΑΜ: 868 ΑΣΠΑΙΤΕ, 2015.
Ευρετήρια Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Δυναμικός Κατακερματισμός
Περιγραφή Ενότητας Σκοπός του μαθήματος αυτού και κεντρικός σκοπός του μαθήματος των Βάσεων Δεδομένων Ι είναι η παρουσίαση των απαραίτητων εννοιών ώστε.
Βάσεις Δεδομένων Ενότητα 3: Σχεσιακή Άλγεβρα Βασίλης Βουτσινάς
Λογιστική για Μικρομεσαίες Επιχειρήσεις Ανάλυση Νεκρού Σημείου
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Περιγραφή Ενότητας Σκοπός του μαθήματος είναι η παρουσίαση των απαραίτητων εννοιών αλλά και των δηλώσεων SQL ώστε οι φοιτητές να κατανοήσουν σε κάποιο.
Βάσεις Δεδομένων και web-based Εφαρμογές
Ενότητα 5: Σχεδίαση βάσεων δεδομένων - Κανονικοποίηση Χ. Σκουρλάς
Η τακτοποίηση των κόμβων μίας δομής με μία ιδιαίτερη σειρά είναι μία πολύ σημαντική λειτουργία που ονομάζεται ταξινόμηση (sorting) ή διάταξη (ordering).
Σύνδεση Αντιστάσεων.
ΔΙΑΔΙΚΑΣΙΑ ΕΠΙΛΟΓΗΣ ΘΕΜΑΤΟΣ ΑΤΟΜΙΚΟΥ ΕΡΓΟΥ
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων
Ερωτήματα Επιλογής σε ACCESS
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων
Ερωτήματα Επιλογής σε ACCESS
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Ενότητα 5: Σχεδίαση βάσεων δεδομένων - Κανονικοποίηση Χ. Σκουρλάς
Εισαγωγή στην Επεξεργασία Ερωτήσεων
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

1 Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Παραγωγή πλάνων στην βελτιστοποίηση ερωτήσεων Πάνος Βασιλειάδης Φλεβάρης

2 Σχήμα αναφοράς Κάθε υπάλληλος (emp) εργάζεται σε ένα τμήμα (dept) Κάθε τμήμα έχει ένα λογαριασμό (acnt) ο οποίος βρίσκεται σε μια τράπεζα (bank) Έστω η ερώτηση π NAME,BUDGET,BALANCE (E  D  A) emp(name, age, sal, dno) dept(dno, dname, floor, budget, mgr, ano) acnt(ano, type, balance, bno) bank(bno, bname, address)

3 Υποθέσεις - Access paths EMP tuples, 100 σελίδες Όχι ταξινομημένη B+ tree στο E.NAME DEPT tuples, 10 σελίδες Ταξινομημένη βάσει του D.DNO B+ tree στο D.DNO ACNT tuples, 10 σελίδες Όχι ταξινομημένη B+ tree στο A.ANO E. FTS E.INDX.NAME D.FTS D.INDX.DNO A.FTS A.INDX.ANO FTS: Full Table Scan Access paths

4 Υποθέσεις - Παρατηρήσεις Έστω ότι έχω αρκετή μνήμη για να δίνω √|R| buffers στη μνήμη σε μια σχέση R 10 buffers για EMP, 3 buffers για DEPT, ACNT Επιλεκτικότητα = 1 για όλα τα joins (έστω ότι έχω FK στα DNO, ANO) |Ε  D| = 100 pages |D  A| = 10 pages Ε  D  A = 100 pages (κάνοντας τον χονδροειδή υπολογισμό ότι μία σελίδα εξακολουθεί να έχει 1000 εγγραφές)

5 Ενδιαφέρουσες Ταξινομήσεις Ενδιαφέρουσες ταξινομήσεις (interesting orders) DNO (E.DNO, D.DNO) ANO (D.ANO, A.ANO) No order Θυμηθείτε ότι οι ενδιαφέρουσες ταξινομήσεις είναι ομάδες πεδίων και περιλαμβάνουν τα πεδία των συνδέσεων, τα πεδία των GROUP BY, ORDER BY clauses, καθώς και το no-order.

6 Δυναμικός προγραμματισμός για επεξεργασία ερωτήσεων R1R2  R3  Ri  Βήμα 2 Βήμα 3... Βήμα i Εν παραλλήλω, φτιάχνω πολλά δέντρα. Σιγά σιγά όμως, μειώνω τον αριθμό τους...

7 Βήμα 1 Έστω τα παρακάτω κόστη ανάκτησης των σχέσεων EMP, DEPT, ACNT: E. FTS100 pages E.INDX.NAME110 pages D.FTS10 pages D.INDX.DNO11 pages A.FTS10 pages A.INDX.ANO11 pages

8 Βήμα 1 Έστω τα παρακάτω κόστη ανάκτησης των σχέσεων EMP, DEPT, ACNT: E. FTS100 pages E.INDX.NAME110 pages D.FTS10 pages D.INDX.DNO11 pages A.FTS10 pagesNo-order A.INDX.ANO11 pagesANO No-order DNO

9 Βήμα 1 Έστω τα παρακάτω κόστη ανάκτησης των σχέσεων EMP, DEPT, ACNT: E. FTS100 pages E.INDX.NAME110 pages D.FTS10 pages D.INDX.DNO11 pages A.FTS10 pagesNo-order A.INDX.ANO11 pagesANO No-order DNO

10 Βήμα 2 Υπολογισμός join ανά δύο σχέσεις, για όλα τα πιθανά access paths και ομαδοποίηση ανά interesting order για να διαλέξουμε το φθηνότερο Ε  D, D  E D  A, A  D Προσοχή: όχι καρτεσιανά γινόμενα (Ε × Α) Έστω ότι έχω μόνο NLJ, MSJ ως τρόπους εκτέλεσης των joins

11

12 Στις ισοπαλίες διαλέγω τυχαία κάποιο Για κάθε ζεύγος σχέσεων, για κάθε ενδιαφέρουσα σειρά, διαλέγω το πιο φθηνό πλάνο

13 Νικητές του βήματος 2 Estimated Cost Result size (pages) Output order To be joined with E ⋈ NLJ D No-orderA.FTS, A.INX E ⋈ MSJ D DNO Estimated Cost Result size (pages) Output order To be joined with D ⋈ NLJ A.INX DNO E D ⋈ MSJ A.INX 3110ANO A.FTS ⋈ NLJ D No order

14 Βήμα 3 Όσα δεντράκια επιβίωσαν από τη φάση 2, θα συνδεθούν με ένα δεντράκι ύψους 1 (ήτοι, με την επόμενη –και τελευταία- σχέση) Όλα τα αποτελέσματα (οφείλουν να) έχουν το ίδιο μέγεθος αποτελέσματος (ποιο?) Προσοχή στα μη αριστεροβαθή δέντρα!

15

16

17 Οπότε... Νικά η λύση (E ⋈ NLJ D) ⋈ NLJ A.FTS με συνολικό κόστος 300 σελίδες. Αν θα είχα ζητήσει το αποτέλεσμα ORDER BY DNO, ή ORDER BY ANO, τι θα έκανα? Min (total winner sorted by the requested order, best solution already having the requested order)