Zum Inhalt springen

YaCy

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 19. Mai 2006 um 20:24 Uhr durch 83.236.13.12 (Diskussion) (Nachteile). Sie kann sich erheblich von der aktuellen Version unterscheiden.
YaCy

Basisdaten

Entwickler Michael Christen
Erscheinungsjahr 2004
Aktuelle Version 0.45
(1. Mai 2006)
Betriebssystem nahezu alle (dank JavaJRE/J2SE)
Programmier­sprache Java[1]
Kategorie SuchmaschineProxy
Lizenz GPL
deutschsprachig ja
yacy.net

YaCy (sprich: Jacky, wie Blacky - ausgeschrieben: Yet another Cyberspace) ist eine Suchmaschine, die nach dem Peer-to-Peer-Prinzip – kurz P2P – arbeitet. Dabei gibt es keinen zentralen Server, sondern alle Teilnehmer daran sind gleichwertig.

Dabei kann jeder Peer-Betreiber im YaCy-Netz suchen, und wenn er möchte zum Index beitragen, indem er einen Webcrawler losschickt, oder einfach alle Seiten, die er besucht über den YaCy-Proxy indexieren lassen. Wenn nun irgendein anderer Peer im YaCy-Netzwerk eine Suche startet, kann er alle Seiten finden, die andere Peers indiziert haben, die zum Zeitpunkt der Suche online sind. Durch das dezentrale Prinzip ist YaCy ausfallsicher.

Vorteile & Nachteile

Vorteile

  • Die mit YaCy aufgebaute globale Suchmaschine ist praktisch ausfallsicher, da immer ein Teil des Netzwerks erreichbar sein wird.
  • Die Internetnutzer sind durch YaCy als Suchmaschine unabhängig von Firmen, deren Ranking (das diese sich evtl. bezahlen lassen) und deren Filterung (und gar evtl. Zensur).
  • Die Software ist Open Source, wurde unter der GNU General Public License veröffentlicht und ist kostenlos.
  • Da die Indexierung über den Proxy am jeweiligen Client stattfindet, lassen sich somit Seiten aus dem Deep Web oder nicht öffentlichen Netzen (z.B. Tor oder freenet) indexieren, die ein Crawler nicht erschliessen kann.

Nachteile

  • Da nicht jedes Peer den gesamten Index speichern kann, kann es durch Ausfall oder Abschaltung einzelner (großer) Peers zu Beinträchtigungen des Gesamtindex kommen. Dieser Nachteil ist um so stärker je weniger Peers sich aktiv am YaCy-Netzwerk beteiligen.
  • YaCy basiert auf Java und benötigt deshalb proprietäre Komponenten zum Betrieb. Obwohl YaCy selbst unter der GPL steht, lässt es sich somit nicht mit ausschließlich freier Software betreiben.

Das Programm

Das Herzstück der Suchmaschine ist anders als bei anderen Suchmaschinen nicht eine zentrale Seite, sondern ein Computerprogramm. Dieses ist in Java geschrieben und läuft daher auf fast allen Betriebssystemen.

Gekoppelt mit dem P2P-System läuft ein Proxy-Server, der automatisch die meisten weitergereichten Seiten indiziert. Dies findet allerdings nicht bei Seiten statt, denen via GET oder POST weitere Daten übergeben werden (z.B. Seiten in einem Login-Bereich). Somit ist sichergestellt, dass auch wirklich nur öffentlich zugängliche Daten indiziert werden.

Der Zugriff auf die Suchfunktionalität erfolgt über eben diesen lokal laufendem Server, in dem über eine gewohnte Suchmaske der Suchbegriff oder die Suchbegriffe eingegeben werden. Die Anzeige der Ergebnisse erfolgt hier ebenfalls wie gewohnt als HTML-Seite.

Weitere Besonderheiten

Weiters bietet Yacy eine zusätzliche Top-Level-Domain ".yacy", die über sämtliche weiteren YaCy-Proxies erreicht werden kann und als normale Webseite geöffnet wird. Unter dieser Domain hat der Benutzer die Möglichkeit, eine eigene Website zu hinterlegen. Da das P2P-System ohnehin seine IP-Adresse seinen Peers mitteilen muss, und auch über eine eventuelle Änderung benachrichtigen, bietet sich hiermit obendrein die Möglichkeit, wenigstens für andere YaCy-Nutzer eine Homepage aufzubauen, ohne Probleme mit dynamischer Adressvergabe seitens des Providers zu haben.

Außerdem wird die Möglichkeit angeboten, Dateien auf seinem lokalen Server freizugeben, auf die andere YaCy-Benutzer nach Belieben Zugriff haben. Tatsächlich ist dies durch den HTTP-Server zwar sowieso schon der Fall, aber zusätzlich wird hier noch eine nette Übersicht angezeigt.

Weiters hat man die Möglichkeit, anderen YaCy-Nutzern simple Textnachrichten zu senden (je nach Einstellungen auch mit Dateianhängen). Auch hier bietet sich also ein Weg, verbreitete und bekannte - daher also potentiell wahrscheinlicher zensierte - Medien zu meiden.

Zusätzlich dazu ist in YaCy ein Wiki integriert, das als lokale Wissensdatenbank aufgebaut werden kann.

Technik

Das Programm basiert auf einem Webserver, der zugleich ein cachingProxy ist. Über den Webserver kann man auf das User-Interface zugreifen, um zu suchen oder dein eigenen Peer zu verwalten. Der Proxy teilt seinen Code mit dem Crawler, das heißt alle besuchten Seiten, die nicht personalisiert sind werden automatisch im Index erfasst. Außerdem bietet das YaCy-Netz eigene YaCy-Domains, die über den Proxy verfügbar sind.

Indexverteilung

Anders als bei Datei-Tauschbörsen muss das Ergebnis bei einer P2P-Suchmaschine sofort da sein. Um das zu gewährleisten, nutzt YaCy einen Distributed Hashtable (DHT). Das heißt, dass alle erfassten URLs und Wörter an die Peers geschickt werden, deren Peerhash zum entsprechenden Wordhash oder Urlhash passt. Bei einer Suche funktioniert es genau andersherum: Es wird nur auf Peers gesucht, die ihrem Hash nach URLs für das Wort kennen können.

Dadurch muss nur ein Bruchteil der Peers bei der Suche kontaktiert werden, um trotzdem gute Ergebnisse zu bekommen.

Peertypen

YaCy Unterscheidet 4 verschiedene Typen von Peers:

Virgin

Diese Peers kann man nicht finden, da ein Virgin-Peer keinerlei Kontakt zum Netz hat. Daher sieht man nur selber, wenn der Peer Virgin ist.

Junior

Der Peer ist firewalled. Andere können ihn als Junior oder Potential Peer sehen, sehen allerdings nur, wann er sich das letzte Mal gemeldet hat, und haben keinerlei Möglichkeiten festzustellen, ob er noch online ist.

Senior

Ein Seniorpeer kann von außern erreicht werden und ist ein vollwertiges Mitglied des YaCy-Netzes

Principal

Wie Senior, nur wird zusätzlich eine Seedlist hochgeladen, die andere Peers zum Bootstrap benutzen können.

Literatur

  • R. Sietmann: Wider die Monokultur. P2P-Strategien gegen die Suchmaschinen-Monopolisierung. in: c't, 2005/16, 25. Juli 2005, S.52-53 (Onlinetext)
  • YaCy. in: HAZ: Artikel als PDF (107 KB)

Vorlage:Navigationsleiste Verteilte Suchmaschinen

  1. The yacy Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Oktober 2018).