Title: Otto-von-Guericke
1- 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
- buchmannkboehm_at_iti.cs.uni-magdeburg.de
2Merkmale 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
3Peer-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.
4Content-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
5Routing im CAN
- Operationen put(Key,Value), get(Key)
- Transformation der Anwendungs-schlüssel in
CAN-Schlüssel (Schlüssel) ? k0,k1,...,kn
"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
6Vorschlag 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
7Fragen 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
8Durchfü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
9Experiment 1 Cache-Größe
- bereits geringe Cache-Größe verringert Messages
um 2/3
10Vorschlag 2 Lokalitätserhaltende
Schlüsselabbildung
- Eingriff bei der Abbildung von Anwendungsschlüssel
n 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
11Realisierung lokalitätserhaltender
Schlüsselabbildung
Schlüsselraum des CAN
Schlüsselwerte /iti_dke/ /iti_dke/lehre/ /iti_dke
/lehre/ecommerce.html /buchmann/index.htm /buchm
ann/styles.css /buchmann/back.jpg /buchmann/empt
y.gif /buchmann/logo.jpg /buchmann/progrs.htm /
buchmann/arrowleft.gif /buchmann/main.gif /buchm
ann/arrowright.gif
12Experiment 2 Schlüsselabbildung
Gleichverteilung (Zufallsgenerator) Mittlere
Anfragelokalität (Künstliche Websurfer) Hohe
Anfragelokalität (Webserver-Log)
- Zahl der Messages konnte nahezu halbiert werden!
13Vorschlag 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ß
14Zusammenfassung 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