Titelblatt des Buchs
Reginald Ferber Information Retrieval
Suchmodelle und Data-Mining-Verfahren für Textsammlungen und das Web

Position im Angebot Information Retrieval -> Information Retrieval und das Web -> Suche im World Wide Web -> Spezialisierte und verteilte Sammlungen
Stichwörter dieser Seite Server, Peer-to-Peer-Netze, Client, Napster, boolesches Retrieval, Vektorraummodell, Metadaten, Stichwort, XML, RDF, Lebensdauer, time to live, TTL
Navigation Zurück ]    [ Inhalt ]    [ Stichwörter ]    [ Feedback ]    [ Home ]

4.3.5.3: Peer-to-Peer-Netze

In den bisher beschriebenen verteilten Sammlungen übernehmen einzelne Server über längere Zeit unter einer festen Adresse verhältnismäßig genau spezifizierte Aufgaben. Bei so genannten Peer-to-Peer-Netzen ist das anders. In diesen Rechnernetzen werden Dateien zwischen den Rechnern ausgetauscht, sodass jeder Rechner als Client und als Server fungieren kann. Dabei geht das Modell davon aus, dass jeder Rechner in einem Peer-to-Peer-Netz nur mit einigen der anderen Rechner verbunden ist, nicht aber mit allen. Weiter wird angenommen, dass die beteiligten Rechner nicht primär für ihre Rolle in der verteilten Sammlung betrieben werden, sondern dass das Netzwerk "nebenbei" auf Rechnern läuft, die zu anderen Zwecken betrieben werden. Das heißt, dass ein Rechner in einem Peer-to-Peer-Netz weder dauernd verfügbar noch besonders zuverlässig oder speziell für die Bedürfnisse des Netzes konfiguriert zu sein braucht.

Bekannt geworden sind Peer-to-Peer-Netze durch so genannte Tauschbörsen wie Napster und die zahlreichen Nachfolger wie Gnutella, Morpheus, Direct Connect oder E-donkey, also Systeme, die häufig dazu verwendet werden, Musik- und Videodateien zu tauschen. Da es sich bei vielen der angebotenen Musiktitel um urheberrechtlich geschützte Aufnahmen handelte, versuchte die Musikindustrie den Betrieb der Tauschbörsen durch Gerichtsurteile einzuschränken. Bei Napster ist das gelungen, weil die von den Teilnehmenden freigegebenen Dateien zentral erfasst und die Kontakte zwischen den Netzrechnern durch diesen Server vermittelt wurden.

Andere Peer-to-Peer-Modelle verwenden dezentrale, sich mehr oder weniger selbst organisierende Netze von Rechnern, um nach aktuell angebotenen Dateien zu suchen. Diese Netze erlauben einen hohen Grad an Anonymität - teilweise ist es für die einzelnen Rechner sogar unmöglich, den ursprünglichen Absender einer Anfrage zu ermitteln, weil diese über mehrere Zwischenstationen weitergereicht wurde und die Antwort mit der Adresse des Rechners, auf dem die gesuchte Datei gefunden wurde, über dieselben Stationen zurückgereicht wird. Erst für die Übertragung der Datei wird eine direkte Verbindung zwischen den beiden Rechnern hergestellt.

Für die Suche in einem Peer-to-Peer-Netz können prinzipiell Suchmechanismen eingesetzt werden, wie sie auch für zentralisierte Information-Retrieval-Systeme verwendet werden - wie boolesches Retrieval, das Vektorraummodell oder die Beschreibung durch Metadaten, auf denen mit diesen Verfahren gesucht wird.

Es kommen aber weitere Anforderungen hinzu:

  • Wenn kein zentraler Server eingesetzt werden soll, der die Verbindungen vermittelt, müssen die Algorithmen so zerlegt werden, dass sie auf verschiedenen Servern ablaufen können.
  • In einem dynamischen und unzuverlässigen Netzwerk können und sollten Dokumente oder Dateien mehrmals vorliegen, um die am besten erreichbare Kopie zu laden oder große Dateien sogar in Teilstücken von verschiedenen Quellen zu kopieren.
Um das zu erreichen, kann man die Suche in Peer-to-Peer-Netzen in zwei Schritte aufteilen: in die inhaltliche Suche nach einem Dokument und in die Suche nach Dateien im Netz, die dieses Dokument enthalten. Dazu wird jeder Datei mit einer kryptografischen Hash-Funktion eine eindeutige Kennung einer festen Länge zugeordnet, die nur vom Inhalt der Datei abhängt. Bei der inhaltlichen Suche wird die Kennung der gesuchten Dokumente bestimmt. Bei der Suche im Netz wird dann nach Dateien mit dieser Kennung gesucht.

Für die inhaltliche Suche werden bei vielen Systemen Metadaten erhoben, teilweise nur als Stichwörter, aber auch als XML- oder RDF-formatierte Datensätze. Das ist natürlich besonders wichtig für Musikstücke und Filme, die als Audio- und Video-Dateien gespeichert sind, da bei diesen Datenformaten eine automatische inhaltliche Erschließung schwierig ist.

Suchstrategien in Peer-to-Peer-Netzen

Die Suche in diesen Metadaten kann auf verschiedene Weise organisiert werden. Am einfachsten ist es, eine Anfrage, die auf einem Rechner des Netzes gestellt wird, jeweils an alle Nachbarn - also an alle Rechner, mit denen der Ausgangsrechner verbunden ist - weiterzuleiten. Diese Rechner suchen in ihren lokalen Metadatensätzen, schicken die Ergebnisse an den Ausgangsrechner zurück und leiten die Anfrage an ihre eigenen Nachbarn weiter. Auf diese Weise kann prinzipiell das gesamte Peer-to-Peer-Netz abgesucht werden. Das Verfahren ist allerdings für große Netze aufwändig und langsam, besonders wenn alle Ergebnisse eines unzuverlässigen Netzes abgewartet werden sollen.

Um die Suche zu beschleunigen, kann man deshalb eine Lebensdauer oder time to live (TTL) einführen, die angibt, wie oft eine Anfrage maximal an Nachbarrechner weitergegeben werden darf. Die Lebensdauer begrenzt die Suche unabhängig davon, welche Dokumente gefunden wurden. Um die Dauer der Suche von den Suchergebnissen abhängig zu machen, kann man ein Kriterium dafür festlegen, wann man eine Anfrage als zufriedenstellend beantwortet ansieht. Sobald dieses Kriterium erfüllt ist, kann die Suche vom Ausgangsrechner abgebrochen werden. In Verbindung mit einem solchen Kriterium können Suchstrategien verwendet werden, die die Teilmenge des Netzes, auf der gesucht wird, schrittweise vergrößern, solange das Kriterium nicht erfüllt ist (siehe z.B. Yang und Garcia-Molina, 2001 [->] ).

Neben diesen allgemeinen Suchstrategien kann man die Auswahl der Rechner, an die die Anfrage weitergeleitet wird, nach inhaltlichen und qualitativen Kriterien steuern. So kann man versuchen, die Rechner auszuwählen, die viele Dokumente zum Thema der Anfrage anbieten, oder die, die in der Vergangenheit besonders schnell oder zuverlässig geantwortet haben. Dazu müssen die einzelnen Rechner des Netzes aber Informationen über ihre Nachbarn in geeigneter Form speichern - also z.B. eine Stichwortliste für die Inhalte oder Relevanzbeurteilungen und Antwortzeiten für die Qualität, Zuverlässigkeit und Geschwindigkeit. Damit ergibt sich - ähnlich wie bei der Metasuche - ein zweistufiges Suchproblem, bei dem zunächst die besten Rechner ermittelt werden und anschließend auf diesen Rechnern gesucht wird. Bei diesen Verfahren ist es zwar möglich, dass einzelne Rechner oder Knoten des Netzes auch inhaltlich auf ein Thema spezialisiert sind, das System selbst nimmt darauf aber keinen Einfluss.

Ein anderer Ansatz, die Suche auf Peer-to-Peer-Netzen zu beschleunigen, besteht darin, möglichst vollständige Indexinformationen für das gesamte Netz zu erzeugen und sie verteilt auf den Rechnern des Netzes zu speichern. Das bedeutet allerdings, dass die Nutzenden bereit sein müssen, diese Daten, die in der Regel nichts mit den von ihnen selbst angebotenen Dateien zu tun haben, auf ihren Rechnern speichern zu lassen. Wenn die Dokumente als Vektoren repräsentiert werden, kann hier ein Verfahren wie das mehrstufige Single-Pass-Cluster-Verfahren von SMART eingesetzt werden (siehe Abschnitt 1.3.6.6.3 ). Dabei muss allerdings darauf geachtet werden, dass der Zugriff auch dann noch gesichert ist, wenn einzelne Rechner des Peer-to-Peer-Netzes nicht zur Verfügung stehen.

Aktualisierung der Indexeinträge

Wenn Daten über andere Rechner in einem Netz gespeichert und zur Weiterleitung von Anfragen verwendet werden, ist es gerade in den instabilen und dynamischen Peer-to-Peer-Netzen wichtig, diese Daten aktuell zu halten.

Dazu gibt es drei nahe liegende Ansätze:

  • Wenn auf einem Rechner ein neues Dokument angeboten wird, schickt dieser die Metadaten an seine Nachbarn, die ihre Daten aktualisieren und die Metadaten an die nächsten Nachbarn weiterleiten. Die Aktualisierung wird also von den Anbietern nur ausgelöst, wenn neue Daten vorliegen. Dadurch werden aber zunächst nur die Rechner erreicht, die zu diesem Zeitpunkt aktiv sind.
  • Jeder Rechner im Netz sendet von Zeit zu Zeit eine Anfrage an seine Nachbarn und aktualisiert seine Daten auf Grund der eingehenden Antworten. Dadurch ist jeder Rechner selbst dafür zuständig, dass seine Daten aktuell sind. Dabei werden natürlich viele Anfragen gestartet, die keine neuen Daten liefern.
  • Die Daten werden immer dann aktualisiert, wenn ein Rechner Ergebnisse einer Anfrage erhält oder die Ergebnisse einer Anfrage eines anderen Rechners weiterleitet. In diesem Fall entsteht kein zusätzlicher Datenverkehr, es besteht aber die Gefahr, dass Rechner, über die keine Informationen im Netz gespeichert sind, nicht wahrgenommen werden.

In der Regel ist es sinnvoll, eine Kombination dieser Strategien einzusetzen.

Navigation Zurück ]    [ Inhalt ]    [ Stichwörter ]    [ Feedback ]    [ Home ]
Position im Angebot Information Retrieval -> Information Retrieval und das Web -> Suche im World Wide Web -> Spezialisierte und verteilte Sammlungen
Dieser Abschnitt und seine Unterabschnitte
Inhalt Stichwörter in der Reihenfolge ihres AuftretensStichwörter alphabetisch sortiert
4.3.5.3Peer-to-Peer-Netze
Server, Peer-to-Peer-Netze, Client, Napster, boolesches Retrieval, Vektorraummodell, Metadaten, Stichwort, XML, RDF, Lebensdauer, time to live, TTL boolesches Retrieval, Client, Lebensdauer, Metadaten, Napster, Peer-to-Peer-Netze, RDF, Server, Stichwort, time to live, TTL, Vektorraummodell, XML

Diese Seiten sind urheberrechtlich geschützt. Die Verantwortung für die Inhalte und die Rechte der Online-Version liegen beim Autor Reginald Ferber, Münster (Westf). Die Rechte der gedruckten Version beim dpunkt.verlag, Heidelberg. Die Weiterverwendung von Texten oder Abbildungen - auch auszugsweise - ist ohne die schriftliche Zustimmung des Autors Reginald Ferber bzw. des dpunkt.verlags nicht gestattet.

Es wird darauf hingewiesen, dass die verwendeten Soft- und Hardware-Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im Allgemeinen warenzeichen-, marken-, oder patentrechtlichem Schutz unterliegen. Alle Angaben und Programme wurden mit großer Sorgfalt kontrolliert. Trotzdem kann keinerlei Haftung für Schäden irgendwelcher Art übernommen werden, die sich im Zusammenhang mit der Nutzung dieser Seiten ergeben.

Diese HTML-Datei wurde am 27-10-2003 erzeugt.