otto-von-guericke – universität magdeburg arbeitsgruppe data and knowledge engineering institut...

14
Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes Routing in verteilten skalierbaren Datenstrukturen Leipzig, 27.02.2003 Erik Buchmann, Klemens Böhm {buchmann|kboehm}@iti.cs.uni-magdeburg.de

Upload: abelard-geiss

Post on 05-Apr-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke – Universität Magdeburg

Arbeitsgruppe Data and Knowledge EngineeringInstitut für Technische und Betriebliche Informationssysteme

Effizientes Routing in verteilten skalierbaren Datenstrukturen

Leipzig, 27.02.2003

Erik Buchmann, Klemens Böhm{buchmann|kboehm}@iti.cs.uni-magdeburg.de

Page 2: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 2Routing in verteilten skalierbaren Datenstrukturen

Merkmale von Peer-to-Peer Systemen

• alle Knoten gleichberechtigt, keine Trennung Client - Server

• dynamisch skalierbar auf sehr viele, unabhängige Rechner

• jeder neue Teilnehmer bringt neue Ressourcen ein

• wirtschaftlicher Betrieb, keine Rechenleistung auf Vorrat

Page 3: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 3Routing in verteilten skalierbaren Datenstrukturen

Peer-to-Peer Datenstrukturen• Zahlreiche Anwendungen, z.B.:

- Index- oder Speicherstruktur bei DBMS

- Object Lookup in sehr großen Datenbeständen / sehr vielen Rechnern

- Auslieferung von Webseiten• Operationen:

- put(Key,Value), get(Key)• Selbstorganisation, selbständige Entscheidungen

über Replikation, Lastausgleich, Datenverteilung• Varianten:

- CAN, Chord, Pastry, P-Grid etc.

Page 4: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 4Routing in verteilten skalierbaren Datenstrukturen

Content-Adressable Networks• Jeder Knoten

- hat eigenen, n-dimensionalen Schlüsselbereich (Torus)

- kennt alle Nachbarn seines Schlüsselbereichs

- leitet Messages an Nachbarn in Richtung des Ziels weiter

13

4

5

3

112 2

98

0

10

7

6 11

Page 5: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 5Routing in verteilten skalierbaren Datenstrukturen

Routing im CAN• Operationen: put(Key,Value), get(Key)

• Transformation der Anwendungs-schlüssel in CAN-Schlüssel:

(Schlüssel) → {k0,k

1,...,k

n}

"www.erikbuchmann.de" → {81256,12445}• Nachrichten an den Knoten weitergeben,

dessen Schlüsselraum den geringsten Abstand zum Zielpunkt aufweist

• Kritische Größe: Message Hops pro Operation

13

4

5

3

112 2

98

0

10

7

6 11

get(k)

Page 6: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 6Routing in verteilten skalierbaren Datenstrukturen

Vorschlag 1: Kontaktdaten-Cache• zusätzlich zu den

Nachbarn weitere Knoten in der Kontaktliste halten

• veraltete / unvoll-ständige Infor-mationen möglich

• Informationsbe-schaffung ohne zusätzliche Messages

Page 7: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 7Routing in verteilten skalierbaren Datenstrukturen

Fragen im Zusammenhang mit dem Kontaktdaten-Cache

• Wahl der richtigen Größe des Cache- zu klein: ineffektiv- zu groß: veraltete Einträge, hoher

Ressourcenverbrauch• Wahl der optimalen Ersetzungsstrategie

- wenig veraltete Einträge, kurze Wege zu häufig nachgefragten Datenobjekten

• Nutzen bei realen Daten- unser Szenario: Einsatz bei einem Web-Service

Page 8: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 8Routing in verteilten skalierbaren Datenstrukturen

Durchführung der Experimente• Simulationsumgebung

- PC-Cluster aus 32 Rechnern 2GHz-P4, 2 GB RAM, 100 MBit-Ethernet

• CAN-Prototyp- 100.000 Knoten- 1.000.000 Abfragen- 2D-Schlüsselraum- Experimente sowohl

mit künstlich generierten als auch mit echten Testdaten

Page 9: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 9Routing in verteilten skalierbaren Datenstrukturen

Experiment 1: Cache-Größe

bereits geringe Cache-Größe verringert Messages um 2/3

Page 10: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 10Routing in verteilten skalierbaren Datenstrukturen

Vorschlag 2: Lokalitätserhaltende Schlüsselabbildung

• Eingriff bei der Abbildung von Anwendungsschlüsseln auf CAN-Schlüssel

• Klassisch: Gleichverteilung derSchlüsselwerte- z.B. Hash-Funktion- soll gleichmäßige Auslastung sicherstellen- keine Berücksichtigung der Abfragelokalität

• Lokalitätserhaltende Schlüsselabbildung- Abruf benachbarter Objekte zu konstanten

Kosten

Page 11: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 11Routing in verteilten skalierbaren Datenstrukturen

Realisierung lokalitätserhaltender Schlüsselabbildung

• Beispiel: URLsSchlüsselwerte:/iti_dke//iti_dke/lehre//iti_dke/lehre/ecommerce.html/~buchmann/index.htm/~buchmann/styles.css/~buchmann/back.jpg/~buchmann/empty.gif/~buchmann/logo.jpg/~buchmann/progrs.htm/~buchmann/arrowleft.gif/~buchmann/main.gif/~buchmann/arrowright.gif

Schlüsselraum des CAN:

Page 12: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 12Routing in verteilten skalierbaren Datenstrukturen

Experiment 2: Schlüsselabbildung

Zahl der Messages konnte nahezu halbiert werden!

Gleichverteilung (Zufallsgenerator)Mittlere Anfragelokalität (Künstliche Websurfer)

Hohe Anfragelokalität (Webserver-Log)

Page 13: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 13Routing in verteilten skalierbaren Datenstrukturen

Vorschlag 3: Caching-Strategie

• Optimierung des Kontaktdaten-Cache durch Wahl einer Verdrängungsstrategie

• Experimente: Random, LRU, LRD, LFU, ISD• ISD: Inverse Square Distribution

- für P2P-Datenstrukturen entwickelt- Wahrscheinlichkeit für ein Node im Cache

umgekehrt proportional zum Quadrat der überbrückten Distanz

• Aber: Ersetzungsstrategie hat keinen großen Einfluß

Page 14: Otto-von-Guericke – Universität Magdeburg Arbeitsgruppe Data and Knowledge Engineering Institut für Technische und Betriebliche Informationssysteme Effizientes

Otto-von-Guericke Universität MagdeburgInstitut für Technische und Betriebliche Informationssysteme

Erik Buchmann Folie 14Routing in verteilten skalierbaren Datenstrukturen

Zusammenfassung und Ausblick• wir haben:

- ein prototypisches, flexibel anpassbares Content-Adressable Network

- einen Cluster, auf dem auch 500.000 parallel arbeitende Peers möglich sind

- erste Anwendungen und realistische Testszenarien• erste Erfolge:

- winziger Cache für Kontaktdaten beschleunigt Routing - die lokalitätserhaltende Abbildung der Anwendungs-

schlüssel steigert die Routing-Performanz weiter• zukünftige Vorhaben:

- Entwicklung von Anwendungen, Replikation, Lastausgleich