Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Transitive Hülle mit geometrischem Ansatz

Ähnliche Präsentationen


Präsentation zum Thema: "Transitive Hülle mit geometrischem Ansatz"—  Präsentation transkript:

1 Transitive Hülle mit geometrischem Ansatz
Seminar Indizieren und Anfragen von Graphen in Datenbanken WS 2007/2008 Thema Transitive Hülle mit geometrischem Ansatz Habib Muhammad Shakhawat

2 Transitive Hülle mit geometrischem Ansatz
Übersicht Motivation Ziel definieren Mögliche Probleme Graphentheoretische Definitionen Kurzer Überblick in bisherige Lösungen Vorschlag mit geometrischem Ansatz Leistungsvergleich

3 Transitive Hülle mit geometrischem Ansatz Motivation
Hauptaufgabe einer Datenbank besteht darin die Beziehungen zwischen verschiedene Datenobjekte zu finden und analysieren. Daten als gerichteter Graph Bio-Informatik Semantic Web Computer Vision usw.

4 Transitive Hülle mit geometrischem Ansatz Motivation
u und v sind zwei Datenobjekte Stehen u und v in einer Beziehung ?

5 Transitive Hülle mit geometrischem Ansatz Zielformulierung
Gegeben Ein gerichteter Graph G = (V,E) u, v  V Ziel: Schnelle Antwort auf der Frage Gibt es einen Pfad von u nach v in G?

6 Transitive Hülle mit geometrischem Ansatz Wo sind die Probleme ?
Erreichbarkeitsinformation über den gesamten Graph notwendig Reale Graphen sind groß Preprocessing notwendig Höhe Speicher- und Zeitbedarf

7 Transitive Hülle mit geometrischem Ansatz Einige Definitionen
Graph: Ein Graph G=(V,E) besteht aus eine endliche Menge von Knoten V und Kanten E . Gerichtet 1 2 3 4 1 2 3 4 Ungerichtet G

8 Transitive Hülle mit geometrischem Ansatz Einige Definitionen
Pfad: Ein Weg indem kein Knoten mehrfach vorkommt. Kreis: Ein geschlossener Kantenzug, in dem kein Knoten mehrfach vorkommt. 1 1 1 2 2 2 Starke Zusammenhangskomponente (SZK): Für jede bel. u und v in V gilt: es ex. ein Pfad aus u nach v in G. 4 4 4 3 3 3 5

9 Transitive Hülle mit geometrischem Ansatz Einige Definitionen
H(G)=(V, E´) ist transitive Hülle von G=(V, E) gdw. E´={(u,v)|u,vV und Pfad von v nach w in E} 1 2 Nach  1 Von  4 3 n x n Erreichbarkeitsmatrix

10 Transitive Hülle mit geometrischem Ansatz Einige Definitionen
Problematik bei Transitive Hülle Sehr hoher Zeitaufwand bei der Berechnung Warshall Sehr hoher Speicherbedarf Worst-Case

11 2-hop cover (Cohen et al, 2002)
Transitive Hülle mit geometrischem Ansatz Kurzer Überblick: Bisherige Lösungen 2-hop cover (Cohen et al, 2002) Pfade als Konkatenation je zweier Pfadteilstücke zu repräsentieren Teilstücke werden an so genannten Hop – Knoten zusammengefügt a b c d e f C = Hop-Knoten

12 ⋈ Beispiel: 2-hop cover = cin cout
Transitive Hülle mit geometrischem Ansatz Kurzer Überblick: Bisherige Lösungen Beispiel: 2-hop cover a c d e f b a b c d e f c d e f a c b = cin cout Überdeckte Kanten in TC

13 Transitive Hülle mit geometrischem Ansatz Kurzer Überblick: Bisherige Lösungen
Vorteil: 2-Hop Cover Statt der ganzen transitiven Hülle speichert man nur die Pfade zu den Hop-Knoten Größe der 2-hop cover ist kleiner als die Transitive Hülle Antwortzeiten sind konstant

14 Transitive Hülle mit geometrischem Ansatz Kurzer Überblick: Bisherige Lösungen
Nachteile: 2-Hop Cover Transitive Hülle muss vor der Überdeckung durch Hop-Knoten zunächst vollständig materialisiert werden Transitive Hülle als Grundmenge für 2-hop cover Schlechte Laufzeit bei der Berechnung der Hop-Knoten

15 Transitive Hülle mit geometrischem Ansatz Kurzer Überblick: Bisherige Lösungen
Beispiel: Konstruktionszeit und Speicherbedarf Eingabe: Ein Teilgraph von DBLP mit 344,992,370 Verbindungen System: SUN-Fire mit 64 Prozessoren und 180 GB RAM Große 2-hop cover: 1,289,930 Einträge Speicherverbrauch: 80 GB RAM Zeit: 45 Stunden und 23 Minuten

16 Transitive Hülle mit geometrischem Ansatz Kurzer Überblick: Bisherige Lösungen
Wünschenswert Ohne aufwendige Berechnung der Transitive Hülle auszukommen Möglich viele Informationen im Speicher halten

17 Wünsche werden erfüllt durch geometrischen Ansatz nach Cheng et al.
Transitive Hülle mit geometrischem Ansatz MaxCardinality-G (Cheng et al.) Wünsche werden erfüllt durch geometrischen Ansatz nach Cheng et al. Berechnung der Transitive Hülle nicht otwendig Bestimmung der 2-Hop Cover durch Rechteckoperationen Visualisierung der Erreichbarkeitsmatrix durch Rechtecke in einem 2-dim. Gitter

18 Gegeben: Ein gerichteter Graph G
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G (Cheng et al.) Gegeben: Ein gerichteter Graph G Maxcardinatily-G berechnet 2-Hop Cover in 3 Schritten Konstruiere aus G einen gerichteten kreisfreien Graph G Bestimme 2-Hop Cover für G Bestimme 2-Hop Cover für G aus dem 2-Hop Cover von G

19 Finde alle starken Zusammenhangs-komponenten (SZK) in G.
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Konstruktion eines kreisfreien Graph Finde alle starken Zusammenhangs-komponenten (SZK) in G. 3 7 12 8 Ersetze SZK mit einen zufällig ausgesuchten Knoten v´aus dem SZK Füge alle ein- und ausgehende Kanten von SZK zu v´hin. 4 10 6 5 9 1 11 G G

20 Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Konstruktion eines kreisfreien Graph
Vorteile: G hat weniger Knoten und Kanten als G (ausgenommen, G hat keine SZK) Mit zunehmender Kantenanzahl steigt die Wahscheinlichkeit der SZK Je mehr SZK desto kleiner ist G Alle Knoten in einem SZK haben den selben Hop-Knoten. Vermeidung unnötiger Berechnungen 12 3 8 4 1 5 11 9 G

21 Gwird zerlegt in Jeder Knoten v in T G
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Intervall Labeling [1,9] 9 [1,6] Gwird zerlegt in Spannenden Baum T Nicht-Baumkanten EN Jeder Knoten v in T bekommt min. ein Intervall [s, e] e: Postorder Nummer des Knotens Vergabe bei Postorder Traversal s: Kleinste Postorder Nummer seiner Nachfolger 6 3 8 7 [2,2] 12 8 2 4 [7,7] [8,8] 5 5 [3,5] 1 1 [1,1] 4 9 [3,4] 11 [3,3] G 3

22 Nicht-Baumkanten EN G
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Intervall Labeling Nicht-Baumkanten EN Ist u, v  EN, so bekommt u alle Intervalle von v und alle Vorgänger von u ebenso Intervalle können zusammengefügt werden .z.B. [5, 9] und [10,15] zusammengefügt in [5, 15] Falls ein Intervall in einem Anderen enthalten ist, kann eliminiert werden [1,9] 9 [1,6] 6 3 8 7 [2,2] [1,1] 12 8 2 4 [3,3] [7,7] [8,8] 5 5 [3,3] [3,5] 1 [1,1] 1 [1,1] [3,3] 4 9 [3,4] 11 [3,3] 3 G

23 Berechne Postorder Nr. und die Intervall Labels für G
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Reachability Table Konstruiere aus G (V, E) einen zusätzlichen Graph G (V, E), so dass | V|=| V| (v, u) ist eine Kante in E, falls (u, v) eine Kante in E ist Berechne Postorder Nr. und die Intervall Labels für G Speichere die Informationen in einer Reachability Table

24 Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Reachability Table
11 9 3 12 1 8 4 5 5 4 8 1 3 12 9 11 G G

25 Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Reachability Map
Virtuelle Darstellung der Reachability Table als Reachability Map M durch n x n Gitter x-Achse: Postorder Nr. in G y-Achse: Postorder Nr. in G

26 Wenn po(w)  I(v), dann M(po(w), po(v))=true
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Reachability Map Beispiel: po(9) ∈ I(5)  M(4,6)=true Wenn po(w)  I(v), dann M(po(w), po(v))=true x

27 f(u,v) = 1, falls v aus u erreichbar ist, sonst 0
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Reachability Map Funktion f zuordnet jedes Knotenpaar u, v in Gin einer Zelle (x(v), y(u)) in M, wobei x(w)=po(w) po: Postorder Nr. in G y(w)=po(w) po: Postorder in G f(u,v) = 1, falls v aus u erreichbar ist, sonst 0 Erreichbarkeit: aus 3 zu 9 f(3,9)=(x(9),y(3))=(4,5)=1 x

28 Algorithmus Schritt 1: Suche max. Fläche Schritt 2: Schritt 3:
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Algorithmus Algorithmus Schritt 1: Suche max. Fläche Von Knoten w Noch nicht überdeckt Schritt 2: w wird neuer Hop-Knoten Erzeuge 2-Hop Labeling für w Speichere w als Hop-Knoten Schritt 3: Weiter mit Schritt 1, solange w noch vorhanden ist.

29 Konstruktion: Recheck für w als Hop-Knoten
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Algorithmus Konstruktion: Recheck für w als Hop-Knoten Beispiel: w=1 I(1)=((s1, e1)=[1,1]), (s2, e2)=[3,3]) I(1)=(s1´, e1´)=[1,5] Bilde die Rechtecke durch kombinationen aus I(w) und I(w). Rechtecke: ((s1, s1´), (e1, e1´))=((1,1), (1,5)) ((s2, s1´), (e2, e1´))=((3,1), (3,5))

30 Rect(BC1  BC2) = Rect(BC1)  Rect(BC2)
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Rechteckoperationen Rect(BC1  BC2) = Rect(BC1)  Rect(BC2) Rect(BC1  BC2) = Rect(BC1)  Rect(BC2) Rect(BC1 − BC2) = Rect(BC1) − Rect(BC2)

31 Algorithmus Schritt 1: Suche max. Fläche Schritt 2: Schritt 3:
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Algorithmus Algorithmus Schritt 1: Suche max. Fläche Von Knoten w Noch nicht überdeckt Schritt 2: w wird neuer Hop-Knoten Erzeuge 2-Hop Labeling für w Speichere w als Hop-Knoten Schritt 3: Weiter mit Schritt 1, solange w noch vorhanden ist.

32 Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Algorithmus

33 Gefundene 2-hop cover In Out 2-hop cover
Transitive Hülle mit geometrischem Ansatz Maxcardinality-G: Algorithmus 8 12 1 11 3 4 5 9 Gefundene 2-hop cover 3 3 5 9 8 1 12 8 12 4 5 1 9 11 In Out 2-hop cover

34 Transitive Hülle mit geometrischem Ansatz Leistungsvergleich
Messung am generierten und reale Daten Cohen´s Algorithmus gegen Cheng´s Cohen Cheng Fazit: Gefundene 2-hop cover sind ähnlich

35 Transitive Hülle mit geometrischem Ansatz Leistungsvergleich
Messung am generierten und reale Daten Cohen´s Algorithmus gegen Cheng´s Cohen Cheng Fazit: Cheng´s Algorithmus ist schneller als Cohen´s

36 Transitive Hülle mit geometrischem Ansatz Literatur
Cheng, J., Yu, J.X., Lin, X., Wang, H. & Yu, P.S. Fast Computation of Reachability Labeling for Large Graphs. EDBT Conference 2006 R. Agrawal, A. Borgida, and H. V. Jagadish. Efficient management of transitive relationships in large data and knowledge bases. In Proc. of SIGMOD’89, 1989. E. Cohen, E. Halperin, H. Kaplan, and U. Zwick. Reachability and distance queries via 2-hop labels. In Proc. of SODA’02, 2002

37 Transitive Hülle mit geometrischem Ansatz
Fragen ? Danke für die Aufmerksamkeit


Herunterladen ppt "Transitive Hülle mit geometrischem Ansatz"

Ähnliche Präsentationen


Google-Anzeigen