51
1/6/2011 Προσαρμοστικοί Αλγόριθμοι Εξισορρόπησης Φόρτου σε Κατανεμημένα Περιβάλλοντα (Δίκτυα Ομοτίμων και Υπολογιστικά Νέφη) Email:[email protected] Εργαστήριο Υπολογιστικών Συστημάτων Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Ιωάννης Κωνσταντίνου Υποστήριξη Διδακτορικής διατριβής

Upload: fauve

Post on 19-Jan-2016

38 views

Category:

Documents


0 download

DESCRIPTION

Προσαρμοστικοί Αλγόριθμοι Εξισορρόπησης Φόρτου σε Κατανεμημένα Περιβάλλοντα (Δίκτυα Ομοτίμων και Υπολογιστικά Νέφη). Υποστήριξη Διδακτορικής διατριβής. Ιωάννης Κωνσταντίνου. Email:[email protected]. Εργαστήριο Υπολογιστικών Συστημάτων - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Προσαρμοστικοί Αλγόριθμοι Εξισορρόπησης Φόρτου σε Κατανεμημένα Περιβάλλοντα

(Δίκτυα Ομοτίμων και Υπολογιστικά Νέφη)

Email:[email protected]

Εργαστήριο Υπολογιστικών ΣυστημάτωνΣχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Εθνικό Μετσόβιο Πολυτεχνείο

Ιωάννης Κωνσταντίνου

Υποστήριξη Διδακτορικής διατριβής

Page 2: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Big Data• 90% των σημερινών δεδομένων δημιουργήθηκαν τα

τελευταία 2 χρόνια• Νόμος του Moore: Διπλασιασμός δεδομένων κάθε 18 μήνες

– YouTube: 13 εκατ. ώρες και 700 δις αναπαραγωγές το 2010– Facebook: 20TB/ημέρα συμπιεσμένα– CERN/LHC: 40TB/μέρα (15PB/έτος)

• Πολλά, πολλά ακόμα…– Web logs, αρχεία ομιλιών, ιατρικοί φάκελοι, κλπ

2

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 3: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Έκρηξη δεδομένων

1 EB (Exabyte=1018bytes) = 1000 PB (Petabyte=1015bytes)Κίνηση δεδομένων κινητής τηλεφωνίας στις ΗΠΑ για το 2010

1.2 ZB (Zettabyte) = 1200 EB Σύνολο ψηφιακών δεδομένων το 2010

35 ZB (Zettabyte = 1021 bytes) Εκτίμηση για σύνολο ψηφιακών δεδομένων το 2020

3

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 4: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Κατανεμημένα συστήματα (1)

• Ανάγκη για κατανεμημένη επεξεργασία!!• Δίκτυα ομοτίμων (Peer to Peer)

– Γνωστά για διαδικτυακή ανταλλαγή αρχείων– Έμφυτη ικανότητα κλιμάκωσης– Χρησιμοποιούνται από πολλές εφαρμογές

• Υπολογιστικά νέφη (cloud computing)– À la carte πρόσβαση σε:– Εικονικούς πόρους σε απομακρυσμένα datacenters– Εύκολη προσθαφαίρεση πόρων μέσω API

4

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 5: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Κατανεμημένα συστήματα (2)

5

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

• Λύνουν πολλά προβλήματα, αλλά:

• Προσθέτουν πολυπλοκότητα– Εξισορρόπηση φόρτου– Συνέπεια– Συγχρονισμός– Ανοχή σε σφάλματα– Ασφάλεια -

Ιδιωτικότητα

Page 6: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Περιεχόμενα

• NIXMIG: εξισορρόπηση φόρτου σε κατανεμημένες δομές που υποστηρίζουν ερωτήματα εύρους τιμών

• Κατανεμημένο σύστημα δεικτοδότησης, αποθήκευσης και επερώτησης δεδομένων μεγάλου όγκου

• Συμπεράσματα• Μελλοντικές Κατευθύνσεις

6

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 7: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Κίνητρο (1)• Ερωτήματα εύρους είναι πολύ χρήσιμα

– κύβοι OLAP– Χωρικές Βάσεις Δεδομένων– Booking και e-commerce ιστοσελίδες – Παιχνίδια on-line, κλπ

• Πλήθος κατανεμημένων δομών που υποστηρίζουν ερωτήματα εύρους– Skip Graphs, P-Grids, P-trees, BATON, Prefix Hash

Trees, κλπ

7

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 8: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Κίνητρο (2)

8

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

N1 N2 N3 N4 N5

q7q6

q5

q4

q3q2

q1

• Συνήθως η ζήτηση δεν είναι ομοιόμορφη!!– Ειδικά σε διαδικτυακές εφαρμογές– Άνισες κατανομές απαιτούν εξισορρόπηση!!!!

Page 9: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Εξισορρόπηση με κατακερματισμό

• Εφαρμόζεται από DHTs όπως Chord, κλπ• Καταστρέφει την τοπικότητα• Θεωρητικός λόγος ασυμμετρίας logN• Όχι κατάλληλος για ερωτήματα εύρους!!

N1 N2 N3 N4 N5

Αρχική κατανομή

Εφέ του κατακερματισμού

9

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 10: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Εξισορρόπηση με μεταφορά αντικειμένων

• [KR06],[GBGM04],[AKK04],[BAS04],[VORT09],[LCLC09],[SX07],[SX08],[Jou08],[CLM+11][GDA10],[GH05],[GS04],[TZX10]

• [KR06]: Τυχαία μηνύματα συγκρίνουν φορτία– Εάν τα φορτία διαφέρουν κατά ε, 0<ε<1/4 τότε γίνεται εξισορρόπηση

• [GBDM04]: Ενημέρωση κεντρικού καταλόγου με φορτία• [AKK04]: απαιτεί ελευθέρους κόμβους• [SX07]: Διατηρεί δείκτες μεταξύ πηγής και προορισμού

10

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

N2 N3 N4 N5N1

N5 N2 N3 N4N1

Page 11: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Ορθογώνιες προσεγγίσεις

• Εξισορρόπηση με αντίγραφα– [PNT06],[PNT10],[GSBK04],[TR06],[LCC+2]

– Θέματα συνέπειας κατά την ενημέρωση– Απαιτεί αλλαγές στο πρωτόκολλο δρομολόγησης για

updates/inserts

• Εξισορρόπηση με Εικονικούς κόμβους– [DKK+01],[RLS+03],[SGL+06],[GS05],[ZH05],[HLCH11],[CT08],[LCLC09]…

– Εύκολη υλοποίηση σαν threads, αλλά: κατακερματίζεται το ID space, αυξημένες ανάγκες σε bandwidth και μνήμη

11

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 12: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Συνεισφορά (1)

• Μελέτη των δυο βασικών μεθόδων εξισορρόπησης φόρτου με μεταφορά αντικειμένων– Διαδοχική Ανταλλαγή Αντικειμένων μεταξύ Γειτόνων

(NIX)

– Μεταναστεύσεις κόμβων (MIG)

• NIXMIG • Υβριδική μέθοδος μεταφοράς αντικειμένων

• Ρυθμίζει προσαρμοστικά τις NIX/MIG

12

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 13: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Συνεισφορά (2)

• Θεωρητική ανάλυση• Αποτίμηση επίδοσης NIX, MIG και NIXMIG

• Μελέτη ύπαρξης σημείου σύγκλισης

• Υλοποίηση πάνω από έναν Skip Graph• Πειραματική ανάλυση

• Ο NIXMIG “κερδίζει” τους NIX, MIG και τον IB [KR06]

• Ταχύτητα

• Όγκο μεταφερόμενων μηνυμάτων και αντικειμένων13

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 14: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Βασικές έννοιες – Στόχος• Αποθήκευση M κλειδιών σε N κόμβους, N<<M

– Ισόποσος χωρισμός σε N τμήματα με διαδοχικά όρια

• Ορισμός φορτίου (load) Li ενός κόμβου Ni

– Αριθμός αιτήσεων αντικειμένων στον χρόνο (reqs/sec)– Μπορεί να αναχθεί σε κατανάλωση εύρους ζώνης για την

απάντηση ερωτήσεων (kb/sec)

• Κατώφλι φορτίου (Load threshold)– Χωρίζει σε overloaded και underloaded– Τοπική ανά κόμβο ρύθμιση

• Στόχος: Μεταφορά αντικειμένων έτσι ώστε να πέσει το φορτίο του κάθε κόμβου κάτω από το κατώφλι του

14

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 15: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Διαδοχική Ανταλλαγή Αντικειμένων μεταξύ Γειτόνων (NIX)

• ΥΠΕΡ– Χωρίς αναγνωριστικά μηνύματα για την εντόπιση κόμβων που

υπολειτουργούν– Χωρίς συντήρηση του υπερκείμενου δικτύου

• ΚΑΤΑ– Αδυναμία εφαρμογής σε μεγάλες περιοχές υπερφορτωμένων

κόμβων– Απαιτεί πολλές διαδοχικές μετακινήσεις αντικειμένων 15

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 16: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Θεωρητική αποτίμηση NIX

• Χειρότερη αρχική τοποθέτηση κλειδιών

• N κλειδιά με μοναδιαίο load• Στο t0 μεταφέρονται Μ-1

κλειδιά, στο t1 Μ-2, κοκ.

• Μετά από Ο(N) χρόνο έχουν μεταφερθεί Ο(Μ) κλειδιά ανά εκτέλεση, για Ν<<Μ

16

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

t0…. ….

N

M-N

….N1 N2 NN

thres

tN-1….M-N

….N1 NNNN-1

thres

N2 N3

N-1

t1.. ….

M-1

….N2 N3 NN

thres

N1

Page 17: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Μεταναστεύσεις κόμβων (MIG)

• ΥΠΕΡ– Γρήγορος, ταυτόχρονη εφαρμογή σε πολλούς κόμβους– Απαιτεί την μεταφορά μικρού αριθμού αντικειμένων

• ΚΑΤΑ– Χρειάζονται επιπλέον probing μηνύματα για εντοπισμό κόμβων

που υπολειτουργούν– Χρειάζεται ενημέρωση των πινάκων δρομολόγησης

17

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 18: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Θεωρητική αποτίμηση MIG• Χειρότερη αρχική

τοποθέτηση κλειδιών• Ταυτόχρονη εκτέλεση Ν-1

MIG όπου μεταφέρονται Μ/Ν κλειδιά.

• logN κόστος για ενημέρωση routing table και για εύρεση κόμβων

• κόστος και Ο(1) χρόνος 18

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

t0

… … ….N1 N2 NN

thres

…MN_ M

N_

tC

…N1

thres

MN_

….

…MN_

….NN

)log( NN

MO

Page 19: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Μέση (average) περίπτωση για NIX και MIG

• Αναγωγή σε balls into bins [MU05]• Άρα “ρίχνουμε” ομοιόμορφα Ν μπάλες σε Ν

κάδους• P[Ni is not overloaded]=P[Li=0]+P[Li=1] =e-1+e-1=

74%• Άρα μόνο 26% κόμβοι είναι overloaded• Επίσης, μέγιστο Load=• Πολύ μικρότερο από τις worst case περιπτώσεις

19

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

NN

N

loglog

log

Page 20: Email:ikons@cslab.ece.ntua.gr

1/6/2011

NIX ή MIG?

Αποτελεσματικός NIX : η απορρόφηση γίνεται τοπικάkeys

thres

keys

thres

A

A

Lo

ad

Lo

ad

t=ta t=tb

Lo

ad

keys

thres

Lo

ad

keys

thres

A

A B

t=ta t=tb

B

Αποτελεσματικός MIG : ο NIX θα έκανε ταλαντώσεις

20

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 21: Email:ikons@cslab.ece.ntua.gr

1/6/2011

NIXMIG (1)

• Επιλογή κόμβων με την μορφή κύματος έτσι ώστε:– Εξέταση φόρτου, επιλογή τύπου εξισορρόπησης και υπολογισμό extra

απαιτούμενων κόμβων– Δέσμευση (lock) κόμβων για συμμετοχή στην εξισορρόπηση

• Τοπικό κύμα ελέγχει την “γειτονιά”• Μακρινά (προαιρετικά) probes ψάχνουν για

ελεύθερους

Load

k1 k2 k3 k4

Phase 1: Exam

N10N11 N12 N13

N1 N2N3 N4

keys

thres

21

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 22: Email:ikons@cslab.ece.ntua.gr

1/6/2011

NIXMIG (2)

• Ο έλεγχος σταματάει όταν– Απαιτούνται περισσότεροι από TTL κοντινοί ή TTL μακρινοί κόμβοι– Συμβαίνει “σύγκρουση”

• tmpLoad παράμετρος υπολογίζει το συνολικό “εικονικό load”– Μόνο NIX, εάν το φορτίο απορροφάται τοπικά– Και NIX και MIG, εάν το πολύ TTL τοπικοί κόμβοι έχουν επιλεχτεί και

χρειάζονται επιπλέον κόμβοι– Μόνο MIG, εάν περισσότεροι από TTL μακρινοί κόμβοι χρειάζονται

εξαρχής.

Load

k1 k2 k3 k4

Phase 1: Exam

N10N11 N12 N13

N1 N2N3 N4

keys

thres

22

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 23: Email:ikons@cslab.ece.ntua.gr

1/6/2011

NIXMIG (3)

• Μεταφορά φορτίου από τους τοπικούς κόμβους στον τελευταίο (N4)– Ρυθμιζόμενη παράμετρος α, 0<α<1

• ποσοστό μεταφερόμενου φορτίου• επιθετικότητα του αλγορίθμου

• Ο N4 παραμένει overloaded για λίγο χρόνο, καθώς ήδη έχουν δεσμευτεί οι μακρινοί

Load

k1 k2 k3 k4

thresPhase 2: NIX

N10 N11N12 N13

N1 N2 N3N4

keys

23

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 24: Email:ikons@cslab.ece.ntua.gr

1/6/2011

NIXMIG (4)

• Απομακρυσμένοι κόμβοι– Μεταφέρουν τα κλειδιά τους στον N10

– Τοποθετούνται δίπλα από τον N4 και παίρνουν μέρος του φορτίου

– Ελαχιστοποιείται η ενημέρωση routing entries

• Στο τέλος όλοι οι κόμβοι έχουν εξισορροπήσει το φορτίο τους!!

Load

k1 k2 k3 k4

Phase 3: MIG (Optional)

N10 N11N12 N13

N1 N2 N3 N4 N13 N12 N11

keys

thres

24

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 25: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Θεωρητική αποτίμηση (1)• Σε ποιες περιπτώσεις συγκλίνει?

– Συνάρτηση δυναμικού:– Για να έχουμε σύγκλιση, πρέπει– Μείωση δυναμικού κατά ένα balancing operation

(έστω Ni overloaded):

– Ο τρίτος όρος πρέπει να είναι θετικός– Ταχύτερη σύγκλιση έχουμε εάν ο Nj είναι

underloaded

25

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

N

iii threstLt

1

2))(()(

)]()1)()[((2 jjiiii LthresathresLthresL

0

Page 26: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Θεωρητική αποτίμηση (2)

• Για ποιες τιμές του α έχουμε ταχύτερη σύγκλιση?• Έστω ομογενές δίκτυο με σταθερό thres• Έστω το φορτίο που μεταφέρεται από τον Ni

στον Nj, τότε έχουμε

• Το είναι τριώνυμο με αρνητικό πρώτο όρο• Άρα, παρουσιάζει μέγιστο για • Από όπου προκύπτει

26

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

lLLll ji )(22)( 2

)(2

1jiopt LLl

2

1opta

)(l

l

Page 27: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Πειραματική αξιολόγηση• Υλοποίηση εξομοιωτή σε 6K γραμμές Java• 500 κόμβοι, 50k κλειδιά (100 ανά κόμβο)

– Πειράματα μέχρι 50k κόμβους και 5M κλειδιά

• Συνθετικά φορτία με λοξότητα (skew)– Παλμός: μόνο ένα εύρος κλειδιών ζητιέται συνεχώς– Zipf κατανομές με διαφορετικά θ

• Ρεαλιστικά φορτία: AOL dataset με user queries– 20M λέξεις κλειδιά– 650K χρήστες– 3 μήνες 27

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 28: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Σύγκριση με [KR06]

28

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

NIXMIG KARGER’S IB

Page 29: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Σύγκριση NIXMIG με IB [KR06]

29

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 30: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Δυναμικό φορτίο

30

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 31: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Περιεχόμενα

• NIXMIG: εξισορρόπηση φόρτου σε κατανεμημένες δομές που υποστηρίζουν ερωτήματα εύρους τιμών

• Κατανεμημένο σύστημα δεικτοδότησης, αποθήκευσης και επερώτησης δεδομένων μεγάλου όγκου

• Συμπεράσματα• Μελλοντικές Κατευθύνσεις

31

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 32: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Κίνητρο• Web 2.0 datasets

– Linked Data– Wikipedia– Amazon public datasets, …

• Φτηνό hardware και bandwidth επιτρέπει την ανάλυση Webscale δεδομένων

• Θέλουμε να πετύχουμε– εξισορρόπηση φόρτου

– Κλιμάκωση (scalability)

– Ανοχή σε σφάλματα

– Real time απόκριση σε ερωτήματα

– Υποστήριξη πολλών τύπων δεδομένων32

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 33: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Συνεισφορά

• Κατανεμημένο σύστημα για την επεξεργασία, δεικτοδότηση και διαμοιρασμό TBs από δεδομένα

• Συνδυασμός NoSQL + MapReduce :• MapReduce επεξεργάζεται τα δεδομένα εισόδου και

φτιάχνει το ευρετήριο

• Το ευρετήριο και τα δεδομένα διαμοιράζονται μέσω μιας NoSQL βάσης

33

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 34: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Σχετικές εργασίες

• Κατανεμημένα συστήματα δεικτοδότησης βασισμένα σε Hadoop– Το Ivory κατανέμει μόνο την δημιουργία του index. – To Hindex κατανέμει τα indices μέσω HBase, αλλά η

δημιουργία είναι κεντρικοποιημένη

• Στο σύστημά μας και η δημιουργία και ο διαμοιρασμός του ευρετηρίου είναι κατανεμημένος!!!

34

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 35: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Αρχιτεκτονική (1)

Raw Content

Uploader

Index rulesContent

tableMapReduce

MapReduce

Indextable

Indexer

Searchobjects

Getobject

ClientAPI

• “Ανέβασμα ” των δεδομένων στο HDFS• Τα δεδομένα μαζί με τους κανόνες δεικτοδότησης τροφοδοτούν τον

Uploader– Δημιουργία του πίνακα Content

35

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 36: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Αρχιτεκτονική (2)

• Ο Πίνακας Content τροφοδοτείται στον Indexer για την εξαγωγή του πινακα Index

• Το client API επικοινωνεί με τον Index για αναζητήσεις, και με τον Content για ανάκτηση αντικειμένων

Raw Content

Uploader

Index rulesContent

tableMapReduce

MapReduce

Indextable

Indexer

Searchobjects

Getobject

ClientAPI

36

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 37: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Κανόνες Δεικτοδότησης<author>

<name>Ioannis</name><surname>Konstantinou</surname><date>26/04/2010</date>

</author>

Attribute types

Record boundaries

• Τα όρια εγγραφών χωρίζουν τα δεδομένα σε μονάδες για επεξεργασία

• Τα είδη attributes επιλέγουν περιοχές για δεικτοδότηση– Ένα XML tag, ένας πίνακας HTML, μία στήλη DB, κλπ

37

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 38: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Πίνακες Content/Index

• Αναζήτηση με τον πίνακα Index– Exact Match (Hbase Get)– Prefix Search (Hbase Scan)

• Ανάκτηση με τον πίνακα Content– Με απλό Hbase Get

Row key: MD5Hash Row value: record content

2da0ae7cb5… <author><name>Ioannis</name></author>

223c14b2a8… <author><name>Evangelos</name></author>

38

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Row key: “term”_”attribute type”

Row value: list(MD5Hash)

20100424_date 2da0ae7cb598ac8e…

20100426_date 223c14b2a8c7bbe2…

Konstantinou_name 2da0ae7cb5988.., 223c14b2a8c7bb…

Content Table

Index Table

Page 39: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Είδη δεδομένων και φορτίων• Δομημένα: 23 GB MySQL Database dump από την τελευταία

έκδοση wikipedia• Ημι-δομημένα (XML-HTML)

– 150 GB XML από τα 2,55TB κάθε άρθρου wikipedia μάζί με τις αναθεωρήσεις του μέχρι τον Μάιο 2008

– 150 GB HTML από μια στατική έκδοση της wikipedia

• Αδόμητα: 20GB από όλα τα κείμενα σε όλες τις γλώσσες της συλλογής Gutenberg (46.000 αρχεία)

• Ερωτήσεις χρηστών από την AOL• Οι πελάτες κάνουν point και prefix queries ακολουθώντας

κατανομή zipfian

39

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 40: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Χρόνος απόκρισης για διαφορετικό φορτίο

• Χρόνοι απόκρισης για φυσιολογικό φόρτο– Point queries: 20ms– Any attribute queries: 150ms– Range queries: 27sec

• Caching effect της HBase– Μέχρι 100queries/sec υπάρχουν αρκετά διαθέσιμα connections– Μεταξύ 100 και 1000 queries/sec: το queuing και caching είναι σημαντικό

40

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 41: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Χρόνος απόκρισης για διαφορετικό μέγεθος Dataset και Index

• Η αύξηση του ευρετηρίου δεν επηρεάζει τον χρόνο απόκρισης

• Τα ερωτήματα εύρους κοστίζουν• Μικρή γραμμική αύξηση του χρόνου απόκρισης με την

αύξηση του dataset Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

41

Page 42: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Συμπεράσματα• Κατανεμημένα συστήματα κάτω από μεγάλο φόρτο

– Όγκο Δεδομένων– Ταυτόχρονα ερωτήματα

• Εξισορρόπηση φόρτου σε δύο βασικά προβλήματα– Ερωτήματα εύρους– Δημιουργία και διαχείριση ευρετηρίων

• P2P και “bleeding edge” cloud ready συστήματα– Παραδοσιακοί κατανεμημένοι αλγόριθμοι– Αντιμετωπίζουν τα ίδια προβλήματα– Αλλάζει κάθε φορά η εφαρμογή– Είναι αλληλένδετα

42

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 43: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Περιεχόμενα

• NIXMIG: εξισορρόπηση φόρτου σε κατανεμημένες δομές που υποστηρίζουν ερωτήματα εύρους τιμών

• Κατανεμημένο σύστημα δεικτοδότησης, αποθήκευσης και επερώτησης δεδομένων μεγάλου όγκου

• Συμπεράσματα• Μελλοντικές Κατευθύνσεις

43

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 44: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Προσαρμοστική αντιγραφή κατανεμημένων δομών που υποστηρίζουν ερωτήματα εύρους

• Ερωτήματα q1..q7 υπερφορτώνουν τον N1

• Ο NIXMIG μεταφέρει τους N3,N4,N5

N1 N2 N3 N4 N5

q7q6

q5

q4

q3q2

q1

N2

t=ta

t=tb

N1 N3 N4 N5

44

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 45: Email:ikons@cslab.ece.ntua.gr

1/6/2011

• Δυική προσέγγιση• Η δημοφιλής

περιοχή διαμοιράζεται και από τους N3,N4, N5

• Κάθε κόμβος παίρνει το ¼ των ερωτημάτων

N1 N2 N3 N4 N5

q7q6

q5

q4

q3q2

q1

N2

t=ta

t=tb

N1

N3

N4

N5

45

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Προσαρμοστική αντιγραφή κατανεμημένων δομών που υποστηρίζουν ερωτήματα εύρους

Page 46: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Βελτιώσεις του συστήματος Δεικτοδότησης

• Ενημερώσεις?• Υπέρ/κατά της συμπίεσης? • Υποστήριξη για RDF?

– Jena – Hexastore

46

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 47: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Ελαστική NoSQL μέσω clouds

• Προσθαφαίρεση κόμβων ανάλογα με την ζήτηση

Collect performance metricsAnd perform balancing actions

Virtual machinehost

Virtual machinehost

Virtual machinehost

Cloud Infrastructure

Monitoring & Balancing module

time

Per

f. m

etric

thres_high

thres_low

Add VMs

Remove VMs

47

• Πώς/ποια μετρικά χρειάζονται?• Πότε και πόσους κόμβους

χρειάζεται να προσθαφαιρέσουμε?

• Μπορούμε ταυτόχρονα να εξυπηρετούμε ερωτήματα?• CIKM 2011 submission

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 48: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Δημοσιεύσεις (1)• Περιοδικά

– Fast and Cost-Effective Online Load-Balancing in Distributed Range-Queriable Systems. I. Konstantinou, D. Tsoumakos and N. Koziris. IEEE Transactions on Parallel and Distributed Systems (To appear)

– A Grid Middleware for Data Management Exploiting Peer-to-Peer Techniques. A. Asiki, K. Doka, I. Konstantinou, A. Zissimos, D. Tsoumakos, N. Koziris and P. Tsanakas. Future Generation Computer Systems, Volume 25, Issue 4, April 2009, Pages 426-435

• Διεθνή συνέδρια με κριτές– Distributed Indexing of Web Scale Datasets for the Cloud. I. Konstantinou, E. Angelou,

D. Tsoumakos and N. Koziris. In Proceedings of the International Workshop on Massive Data Analytics on the Cloud (MDAC2010 - in conjunction with WWW 2010), Raleigh, NC, USA, 26 April 2010

– Measuring the Cost of Online Load-Balancing in Distributed Range-Queriable Systems. I. Konstantinou, D. Tsoumakos and N. Koziris. In Proceedings of the 9th International IEEE Conference on Peer-to-Peer Computing (P2P), Seattle, WA, USA, 8-11 September 2009

48

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 49: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Δημοσιεύσεις (2)

• Διεθνή συνέδρια με κριτές– GRIDNEWS: A Distributed Automatic Greek Broadcast Transcriptions System. D.

Dimitriadis, A. Metallinou, I. Konstantinou, G. Goumas, P. Maragos and N. Koziris. In Proceedings of the 2009 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP-09), Taipei, Taiwan, March 2009

– PASS It ON (PASSION): An Adaptive Online Load-Balancing Algorithm for Distributed Range-Query specialized Systems. I. Konstantinou, D. Tsoumakos and N. Koziris. In Proceedings of the 16th International Conference on Cooperative Information Systems (CoopIS), Monterrey, Mexico, 12-14 November 2008

– A Distributed Architecture for Multi-Dimensional Indexing and Data Retrieval in Grid Environments. A. Asiki, K. Doka, I. Konstantinou, A. Zissimos, and N. Koziris. In Proceedings of the Cracow 2007 Grid Workshop (CGW’07), Krakow, Poland, October 16-17, 2007

– Gredia Middleware Architecture. I. Konstantinou, K. Doka, A. Asiki, A. Zissimos, and N. Koziris. In Proceedings of the Cracow 2007 Grid Workshop (CGW’07), Krakow, Poland, October 16-17, 2007.

49

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 50: Email:ikons@cslab.ece.ntua.gr

1/6/2011

Ερωτήσεις?

50

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Page 51: Email:ikons@cslab.ece.ntua.gr

1/6/2011

51

Υποστήριξη διδακτορικής διατριβής – Ιωάννης Κωνσταντίνου

Ελαφόνησος, Χανιά