Abschlussvortrag Diplomarbeit Daniel Weber Distributed Query Processing for Locality-Aware Data in P2P Networks - HiSbase - Abschlussvortrag Diplomarbeit Daniel Weber 6. April 2019 Daniel Weber
Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick Überblick Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick 6. April 2019 Daniel Weber
Einordnung und Motivation Astrophysik / GAVO Große Datenmengen in astrophysikalischen Katalogen Crossmatching: Übereinstimmungen in verschiedenen Katalogen Flaschenhals der zentralen Verarbeitung der Daten 6. April 2019 Daniel Weber
Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick Überblick Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick 6. April 2019 Daniel Weber
Crossmatching direkt auf den Peers welche die Daten halten Ziele Verteilung der Daten in einem P2P-System unter Beibehaltung der Lokalität Nicht nur Ausnutzung der Rechen- und Plattenkapazität sondern auch des Hauptspeichers der teilnehmenden Peers Crossmatching direkt auf den Peers welche die Daten halten 6. April 2019 Daniel Weber
eindimensionaler zirkulärer Keyspace Routing: P2P-System: Pastry eindimensionaler zirkulärer Keyspace Routing: leaf set: Nachbarn im Keyspace neighbourhood set: Nachbarn im Netz routing table: Prefix-Routing zu anderen Peers konfigurierbare Metrik zur Bestimmung der Netznachbarschaft 6. April 2019 Daniel Weber
Abbildung von Regionen statt Datenpunkten auf das P2P-Netz Lokalität Abbildung von Regionen statt Datenpunkten auf das P2P-Netz 6. April 2019 Daniel Weber
Lokalitätserhaltende Datenstrukturen 1 4 5 2 3 6 7 8 9 12 13 10 11 14 15 32 33 36 37 34 35 38 39 40 41 44 45 42 43 46 47 16 17 20 21 18 19 22 23 24 25 28 29 26 27 30 31 48 49 52 53 50 51 54 55 56 57 60 61 58 59 62 63 9 8 7 6 1 2 3 4 5 6. April 2019 Daniel Weber
Pastry: Routing auf dem Ring B C 6. April 2019 Daniel Weber
Crossmatching Grobes Vorfiltern Feinarbeit auf kleiner Datenmenge 6. April 2019 Daniel Weber
Crossmatching in SQL select ... from catalogue1 as c1 left outer join catalogue2 as c2 on abs(c1.ra-c2.ra) < r and abs(c1.dec-c2.dec) < r and (c1.x*c2.x+c1.y*c2.y+c1.z*c2.z) < cos(radians(r)) where ... 6. April 2019 Daniel Weber
Crossmatching: Herausforderung Stauchungen in Polarregionen 6. April 2019 Daniel Weber
Crossmatching in SQL select ... from catalogue1 as c1 left outer join catalogue2 as c2 on abs(c1.ra-c2.ra) < case when abs(c1.dec)+r > 89.9 then 180 else degrees(abs(atan(sin(radians(r)) / sqrt(abs(cos(radians(c1.dec-r)) * cos(radians(c1.dec+r))))))) end and abs(c1.dec-c2.dec) < r and (c1.x*c2.x+c1.y*c2.y+c1.z*c2.z) < cos(radians(r)) where ... 6. April 2019 Daniel Weber
Crossmatching in HiSbase select ... from catalogue1 as c1 left outer join catalogue2 as c2 on xmatch(c1,c2,r) where ... Umwandlung XMATCH-Notation in SQL durch HiSbase 6. April 2019 Daniel Weber
Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick Überblick Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick 6. April 2019 Daniel Weber
Anfragen: Der Weg zu den Daten Antworten: Der Weg der Daten zurück Anfragebearbeitung Anfragen: Der Weg zu den Daten Antworten: Der Weg der Daten zurück Fehlerbehandlung 6. April 2019 Daniel Weber
Anfragebearbeitung – Teil 1 C D1 D2 D3 D4 P I FullQueryMsg PreparedQueryMsg PartialQueryMsgs Vorbereitung der Anfrage: Ermittlung betroffener Regionen Übersetzung des XMATCH Auswahl des Koordinators Koordination der Anfrage: Befragen aller Regionen Sammeln der Antworten Abarbeitung der Anfrage: Direkt auf den Peers Erkennen doppelter Anfragen 6. April 2019 Daniel Weber
Anfragebearbeitung – Teil 2 FullAnswerMsg PartialAnswerMsgs C D1 D2 D3 D4 P I Sammeln der Antworten: Wann sind alle eingetroffen? Ggf. Duplikate entfernen Transfer der Antworten: Transport zurück zum Ursprung der Anfrage 6. April 2019 Daniel Weber
Anfragebearbeitung im Fehlerfall FullErrorMsg PartialErrorMsg C D1 D2 D3 D4 P I Meldung des Fehlers an den Koordinator Abbruch der weiteren Koordination Meldung an den Ursprungsknoten 6. April 2019 Daniel Weber
Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick Überblick Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick 6. April 2019 Daniel Weber
730 (bzw. 1460) Anfragen je Knoten bei verschiedenen MPLs Evaluationssetup 16 PCs mit je 512 MB RAM gegen 1 Server mit 2 GB RAM 208 Regionen 730 (bzw. 1460) Anfragen je Knoten bei verschiedenen MPLs Ziel: Messung des Durchsatzes 6. April 2019 Daniel Weber
Evaluationsanfragen zufällige Auswahl von Objekten aus 2MASS und ROSAT Suche von „Treffern“ dazu in SDSS Bildung von Anfrage-fenstern durch Auf- und Abrunden 6. April 2019 Daniel Weber
6. April 2019 Daniel Weber
Evaluationsergebnisse Superlineare Steigerung des Durchsatzes bei 16 Knoten MPL-Maximum bei einem Knoten zwischen 5 und 10 parallelen Anfragen MPL-Maximum bei 16 Konten bei 600 parallelen Anfragen (je Knoten!) 6. April 2019 Daniel Weber
Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick Überblick Einordnung und Motivation Ziele Anfragebearbeitung Evaluation Ausblick 6. April 2019 Daniel Weber
Ausblick: Alternative Koordinatorauswahl Bisher: immer „erster“ betroffener Knoten als Koordinator Besser: „mittlerer“ Knoten, da dieser vermutlich mehr angefragte Regionen abdeckt Dadurch Reduzierung der transportierten Datenmenge B A C 6. April 2019 Daniel Weber
Zusätzliche Ausgabeformate Handhabung von Query-Hot-Spots Ausblick: Weiteres Anbindung von Clients Zusätzliche Ausgabeformate Handhabung von Query-Hot-Spots 6. April 2019 Daniel Weber
Verteilte Anfragebearbeitung Evaluation von HiSbase Zusammenfassung Verteilte Anfragebearbeitung Evaluation von HiSbase 6. April 2019 Daniel Weber