30.01.2015 Aufrufe

pdf (18647 Kb) - Fachgebiet Datenbanken und Informationssysteme ...

pdf (18647 Kb) - Fachgebiet Datenbanken und Informationssysteme ...

pdf (18647 Kb) - Fachgebiet Datenbanken und Informationssysteme ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

• similarityflooding.relationalschema enthält in RelationalSchema die Darstellung<br />

eines Relationalen Datenbankschemas, bestehend aus Relationen (RSRelation)<br />

<strong>und</strong> Attributen (RSAttribute). Die Klasse SchemaReader ermöglicht das Einlesen<br />

eines Schemas aus einer Textdatei.<br />

• similarityflooding.resultfilters implementiert die Stable Marriage zum Filtern<br />

der Ergebnisse des Similarity Flooding. SMNode stellt dabei einen Knoten bereit,<br />

zu dem in StableMarriage der entsprechende „Partner“ gesucht wird.<br />

• similarityflooding.spgraph dient zur Darstellung eines Similarity Propagation<br />

Graph (in der Klasse SPGraph), bestehend aus Kanten (SPEdge) <strong>und</strong> Knoten<br />

(SPNode)<br />

6.4. Umgang mit Graphen<br />

Da das Similarity Flooding graph-basiert arbeitet, werden intern Graphen für die Darstellung<br />

der Daten verwendet. Dabei werden hier zwei verschiedene graphische Strukturen<br />

verwendet. Die Klasse ModelGraph dient zur Darstellung eines Modell-Graphen,<br />

also einer graphischen Repräsentation eines Modells. Knoten des Modell-Graphen – dargestellt<br />

in der Klasse MGNode – haben einen Namen, ansonsten keine weiteren Informationen.<br />

Gerichtete Kanten – dargestellt in MGEdge – verbinden jeweils zwei Knoten <strong>und</strong><br />

haben eine Kantenmarkierung in Form eines Strings.<br />

Um zwei Modell-Graphen zusammenzuführen, stellt die Klasse MGtoSPGTranformation<br />

die Methode transform bereit. Diese wandelt zwei Objekte der Klasse ModelGraph in<br />

ein SPGraph-Objekt um.<br />

SPGraph ist die Darstellung eines Similarity Propagation Graph, wie er in Kapitel<br />

4 beschrieben wurde. Jeder Knoten (SPGNode) enthält dabei die zwei Namen der korrespondierenden<br />

Knoten der beiden Modelle, den Ähnlichkeitswert <strong>und</strong> eine einfache<br />

Markierung, die für die Wiederholungen des Verfahrens benötigt wird. Gerichtete Kanten<br />

(SPGEdge) verbinden jeweils zwei Knoten <strong>und</strong> speichern die Kantenmarkierung sowie<br />

den Propagation-Koeffizienten.<br />

In der Methode calculateSimilarity der Klasse SPGraph ist das eigentliche Similarity<br />

Flooding implementiert. Über die zwei Parameter number <strong>und</strong> normalizationFormula<br />

wird die Anzahl der Iterationen, nach der das Verfahren spätestens abbricht, <strong>und</strong> die<br />

verwendete Fixpunktformel festgelegt. Das Verfahren an sich wurde wie in Kapitel 4 beschrieben<br />

umgesetzt. Um zusätzliche Funktionen – wie etwa das Speichern der Ergebnisse<br />

jeder Iteration in einer Textdatei – zu ermöglichen, wurden zwar einige Codezeilen hinzugefügt,<br />

die Berechnungen der Ähnlichkeitswerte mit dem Similarity Flooding werden<br />

dadurch jedoch nicht beeinflusst.<br />

42

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!