DREMEL: Interactive Analysis of Web-Scale Datasets

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΕΡΩΤΗΜΑΤΑ ΕΠΙΛΟΓΗΣ ΜΑΘΗΜΑ 6. SELECTSELECT SELECT * FROM όνομα_πίνακα ; • Με τη εντολή SELECT ανασύρουμε δεδομένα από την βάση δεδομένων. • Το αστεράκι.
Advertisements

Indexing.
Διάγραμμα Παρουσίασης
ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
ΕΣΔ 232: Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας © 2013 Nicolas Tsapatsoulis Εισαγωγή στην SQL ΕΣΔ232 – Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Πρώτο Αρχιτεκτονική.
Συνάφεια Κρυφής Μνήμης σε Επεκτάσιμα Μηχανήματα. Συστήματα με Κοινή ή Κατανεμημένη Μνήμη  Σύστημα μοιραζόμενης μνήμης  Σύστημα κατανεμημένης μνήμης.
Βάσεις Δεδομένων.
Δημιουργία και διαχείριση βάσης δεδομένων
Ανακτηση Πληροφοριασ σε νεφη Υπολογιστων
Βάσεις Δεδομένων 1 T.Manavis– N.Kyritsis.
Βάσεις Δεδομένων (ΚΒΔ)
Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων Θέματα Βάσεων Δεδομένων Αποθήκευση XML δεδομένων σε Σχεσιακή Βάση Δεδομένων.
Εργασία Η υλοποίηση του αλγορίθμου συγχώνευσης θα πρέπει να χρησιμοποιεί την ιδέα των ροών (streams). Θα πρέπει να υπάρχουν δύο διαφορετικά είδη.
ΕΡΩΤΗΜΑΤΑ ΕΠΙΛΟΓΗΣ ΜΕ ΣΥΖΕΥΞΗ ΠΙΝΑΚΩΝ
ORACLE PL/SQL Cursors Μέρος 1.
Ερωτήματα (Queries) Δημιουργία ενός ερωτήματος με το Simple Query Wizard 1.Κλικ στο Queries 2.Κλικ στο New 3.Επιλέγουμε το Simple Query Wizard 4.Κλικ στο.
ΚΕΦΑΛΑΙΟ 3 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ Γ.Σ.Π.. ΟΡΙΣΜΟΙ Ένα σύστημα για τακτικό και συνηθισμένο τρόπο επεξεργασίας δεδομένων και για απάντηση προκαθορισμένων και.
ΕΣΔ 232: Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας © 2013 Nicolas Tsapatsoulis SQL: Ερωτήματα, προγραμματισμός και εναύσματα ΕΣΔ232 – Οργάνωση Δεδομένων.
Ιόνιο Πανεπιστήμιο ΠΜΣ Επιστήμη της Πληροφορίας Διατύπωση Ερωτημάτων σε XML τεκμήρια με τη γλώσσα XQuery Εργασία για το μάθημα Ηλεκτρονική Δημοσίευση Υπεύθυνος.
Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος
Αλγόριθμοι συνέχεια 2.2.4, 2.2.5,
PHP/MYSQL ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΠΟΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ ΤΥΡΟΛΟΓΟΥ ΓΛΥΚΕΡΙΑ ΑΜ 875 ΡΙΖΟΥ ΔΕΣΠΟΙΝΑ ΑΜ 816.
Ημέρα 1η.
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - Ι Λόγοι που συνέτειναν στη υιοθέτηση των Συστημάτων Διαχείρισης Βάσεων Δεδομένων (Database Management Systems) Περιορίζονται τα πλεονασματικά.
3 / 4 / 2002 μοντέλα ανάλυσης ενεργειών χρήστη
Βάσεις Δεδομένων Εργαστήριο ΙΙI Τμήμα Πληροφορικής ΑΠΘ
Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ
1 Βάσεις Δεδομένων ΙI Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ SQL (3 από 3) T Manavis.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων (data definition)  Χειρισμός Δεδομένων (data manipulation)
Network Inference Μπαλάφα Κασιανή - Αδριανή Πλασταρά Κατερίνα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακός Λογισμός.
Σημασιολογική Ολοκλήρωση Ολοκλήρωση Πληροφορίας Το πρόβλημα της ολοκλήρωσης πληροφορίας (information integration) προκύπτει από την ύπαρξη ετερογενών.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language.
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Πρώτο Αρχιτεκτονική.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Βάσεις Δεδομένων Αρχιτεκτονική.
ΠΑΡΑΔΕΙΓΜΑ: ΤΑ ΕΠΙΠΕΔΑ ΥΛΙΚΟΥ – ΛΟΓΙΣΜΙΚΟΥ ΣΕ ΕΝΑΝ ΥΠΟΛΟΓΙΣΤΗ.
Προγραμματιστικά Εργαλεία για το Διαδίκτυο Κατασκευή Ιστοσελίδων 3 ο Κεφάλαιο Βελώνης Γεώργιος – Καθηγητής Πληροφορικής ΠΕ20.
Γλώσσες Προγραμματισμού Μεταγλωττιστές Πίνακας Συμβόλων Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου.
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.
Βάσεις Δεδομένων Ι 4η διάλεξη
ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ανδρέου Βασίλης.
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας
Αρχιτεκτονική Συστημάτων
Θερινό Σχολείο, 14 – 20 Ιουλίου 2014
Βάσεις Δεδομένων Ι Επανάληψη
Εισαγωγή στις βάσεις δεδομένων ISBN
Java DataBase Connectivity
Βάσεις Δεδομένων Ενότητα 3: Σχεσιακή Άλγεβρα Βασίλης Βουτσινάς
Ενότητα 5 : Δομές Δεδομένων και αφηρημένοι
Αρχιτεκτονική Συστημάτων
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Οι Συναρτήσεις Ομαδοποίησης
Κεφάλαιο 7: Διαδικτύωση-Internet
Κεφάλαιο 6o. Επίπεδο εφαρμογής
Ενότητα 2 : Το σύστημα βάσεων δεδομένων MySQL (II) Ιωάννης Τσούλος
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Πληροφοριακό σύστημα Πληροφοριακό Σύστημα μιας επιχείρησης/οργανισμού είναι ένα σύστημα που αποτελείται από ανθρώπους, διαδικασίες και εξοπλισμό (Υλικό,
Κεφάλαιο 10 Streams.
Αρχιτεκτονική Συστημάτων
Β.ΕΠΑΛ-Γενικής Παιδείας  ΜΑΘΗΜΑ: Εισαγωγή στης αρχές Επιστήμης των Η/Υ  ΚΕΦΑΛΑΙΟ 4: Γλώσσες Αναπαράστασης Αλγορίθμων  ΕΝΟΤΗΤΑ 4.2: Δομή Ακολουθίας 
Ερωτήματα Επιλογής σε ACCESS
Ερωτήματα Επιλογής σε ACCESS
Βάσεις Δεδομένων 28/11/2018 Ενότητα Γ6.Μ2 (Βασικά Δομικά Συστατικά Στοιχεία και Κύρια Αντικείμενα μιας Βάσης Δεδομένων ) Ο Δάσκαλος.
ΠΑΡΑΔΕΙΓΜΑΤΑ SQL.
Εξωτερική Αναζήτηση Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη
Βάσεις Δεδομένων 16/2/2019 Ενότητα Γ6.3 (Δημιουργία και Αποθήκευση Βάσης Δεδομένων και Πίνακα. Καθορισμός Πεδίων του Πίνακα, Τύπων Δεδομένων και Ιδιότητες.
Μεταγράφημα παρουσίασης:

DREMEL: Interactive Analysis of Web-Scale Datasets EPL646 – Advanced Topics in Databases Ιωάννης Χρίστου, Πάτροκλος Πατρόκλου

Τι είναι το Dremel? Σύστημα επερωτήσεων για ανάλυση read-only ένθετων δεδομένων Υποστηρίζει διάταξη των δεδομένων σε στήλες Μπορεί να τρέχει ερωτήματα πάνω σε πίνακες με τρισεκατομμύρια γραμμές σε δευτερόλεπτα

Αρχιτεκτονική του Dremel Χρησιμοποιεί την ιδέα του δέντρου που χρησιμοποιείται στις κατανεμημένες μηχανές αναζήτησης Ένα ερώτημα σπρώχνεται προς τα κάτω του δέντρου και ξανα γράφεται σε κάθε βήμα Το τελικό αποτέλεσμα του ερωτήματος βγαίνει από την πρόσθεση των απαντήσεων που επιστρέφονται από τα χαμηλότερα επίπεδα του δέντρου

Μοντέλο Δεδομένων του Dremel τ = ατομικός τύπος ή τύπος πλειάδας Το πεδίο i έχει ένα όνομα Ai Τα επαναλαμβανόμενα πεδία (*) μπορεί να παρουσιάζονται πολλές φορές σε μια πλειάδα Τα προαιρετικά πεδία (?) μπορεί να απουσιάζουν από την πλειάδα

Μοντέλο Δεδομένων του Dremel

Επίπεδα Επανάληψης και Ορισμού Χρησιμοποιούνται για την απόδοση της δομής της πλειάδας

Γλώσσα επερωτήσεων( Query Language) Βασισμένη στην SQL Input one-many nested tables Output 1 nested table Υποστηρίζει: Subqueries Aggregation Top-K Functions Joins H γλώσσα επερωτήσεων του Dremel είναι βασισμένη στην sql και είναι σχεδιασμένη να είναι αποτελεσματική σε columnar nested storage. Κάθε SQL statement παίρνει για είσοδο ένα ή πολλαπλούς φωλιασμένους πίνακες και τα schema τους και παράγει ένα φωλιασμένο πίνακα με το schema εξόδου του. Η γλώσσα υποστηρίζει: ·         Φωλιασμένα υποερωτήματα ·         Top-k ·         Joins ·         Functions

Query Language Example Στο πιο πάνω σχήμα παρουσιάζεται ένα query στην γλώσσα του Dremel. To query αυτό κάνει projection,selection και within-record aggregation Κάθε ένα nested record είναι σαν ένα δένδρο με labels όπου κάθε label αντιπροσωπεύει ένα πεδίο. O συντελεστής επιλογής αποκλείει τα φύλλα του δένδρου που δεν πληρούν τις καθορισμένες προυποθέσεις. Έτσι παραμένουν μόνο τα records που έχουν Name.Url και ξεκινά με http. Το count κάνει within-record άθροισμα με το WITHIN each name subrecord.

Εκτέλεση Επερωτήσεων Serving Tree Query Dispatcher Το Dremel χρησιμοποιεί  ένα serving tree πολλαπλών επιπέδων για την εκτέλεση των queries. Ένας root εξυπηρετητής λαμβάνει τα εισερχόμενα queries, διαβάζει μετα-πληροφορίες από τους πίνακες και δρομολογεί τα queries στο επόμενο επίπεδο του serving tree. Οι leaf servers επικοινωνούν με το αποθηκευτικό στρώμα ή παίρνουν πρόσβαση στον τοπικό δίσκο για ανάκτηση δεδομένων. Στο Dremel επειδή πολλά queries εκτελούνται ταυτόχρονα υπάρχει ένας query dispatcher που κατανέμει την εκτέλεση, ανάλογα με την προτεραιότητα του κάθε query. Το μέγεθος των δεδομένων που επεξεργάζονται κατά την διάρκεια εκτέλεσης ενός query συχνά είναι μεγαλύτερο από το μέγεθος των μονάδων επεξεργασίας(slots). Ένα slot αναπαραστά ένα νήμα εκτέλεσης σε ένα leaf server.

Πειράματα Columnar vs record-oriented storage Map Reduce και Dremel μοντέλο εκτέλεσης σε columnar vs record-oriented δεδομένα Επίδραση του βάθους του serving tree στους χρόνους εκτέλεσης Dremel’s Scalability

Columnar vs record-oriented storage Ο χρόνος ανάκτησης των columnar nested δεδομένων αυξάνεται γραμμικά με των αριθμών των πεδίων Η συναρμολόγηση και το πέρασμα record είναι ακριβό και μπορεί μέχρι και να διπλασιάσει τον χρόνο εκτέλεσης

Map Reduce και Dremel μοντέλο εκτέλεσης σε columnar vs record-oriented δεδομένα

Επίδραση του βάθους του serving tree στους χρόνους εκτέλεσης, Q2: SELECT country, SUM(item.amount) FROM T2 GROUP BY country Reads 60gb δεδομένα από το δίσκο και επιστρέφει μερικές εκατονταδες.. Q3:SELECT domain, SUM(item.amount) FROM T2 WHERE domain CONTAINS ’.net’ GROUP BY domain Διαβάζει 180GB και επιστρέφει περίπου 1.1 εκατομύρια μοναδικά domains.

Scalability Q5: SELECT TOP(aid, 20), COUNT(*) FROM T4 WHERE bid = fvalue1g AND cid = fvalue2g Using 1000-4000 leaf servers(nodes)   Φαίνεται ότι το Dremel μπορεί να επιτυγχάνει σχεδόν γραμμική επιτάχυνση όσο αυξάνονται τα nodes.

Παρατηρήσεις

Παρατηρήσεις Το Map Reduce μπορεί να κερδίζει από την columnar αποθήκευση σαν ένα DBMS σύστημα. Η συναρμολόγηση των records και το πέρασμα τους είναι ακριβό. Τα Software στρώματα (εκτός από το query processing layer) πρέπει να γίνουν optimize για να μπορούν απευθείας να διαβάζουν column-oriented data. Ένα σύστημα με χιλιάδες nodes μπορεί να κερδίσει μέχρι και γραμμική επιτάχυνση ανάλογα με των αριθμό των columns Aν είναι αποδεκτό το trade-off ταχύτητας έναντι ακρίβειας, μπορεί ένα ερώτημα να τερματιστεί γρήγορα και να μπορούμε να δούμε τα περισσότερα δεδομένα