HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen...
-
Upload
etzel-helmkamp -
Category
Documents
-
view
104 -
download
0
Transcript of HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen...
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
1Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Vorlesung Sommersemester 2003
Algorithmische Grundlagen des Internets
XIChristian Schindelhauer
HEINZ NIXDORF INSTITUTUniversität Paderborn
Fakultät für Elektrotechnik, Informatik und MathematikInstitut für Informatik
AG Theoretische InformatikAlgorithmen, Komplexitätstheorie, Paralleles Rechnen
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
2Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
ACHTUNGNeue Räume
Christian Schindelhauer•Raum:F2.315•Tel.: 60-6692
Klaus Volbert•Raum:F2.313•Tel.: 60-6722
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
3Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Webseitensuche
o PageRank [Brin&Page 98] Vergibt jeder Web-Seite einen absoluten Rang (rank)/Autorität Rang berücksichtigt Eingrad und Autorität des Eingrads Idee Seiten sind wichtig, wenn wichtige Seite auf sie zeigen
o HITS (HyperText Induced Topic Search) [Kleinberg 98] Ausgehend von einem Seitenstamm aus einer textuellen Suche Betracht Hubs (Hinweisseiten) und Autoritäten, Idee:
• Gute Hubs zeigen gute Autoritäten an• Gute Autoritäten werden von guten Hubs adressiert
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
4Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Kleinbergs HITS-Algoirhtmus(HyperText Induced Search)
o Anwendung: Textuelle Suche führt zu großen Anzahl von Treffern, z.B.
• Suche nach „windows“ Gewünschte Seite enthält nicht Suchwort
• z.B. http://www.porsche.com enthält weder „Sportwagen“ noch „Auto“
Suche nach allgemeinen Begriffen
o Idee des Algorithmus Autorität/Relevanz einer Web-Seite wird durch Links auf
Hinweisseiten (hubs) bezeugt• z.B. Eisenbahnfans sammeln Links von
Eisenbahngesellschaften Autoritäten weisen auf die Qualität von Hinweisseiten hin Ähnlicher Mechanismus wie PageRank-Algorithmus
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
5Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Basismengenauswahl
o Ideal: S ist relativ klein S enthält viele relevante
Web-Seiten S enthält die meisten
(oder viele) der wichtigstenAutoritäten
o Knotenheuristik Erweitere um Nachfolger
•da Hinweisseiten in R auf diese zeigen
Erweitere um max. d Vorgänger•um ausreichende Anzahl von Hinweisseiten zu erhalten
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
6Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Kantenmengenheuristik
o Neben Knoten werden Kanten eingeschränkt:
o Kantenmengenheuristik Lösche interne Links (innerhalb der selben Domain)
• wegen Navigationslinks• wegen Links auf Autor
Erlaube maximal m ( 4-8) Links aus gleicher Domain auf eine Seite
• wegen Werbelinks• wegen Links auf Softwaretool
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
7Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Gegenseitige Verstärkung
o Gewichtung für Autorität einer Seite i: xi
o Gewichtung für Hinweiseigenschaft einer Seite i: yi
o Autorität/Relevanz einer Web-Seite wird durch Links auf Hinweisseiten (hubs) bezeugt
o Autoritäten weisen auf die Qualität von Hinweisseiten hin
c1, c2 normieren x und y bezüglich der L2-Norm:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
8Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Der HITS-Algorithmus
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
9Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Matrixdarstellung
o Aus Adjazenzmatrix:
o Autoritäten:
o Hinweisseiten:
o Nach t Iterationen:
o D.h.
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
10Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Matrixdarstellung
o M = A AT ist symmetrische Matrix
o Für symmetrische Matrizen sind alle n Eigenwerte reell sind die n Eigenvektoren orthogonal
o Es existiert die Darstellung
o wobei für die Spaltenvektoren Si gilt
o Falls größter Eigenwert 1 > 2 konvergiert der HITS-Algorithmus
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
11Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
WWW-Lastbalancierung
o Für Surfen im Web typisch: Web-Server bieten Web-
Seiten an Web-Clients fordern Web-
Seiten an
o In der Regel sind diese Mengen disjunkt
o Eingehende Anforderungen belasten Web-Server hinsichtlich: Übertragungsbandbreite Rechenaufwand
(Zeit,Speicher)
www.google.com
www.upb.de
www.bundespraesident.de
HansHinz
Kunz
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
12Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Lastanforderungen
o Einige Web-Server haben immer hohe Lastanforderungen Z.B. Nachrichten-Sites,
Suchmaschinen, Web-verzeichnisse
Für permanente Anforderungen müssen Server entsprechen ausgelegt werden
o Andere leiden unter hohen Fluktuationen, z.B. Z.B. Web-Site des Tages,
NASA, Turniere Server-Erweiterung nicht
sinnvoll Bedienung der Anfragen aber
erwünscht
www.google.com
www.viadukt-altenbeken.de
Montag Dienstag
www.viadukt-altenbeken.de
Mittwoch
www.viadukt-altenbeken.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
13Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Lastbalancierung im WWW
o Andere leiden unter hohen Fluktuationen Server-Erweiterung nicht
sinnvoll Bedienung der Anfragen
aber erwünscht
o (Kommerzielle) Lösung Dienstleister bieten
Ausweich-(Cache) Server an Viele Anforderungen
werden auf diese Server verteilt
o Aber wie?
www.viadukt-altenbeken.de
Montag Dienstag
www.viadukt-altenbeken.de
Mittwoch
www.viadukt-altenbeken.de
www.viadukt-altenbeken.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
14Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Web-Caching
o Leighton, Lewin, et al. STOC 97 Consistent Hashing and Random
Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web
Passen bestehende Verfahren für dynamische Hash-Funktionen an WWW-Anforderungen an
o Leighton und Lewin (MIT) gründen Akamai 97
o Akaimai 2003: 550 Angestellte Ertrag 145 Mio. $ (2002) 15.000 Server in 60 Ländern
verbunden mit 1.100 lokalen Netzwerken
Web-Cache
www.altenbeken-viadukt.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
15Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Ausgangssituation
o Ohne Lastbalancierung: Jeder Browser (Web-Client) belegt
einen Web-Server für eine Web-Site
o Vorteil: Einfach
o Nachteil: Der Server muß immer für den Worst-
Case ausgelegt werden
Webseiten
Web-Server
Web-Clients
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
16Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Site Caching
o Ganze Web-Site wird auf verschiedene Web-Caches kopiert
o Browser fragt bei Web-Server nach Seite
o Web-Server leitet Anfrage auf Web-Cache um (redirect)
o Web-Cache liefert Web-Seite aus
o Vorteil: Gute Lastbalancierung für
Seitenverteilung
o Nachteil: Bottleneck: Redirect Großer Overhead durch
vollständige Web-Site-Replikationen
WebseitenWeb-Server
Web-Clients
Web-Cache
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
17Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Proxy Caching
o Jede Web-Seite wird auf einige (wenige) Web-Cache verteilt
o Nur Startanfrage erreicht Web-Server
o Links referenzieren auf Seiten im Web-Cache
o Dann surft der Web-Client nur noch auf den Web-Cache
o Vorteil: Kein Bottleneck
o Nachteil: Lastbalancierung nur implizit
möglich Hohe Anforderung an Caching-
Algorithmus
WebseitenWeb-Server
Web-Clients
Web-CacheLink
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
18Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Caching-Algorithmus
1. BalanceGleichmäßige Verteilung der Seiten
2. DynamikEffizientes Einfügen/Löschen von neuen Web-Cache-Servern
3. ViewsWeb-Clients „sehen“ unterschiedliche Menge von Web-Caches
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
19Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Ranged Hash-Funktionen
o Gegeben:
Elemente (Items) I, Anzahl: I = |I|
Caches (Buckets) B Views V ⊆ 2B
o Ranged Hash-Funktion:
Voraussetzung:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
20Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
1. Idee Hash-Funktion (I)
o Verfahren: Wähle Hash-Funktion, z.B. r(i) = a i + b
mod n• n: Anzahl Cache-Server
o Balance: Sehr gut!
o Dynamik Einfügen/Löschen von nur einem Cach-
Server Neue Hash-Funktion und vollständige
Neuzuweisung Hoher Aufwand!
9 4 2 7
35
0 1 2 3
3 i + 1 mod 4
9 4 2 7
35
0 1 2 3
2 i + 2 mod 3
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
21Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
1. Idee Hash-Funktion (II)
o Verfahren: Wähle Hash-Funktion,
z.B. r(i) = a i + b mod n• n: Anzahl Cache-
Server
o Views Verschiedene
Nummerierungen der Web-Cache notwendig
Anzahl der Duplikate proportional zu der Anzahl der Views
9 4 2 7
35
0 1 2 3
3 i + 1 mod 4
9
4 3
5
0
2
1 2
10View 1: 2i+2 mod 3View 2: 2i+2 mod 3
5
4
2
2
7
7
Ein View
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
22Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen
1. Monotonieo Seiten, die im umfassenderen View einem Cach zugewiesen
sind, werden nicht umorganisiert
View 1:
View 2:
Seiten
Seiten
Cache
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
23Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen2. Balance
Für jeden View V ist die Hash-Funktion fV(i) balanciert
View 1:
View 2:
Seiten
Seiten
Cache
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
24Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen3. Spread
Die Verbreitung σ(i) (spread) einer Seite i ist die Gesamtanzahl aller notwendigen Kopien (über alle Views)
View 1:
View 2:
View 3:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
25Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen
4. Load
View 1:
View 2:
View 3:
Die Last λ(b) (load) eines Caches b ist die Gesamtanzahl aller notwendigen Kopien (über alle Views)
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
26Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Konsistentes Hashing
o Für jede Hash-Funktion existiert eine Worst-Case-Eingabe Daher betrachtet man grundsätzlich Familien von Hash-Funktionen Genauso definieren wir Familie von Ranged-Hash-Funktionen für geg. Views
und Caches
o C: Anzahl aller Caches B und Mindestanzahl Caches pro View ist C/t
o Sei ρ = V/C konstant und I= C (Anzahl Seiten = Anzahl Caches)
Theorem
Es gibt eine Familie von ranged-Hash-Funktionen F mit den folgenden Eigenschaften
1. Jede Funktion fF ist monoton
2. Balance: Für jeden View gilt
3. Spread: Für jede Seite i ist
4. Load: Für jeden Cache b ist