Meta-Suchmaschinen - Informationssysteme
Transcription
Meta-Suchmaschinen - Informationssysteme
Meta-Suchmaschinen Ausarbeitung zum Referat im Seminar: Weltweite Datenbanken? Integration von WWW, XML und Datenbanken Klaus Kopperschmidt 22. Januar 2001 Carl-v.-Ossietzky Universität Oldenburg, Fachbereich 10 Informatik, Abteilung „Informationssysteme“ Dozent: Dipl.-Inform. Marco Grawunder 2 Abstract Der durchschnittliche WWW-Benutzer verbringt einen großen Teil seiner Zeit damit, die für ihn wesentlichen Dokumente im WWW zu suchen. Um die Suchzeit zu verringern und die Effizienz der Suche zu steigern wurden verschiedene Techniken entwickelt. Am Anfang standen vor allem Link-Listen und Kataloge. Dann folgten Suchmaschinen und schließlich Meta-Suchmaschinen. In diesem Paper wird an Hand von einigen "realen" Meta-Suchmaschinen (MetaCrawler, PrologCrawler, Inquirus und Personal Search Assistants) auf die unterschiedlichen Arten und Konzeptionierungsmöglichkeiten von Meta-Suchmaschinen eingegangen. 3 1 2 3 4 5 Einleitung .........................................................................................................4 1.1 Allgemeines..............................................................................................4 1.2 Motivation................................................................................................4 Suchdienste ......................................................................................................6 2.1 Begriffsklärung .......................................................................................6 2.2 Internet und Wachstum .........................................................................7 2.3 Probleme der Betreiber von Suchmaschinen .......................................8 Meta-Suchmaschinen ...............................................................................12 3.1 Ergebnisbehandlung.............................................................................12 3.2 Weitere Architektur Entscheidungen und deren Probleme .............14 Beispielarchitekturen von Meta-Suchmaschinen .......................16 4.1 Meta-Crawler [12] ................................................................................16 4.2 PrologCrawler [8] .................................................................................17 4.3 Inquirus [6] ............................................................................................18 4.4 Personal Search Assistants...................................................................20 Schlußbemerkungen .................................................................................20 4 1 Einleitung 1.1 Allgemeines Der vorliegende Text verzichtet auf Grund der Lesbarkeit auf die explizite Nennung der weiblichen Form von Wörtern. Es werden ausschließlich männliche Formen verwendet. Dieser Text stellt die Ausarbeitung zu einem 30-minütigem Referat mit dem Thema MetaSuchmaschinen im Seminar Weltweite Datenbanken? Integration von WWW, XML und Datenbanken im Wintersemester 2000/2001 an der Carl-v.-Ossietzky Universität in Oldenburg dar. Gegenstand des Referates ist es, in die Thematik der Meta-Suchmaschinen einen Einblick zu gewären. Zunächst wird allgemein auf die Problematik der Suche im Internet eingegangen. Es werden verschiedene Konzepte und Architekturen von Meta-Suchmaschinen vorgestellt und abschließend an Hand von den Meta-Suchmaschinen: WebCrawler, PrologCrawler, Inquirus und der Klasse der Personal Search Assistants demonstriert. 1.2 Motivation Neben Zeitung, Fernsehen, Radio, als "passive"1 Informationsquellen, und Präsensbibliotheken und Archive, "aktive" Informationsquellen, hat sich das Internet zu einer weiteren "aktiven" Informationsquelle entwickelt. Diese neue Informationsquelle stellt an die Benutzer und die Anbieter der Informationen eine große Herausforderung, da praktisch "keinerlei" Grenzen in Bezug auf Wachstum und Größe gesetzt sind. Durch diese riesige Dimension stellen sich zwei einfache Fragen: • Wie schafft der Informationsanbieter es seine Information an den, diese Information, Suchenden zu bringen? 1. Passiv in dem Sinne, daß der Benutzer die Information vorgefertigt verarbeiten kann. Aktive Informationsquellen erfordern hingegen eigenständige Erarbeitung der Information aus verschiedenen Quellen. 5 • Wie schafft der Suchende es die für ihn relevanten Informationen zu finden? Der Informationsanbieter versucht publik zu machen, daß er bestimmte Informationen besitzt und zwar an Orten, sprich Webseiten, die der potentiell Informationssuchende besuchen wird. Dabei kann es sich um sogenannte Suchdienste2 handeln. Ferner bleiben dem Informationsanbieter noch die klassischen Mittel Werbung zu betreiben, sei es nun in Printmedien, mit Flyern oder Radio- und Fernsehwerbung. Wobei klar gesagt sein muß, daß sich dieser Aufwand nach meiner Meinung nur für sehr wenige Informationen lohnt, da der Gehalt der Information den Kostenaufwand sehr häufig nicht deckt. Diese Möglichkeiten sind trotzdem noch sehr zahlreich, so daß der Suchende vor ein großes Problem gestellt wird, die für ihn relevante Information zu finden: • Wie sollte eine Internet-Recherche optimal ablaufen? • Welchen Eigenschaften muß die Recherche genügen? • Was für Möglichkeiten werden dem Suchenden geboten, um eine für ihn optimale Recherche durchzuführen? Dem Suchenden bleibt meist nur die Hilfe eines oder mehrerer Suchdienste in Anspruch zu nehmen, dabei werden an die einzelnen Suchaufträge oder deren Ergebnisse Bedingungen geknüpft. Diese Bedingungen lassen sich folgendermaßen zusammenfassen: Eine Recherche im WWW sollte, wie jede Recherche in einer Bibliothek, zwei Hauptbedingungen genügen (vgl. [5] Abschnitt 1.1): 1) Die Recherche sollte so vollständig wie möglich sein. 2) Die Resultate der Recherche sollen von hoher Qualität sein, wobei die Qualität vom Suchenden bestimmt wird. Da die meisten Recherchen einem gewissen Zeitdruck unterliegen, kann diesen Bedingungen noch eine dritte Dimension hinzugefügt werden: 3) Das Ergebnis soll schnell verfügbar sein. Dies sind auch die Hauptkriterien, nach denen Suchdienste bewertet werden. 2. Die Erklärung der Begriffe erfolgt in Abschnitt 2.1 6 2 2.1 Suchdienste Begriffsklärung Im Zusammenhang mit der Suche im Internet müssen einige Begriffe genauer geklärt werden (vgl. [5] Abschnitt 2.1). Der Begriff Suchdienst ist die allgemeinste Form, unter ihm werden alle Dienste zusammengefaßt, die bei der Suche im Internet helfen sollen. Als Katalog oder Directory werden manuell administrierte Webseiten mit Linksammlungen zu den einzelnen Stichpunkten bezeichnet. Beispiele für Kataloge wären http://www.lycos.de und http:// www.yahoo.com. Im Gegensatz zu Katalogen benutzt die Suchmaschine Programme, die Robots, Spider oder Crawler genannt werden, um die eigene Datenbank (voll- oder teilindizierte Webseiten) auszubauen. Der Suchende kann über ein Eingabeformular Anfragen an die Datenbank stellen und erhält eine in der Regel gewichtete oder bewertete Linkliste zurück. Bsp.: http://www.hotbot.com, http://www.google.com usw. Es existieren diverse Webseiten, die als all-in-one-form bezeichnet werden können. Die Eigenschaft dieser all-in-one-form ist, daß die veschiedenen Eingabeformulare von Suchmaschinen auf einer Webseite vereinigt werden, aber die Anfrage nicht an alle Suchmaschinen weiterleitet, sondern nur an die Suchmaschine für die das Eingabeformular ist. Unter einer Meta-Suchmaschine hingegen ist ein Automat zu verstehen, der eine Anfrage entgegen nimmt und diese gleichzeitig an verschiedene Suchmaschinen weiterleitet. Die Ergebnisse werden von der Meta-Suchmaschine gesammelt und dem Benutzer präsentiert. Bsp.: http://www.metacrawler.com, http://www.highway61.com usw. Bei Meta-Suchmaschinen kann jetzt noch zwischen client-based und server-based unterschieden werden. Wenn der Automat auf dem Rechner des Benutzers läuft wird er als client-based bezeichnet. Bsp.: http://www.webferret.com usw. Wenn der Automat als Server läuft und die Anfragen von vielen Benutzern erledigt, wird er als server-based bezeichnet. Bsp.: http:// www.metacrawler.com usw. Von manchen wird eine all-in-one-form ebenfalls als Meta-Suchmaschine angesehen. Im weiteren Verlauf dieser Arbeit wird der all-one-form keine Beachtung geschenkt. 7 2.2 Internet und Wachstum Mit der ständig wachsenden Zahl der Internetnutzer und Informationsanbieter im Internet wird es immer schwieriger an die für den Nutzer relevanten Informationen zu kommen. Diese Entwicklung läßt sich sehr schön an einigen Zahlen und Grafiken sehen. Im May 1999 hat der Internet-Suchdienst AltaVista nach eigenen Angaben ca. 27% der Web-Seiten im Internet indiziert. Im November 2000 hat die Suchmaschine Google bereits 600.000.000 Webseiten indiziert und insgesamt sind Google 1.200.000.000 Webseiten bekannt.[2] GG=Google, FAST=FAST, WT=WebTop.com, INK=Inktomi, AV=AltaVista, NL=Northern Light, EX=Excite, Go=Go (Infoseek) Abb. 1:Vergleich der Anzahl von einzelnen Suchmaschinen indizierten Webseiten Quelle: www.searchenginewatch.com, 08.11.2000 Eine im Juli 2000 vom Internet Software Consortium durchgeführte Messung des Internet ergab 93.047.785 Top-Level Domain Namen [1]. Bei einer konservativen Schätzung von 100 Webseiten pro Domain würde es weit mehr als 9,3 Milliarden Webseiten geben. Ein Artikel in der Zeitschrift "Test" [10] der Stiftung Warentest bezieht sich auf eine amerikanische Studie, nach der das sogenannte Deep Web, also der den Suchmaschinen nicht bekannte Teil des World Wide Web, ca. 550.000.000.000 Webseiten umfaßt. 8 GG=Google, FAST=FAST, WT=WebTop.com, INK=Inktomi, AV=AltaVista, NL=Northern Light, EX=Excite, Go=Go (Infoseek) Die gestrichelte Linie spiegelt eine mögliche Anzahl der tatsächlich existierenden Webseiten wieder und wurde für diese Arbeit der Grafik hinzugefügt. Abb. 2:Entwicklung der Größen von Suchmaschinen Vgl. www.searchenginewatch.com, 08.11.2000 2.3 Probleme der Betreiber von Suchmaschinen Aus der riesigen Zahl von Webseiten läßt sich schließen, daß eine Suche nach den gewünschten Informationen per Hand oder mit Hilfe von Katalogen nicht oder nur eingeschränkt in Frage kommt. Aus diesem Grund wurden Suchmaschinen entwickelt, die Web-Seiten für eine systematischere Suche indizieren. Diese Suchmaschinen benutzen sogenannte Robots und Crawler, die von einer bestehenden Datenbank, also voll- oder teilindizierte Webseiten, allen Links bis zu einer bestimmten Tiefe nachgehen und die dadurch hinzugewonnenen Seiten indizieren und zur Datenbank hinzufügen. Als weitere Beispiele seien hier nur kurz Yahoo, Lycos, Infoseek, Webcrawler, Hotbot, Google oder Altavista erwähnt. Wie aus Abbildung 1 und 2 zu ersehen ist, hat keine einzelne dieser 9 Suchmaschinen eine besonders gute, geschweige denn komplette, Abdeckung von Webseiten. Die einzelnen Datenbasen der Suchmaschinen sind allerdings hinreichend disjunkt, so daß es wahrscheinlich ist, bei einer gleichen Anfrage, komplett unterschiedliche Webseiten zu erhalten (vgl. [6] Abschnitt 2). Aus dieser Erkenntnis entwickelte sich die Idee eine Suchanfrage gleichzeitig an mehrere Suchmaschinen zu stellen. Dadurch wird eine größere, wenn auch nicht viel komplettere, Abdeckung des vorhandenen WWW möglich. Dieses Konzept wird Meta-Suchmaschine genannt. Eine andere Schwierigkeit stellt die Erreichbarkeit einer Suchmaschine dar. Sie hängt von diversen Faktoren ab und verändert sich über die Zeit (vgl. [6] Abschnitt 2). Zu diesen Faktoren zählen technische Dinge, wie zum Beispiel Wartung von Datenbank, Computern oder der diversen Standleitungen. Etwas viel problematischeres ist allerdings der Besucher-Andrang auf den Seiten der Suchmaschine wodurch Anfragen an eben diese sich stark verzögern oder eben nicht möglich sind, weil die betreffende Seite nicht geladen wird. Ein ebenfalls sehr häufig auftretendes Problem ist das 404-Problem. Bei dem 404-Problem handelt es sich darum, daß eine durch die Suchmaschine indizierte Seite nicht mehr existiert. Wenn eine nicht existierende Seite auf einem Web-Server abgerufen wird, erscheint eine Fehlermeldung oder Fehlerseite des Web-Servers im Browser-Fenster, nämlich die Fehlermeldung 404 (vgl. [6] Abschnitt 2) Ein ähnlich geartetes Problem ist das der Aktualität der Datenbank. Da die Bots einer Suchmaschine nur schwer mit dem Wachstum des Internet mithalten können, was das indizieren neuer Seiten betrifft, kann es durchaus vorkommen, daß die Bots einer Suchmaschine bereits indizierte Seiten gar nicht oder nur alle 2-x Wochen wieder besuchen, um die eigene Datenbank zu aktualisieren. Das hat mehrere mögliche Konsequenzen: • Bei Seiten wird der Inhalt geändert. Zum Beispiel wird der Suchbegriff von der Seite entfernt. • Aktuelle Topthemen auf Seiten werden bei den Suchmaschinen später indiziert. Wobei später eben bis zu mehreren Wochen dauern kann. In dieser Zeit verlieren diese Themen ihre Aktualität und Nützlichkeit. Neben diesen "technischen" Problemen gibt es noch eine weitere Problematik zu beachten: 10 Das Verhalten der Benutzer. Viele Benutzer stellen am Anfang ihrer Suche meist sehr ungenauen Anfragen an die Suchmaschine (vgl. [6] Abschnitt 2). Als Ergebnis erhalten sie meist sehr viele Treffer, dadurch werden sie gezwungen verfeinerte Anfragen an die Suchmaschine zu stellen. Auf Grund dieser Tatsache wird die Infrastruktur der Suchmaschine sehr belastet. Eine mögliche Entlastung wäre es das eigene Suchverhalten umzustellen, also möglichst genaue Suchanfragen zu stellen und bei Bedarf die Anfrage zu verallgemeiner, wenn das gewünschte Ergebnis nicht erreicht wird. Dem entgegen steht allerdings, daß meist am Start einer Suche nicht genau klar ist, was die wirklich interessanten Schlüsselwörter für die Suche sind. Eng mit diesem Problem verknüpft ist auch die Tatsache, daß vielen Benutzern nicht klar ist, wie durch eine geschickte syntaktische Formulierung die Suche beschleunigt werden kann (vgl. [9] Abschnitt "Current Problems with web searching"). Ein Beispiel ist, ob das einzelne Vorkommen der verschiedenen Suchbegriffe gewünscht ist, oder ob die angegebene Zeichenkette im Text vorkommen soll. Bsp: "Hund" und "Katze" ≠ "Hund und Katze" Neben dieser Problematik der Informations-Sucher gibt es auch Probleme mit den Informationsanbietern, um das Problem näher zu bringen, muß zunächst der Begriff des Rankings erläutert werden. So gut wie alle Suchmaschinen führen eine Bewertung der indizierten Webseiten durch. Diese meist nur statistischen Verfahren werden als Ranking bezeichnet. Bei den statistischen Verfahren werden Anzahl der vorkommenden Suchbegriffe, Position untereinander und Position im Text gewichtet. Immer häufiger verwenden Suchmaschinen auch andere Verfahren und überprüfen, wie oft die Seite von anderen Seiten referenziert wird, also per Link erreichbar ist. Das geht auf die Annahme zurück, das eine Seite mit vielen Referenzen wichtiger sein muß, weil der Inhalt von einem oder mehreren Menschen für wichtig oder gut befunden wurde. Suchdienste, die neben Suchmaschinen auch noch Kataloge oder Directories führen, neigen dazu in den Katalogen referenzierte Seiten stärker zu gewichten als unreferenzierte. Eine weitere Möglichkeit das Ranking zu verbessern ist es, dem Benutzer die Möglichkeit zu bieten die gefundenen Links zu bewerten, wie gut diese als Ergebnis für die Suchanfrage waren. Aus diesem Ranking ergibt sich nur folgendes Problem: Mittlerweile wurde das Internet auch für die Werbung entdeckt. Viele Webseiten werden von Bannern geschmückt. Der Betreiber 11 der Webseite erhält für jedes heruntergeladene Banner Geld und für jeden Klick, der auf dem Banner ausgeführt wird. Mehr Klicks werden hauptsächlich durch viele Besucher erreicht und dazu ist es nötig der eigenen Seite bei den Suchdiensten einen möglichst hohen Rang zu kommen zu lassen. Es hat sich gezeigt, daß die meisten Benutzer unter den ersten zehn Treffern die gewünschte Information finden. Deswegen sind Webseiten-Betreiber bestrebt ihre Seite, durch gezielte Plazierung und Erwähnung von Schlüsselwörtern in die vorderen Ränge zu treiben (vgl. [4]). Werden vom Webseiten-Betreiber Suchbegriffe in die Webseite eingearbeitet, die nichts mit dem eigentlichen Inhalt zu tun haben, oder Suchbegriffe sehr häufig wiederholt, so wird das als Search-Engine-Spamming bezeichnet (vgl. [6] Abschnitt 2). Ein Beispiel dazu: Anläßlich des Autounfalls von Prinzessin Diana wurden auf vielen Seiten mit Porno-Werbebannern, die passenden Suchbegriffe, wie zum Beispiel "Lady Di", "Princess Diana" usw. hinzugefügt. Heutzutage werden fast alle möglichen berühmten Personen verwendet, besonders beliebt sind Menschen aus Kino, Fernsehen oder dem Musik-Bereich. Gegen diese Art von Spamming sind noch kaum Automatismen vorhanden, während gegen die übermäßige Verwendung von Suchbegriffen einfach die Ranking-Formel modifiziert wird. Abbildung 3 zeigt eine solche Ranking-Formel. Abb. 3:Ranking-Formel von der Inquirus-Meta-Searchengine [6] 12 3 Meta-Suchmaschinen Dieses Kapitel befaßt sich mit dem grundsätzlichem Aufbau und den Entwurfsentscheidungen bei der Konzeptionierung von Meta-Suchmaschinen. Wie in Abbildung 4 zu sehen ist, wird ein Die Benutzer stellen Anfragen. Die MetaSuchmaschine formuliert die Anfragen für die verschiedenen Suchmaschinen Die Benutzer bekommen das Ergebnis präsentiert Excite Google ... Die Meta-Suchmaschine verarbeitet die Ergebnisse Yahoo Abb. 4:Allgemeine Struktur von Meta-Suchmaschinen Suchauftrag durch den Benutzer erteilt. Der Suchauftrag wird in die Syntax der einzelnen Suchmaschinen übersetzt und anschließend parallel abgeschickt. Nach einer bestimmten Zeitspanne, die bei den meisten Meta-Suchmaschinen als Timeout bezeichnet wird, werden die zurückgelieferten Seiten verarbeitet und das Ergebnis dem Benutzer präsentiert. 3.1 Ergebnisbehandlung Die von den Suchmaschinen zurückgelieferten Treffer werden im einfachsten Fall ohne weitergehende Bearbeitung an den Benutzer zurückgeliefert, dabei werden aber gute Möglichkeiten, die Qualität der Suche zu verbessern, verschenkt. Qualitätsverbesserungen können erreicht werden, in dem identische Webseiten entfernt werden. Dabei tritt eine Schwierigkeit auf: Suchmaschinen haben die Eigenschaft die URLs der indizierten Seiten unterschiedlich zu speichern. Das kann zum einen 13 wegen eines Standard Alias geschehen oder aber auch weil, die eine Adresse ein Symbolic Link auf die gleiche Datei ist. Diese beiden Adressen zeigen zum Beispiel (aus [7]) auf dieselbe Datei. http://www.cs.washington.edu/homes/speed/home.html http://www.cs.washington.edu/homes/selberg Wenn es sich um die gleiche Domain aber einen unterschiedlichen Pfad handelt, dann läßt sich durch folgenden Algorithmus relativ einfach feststellen, ob es sich wirklich um dieselbe Datei handelt. [7] Eingabe: URL1, URL2 Rückgabe: true, wenn die Dateien identisch sind false, sonst bool id(URL1, URL2) { IF domain(URL1)!= domain(URL2) THEN RETURN false; ELSE IF pfad(URL1) = alias(URL2) THEN RETURN true; ELSIF pfad(URL2) = alias(URL1) THEN RETURN true; ELSIF titel(URL1) = titel(URL2) THEN RETURN complete(URL1, URL2); ELSE RETURN false; ENDIF; ENDIF; } Die Prozedur domain() liefert aus der URL die Domain zurück. Die Prozedur Pfad den Pfad, titel den Titel der Webseite und complete() macht einen vollständigen Textvergleich. Die Prozedur alias generiert einen oder mehrere Standard-Alias. Beispiel: "~barclay/index.html", "~barclay/index.htm", "~barclay/" usw. Dies hilft natürlich nicht bei Mirror-Seiten auf anderen Servern. Im Gegensatz zum entfernen doppelter Seiten ist es sehr viel einfacher dead links, also nicht mehr vorhandene Seiten, zu entfernen. Dabei wird einfach der Server auf dem die Seite liegt befragt. Wenn der Server eine Fehlermeldung liefert, ist die Seite nicht mehr existent. Nachdem identische Seiten und dead links evtl. entfernt wurden, stellt sich die Frage in wel- 14 cher Reihenfolge nun die einzelnen Treffer an den Benutzer weitergegeben werden (vgl. [7] Abschnitt 1.2). Die einfachste Variante ist in der Reihenfolge in der sie auf der Meta-Suchmaschine eintreffen. Dabei werden aber großzügig die Ranking-Mechanismen der Suchmaschinen eingeschränkt. Also wäre es besser, wenn die Ranking-Informationen an den Meta-Suchmaschinen-Benutzer mit weitergegeben werden. Das Problem hierbei ist, daß die verschiedenen Suchmaschinen mit unterschiedlichen Ranking-Mechanismen arbeiten und deren Ergebnisse in verschiedenen Intervallen liegen, z.Bsp: [0,1], [0,100], [0,∞] usw. Manche Suchmaschinen liefern evtl. auch gar keine Rankings oder keine brauchbaren Werte zurück. Ferner besteht auch hier das Problem des Search-EngineSpammings (vgl. [6] Abschnitt 2). Dementsprechend kann die Meta-Suchmaschine die Treffer der Suchmaschine ebenfalls nochmal gewichten. Zum Beispiel sind die Ergebnisse einer Suchmaschine unter Umständen "mehr" Wert als die einer Anderen, weil der Betreiber der MetaSuchmaschine weiß, daß bei der Ersteren mehr Wert darauf gelegt und Anstrengung unternommen wird, um Search-Engine-Spamming zu vermeiden. Die Kunst der Meta-Suchmaschine ist es nun diese Rankings in einem neuen Ranking zu vereinen und abschließend die Treffer neu bewertet und sortiert dem Benutzer zu präsentieren. 3.2 Weitere Architektur Entscheidungen und deren Probleme Suchmaschinen haben unterschiedliche Syntax für die Anfragen (vgl. [5] Abschnitt 2.2). Wie soll die Meta-Suchmaschine damit umgehen? Meta-Suchmaschinen können den Eingabestring des Benutzers einfach unverarbeitet an die Suchmaschinen weiter geben und nutzen damit ein großes Potential der Suchmaschinen nicht. Wenn die Meta-Suchmaschine so verfährt, dann muß sie sich auf den kleinsten gemeinsamen Nenner der Syntax der verwendeten Suchmaschinen beschränken. Eine andere Lösung, wie sie auch im Normalfall praktiziert wird, ist es die einzelnen Anfragen in einer Syntax der Meta-Suchmaschine zu stellen und diese Anfragen werden in die für die normale Suchmaschine verständliche Anfragen übersetzt. In den vorhergehenden Abschnitten wurden diverse Probleme der Ergebnis-Präsentation behandelt. Es gibt aber auch noch grundlegendere Probleme. Wo soll die Meta-Suchmaschine 15 betrieben werden? Zum Einen könnte sie ähnlich einer Suchmaschine auf einem Server im Internet laufen (server-based). Zum Anderen wäre auch eine Lösung denkbar, bei der die Maschine auf dem Rechner des Benutzers läuft (client-based). Das Problem bei server-based Meta-Suchmaschinen ist, daß sie Online verwendet werden. Dadurch muß der Benutzer immer wieder neue Hits zu einer Anfrage von der Meta-Suchmaschine holen und das führt zu einer größeren Beanspruchung der Infrastruktur der Meta-Suchmaschine, ebenso wie dem lokalen Netz. Einfacher und effizienter, wenn nicht unter den ersten paar Treffern schon das Gesuchte sich befindet, wäre es, alle Hits und zugehörigen Informationen auf den Rechner des Benutzers zu laden (vgl. [8] "Current Problems with web searching") Client-based Meta-Suchmaschinen sind aber auch kein Allheilmittel. Da wäre zum Beispiel das last-mile-problem. Das Endstück der Datenautobahn, zwischen dem Benutzer zu Hause und seinem Internet-Provider ist im Normalfall der Flaschenhals (vgl. [5] Abschnitt 2.2). Dort werden wegen der geringeren Bandbreite weniger Daten pro Sekunde transportiert. Zusätzlich stellt sich noch das update-problem. Die Betreiber der Suchmaschinen neigen dazu häufiger die Anfrage-Syntax ihrer Suchmaschinen zu ändern, um eine effizientere Suche zu ermögliche. Dementgegen steht der Wille des Benutzers alle paar Wochen auf dem heimischen System die Software zu aktualisieren (vgl. [5] Abschnitt 2.2) Einen Vorteil haben client-based Meta-Suchmaschinen gegenüber ihren server-based Gegenstücken. Sie können Informationen über ihren Benutzer speichern. Zum Beispiel über sein Suchverhalten, seine bevorzugten Suchmaschinen, häufige sich wiederholende Anfragen. Studien haben gezeigt, daß Benutzer sich häufig auf bestimmte Themengebiete bei der Recherche beschränken und mit solchen User-Profilen wäre eine Effizienzsteigerung möglich (vgl. [9] Abschnitt "Current Problems with web searching"). Die client-based Meta-Suchmaschine Copernic 2000 [11] speichert zum Beispiel das Ergebnis einer Anfrage inklusive der Anfrage und es besteht die Möglichkeit über einen Scheduler die Anfrage automatisch wiederholen zu lassen. Dabei werden neue Treffer bei der ErgebnisBehandlung gesondert hervorgehoben. Ferner sind einige Möglichkeiten des Postprocessing vorhanden, wie zum Beispiel Download der gefundenen Web-Seiten und Off-Line betrachten. 16 4 Beispielarchitekturen von Meta-Suchmaschinen In diesem Kapitel werden verschiedene Konzepte von Meta-Suchmaschinen anhand von MetaCrawler, Inquirus, Prolog-Crawler und der Klasse der Personal Search Assistants kurz erläutert. 4.1 Meta-Crawler [12] Ursprünglich wurde der MetaCrawler 1994 an der University of Washington (UW) in Seattle von Erik Selberg und UW Associate Professor Oren Etzioni entwickelt. MetaCrawler wurde der Internet-Gemeinde im Juni 1995 präsentiert und anschließend von Netbot, Inc. lizensiert, welche von Etzioni mit gegründet wurde. Go2Net, Inc, jetzt InfoSpace (Nasdaq: INSP), übernahm im Februar 1997 die exklusive Betreibung des MetaCrawler von Netbot. Der MetaCrawler hat in der Vergangenheit diverse Anerkennungen und Auszeichnungen erhalten, unter anderem zweimal "Best Search Engine" vom PC Magazine. Kürzlich hat Yahoo! Internet Life (July 2000) MetaCrawler als eines der zehn "Internet essentials" bezeichnet. Der MetaCrawler ist in C++ implementiert und läuft auf einem Linux-System mit ApacheWebserver auf derzeit zehn 400Mhz Dual-PentiumII Rechnern mit jeweils 512 MB Arbeitsspeicher. Der MetaCrawler ist eine server-based Meta-Suchmaschine und besteht aus vier Modulen (s. Abbildung 5). Das User-Interface, das Aggregation-Modul, das Harness-Modul und das Parallel-Web-Interface. Das User-Interface übergibt den Anfrage-String an das Aggregation-Modul, von dort werden die im Harness gekapselten Suchmaschinen gesteuert. Die Ergebnisse der Suchmaschinen werden vom Harness gefiltert und an das Parallel-Web-Interface gegeben. Das Parallel-Web-Interface bereitet die Links als Web-Page auf und gibt sie an die Aggregation-Engine zurück. Wenn es sich um eine Suchmaschine handelte, die ein bestimmtes Feature, welches in der Such- 17 Abb. 5:The MetaCrawler [7] Anfrage vorkam, nicht implementiert hat, dann werden die Referenzen vom Parallel Web Interface überprüft und untersucht. Zum Beispiel kann die Suchmaschine nicht nach Ausdrükken, sondern nur nach Einzelworten, suchen. Die Aggregation-Engine nimmt das Ergebnis, vergleicht die Referenzen, entfernt die doppelten Links und übergibt das endgültige Ergebnis an das User-Interface zur korrekten Ausgabe an den Benutzer. 4.2 PrologCrawler [8] Der PrologCrawler ist ein Projekt an der Universität von Pisa. Dort wurde untersucht, inwiefern sich die Logik-orientierte Programmiersprachen für den Einsatz im Internet eignen. Es existierte zum Entstehungszeitpunkt dieser Arbeit keine über das WWW von Interessierten benutzbare Version. Insgesamt zeichnet sich der PrologCrawler durch seine kompakte Programmierung aus. Die Länge des Programms beträgt grade mal 500 Zeilen Code, wobei immer noch fünf Interfaces zu verschiedenen Suchmaschinen inbegriffen sind. Ferner werden die Entfernung von doppelten Treffern und der 404-Seiten unterstützt. 18 Abb. 6:PrologCrawler [8] Implementiert wurde der PrologCrawler mit Sicstus Prolog 3.7.1 und der PiLLoW-Library auf einem Linux-Pentium 200 System mit Apache-Webserver. Durch die relativ "schwache" Hardware zeigt sich, daß nicht die Ergebnisverarbeitung das Geschwindigkeitshemniss ist, sondern das "Bandbreiten-Management", dies ist auch einer der Gründe, warum "nur" fünf Suchmaschinen eingebunden wurden. 4.3 Inquirus [6] Die Inquirus Meta-Suchmaschine ist eine Server-based Suchmaschine, deren spezielles Feature darin besteht, die von Suchmaschinen zurückgelieferten Treffer selbständig zu analysieren und zu bewerten. 19 Abb. 7:Inquirus [6] Ein Beispiel für die Funktionsweise: An die Suchmaschine A, B und C werden Anfragen gestellt. A, B und C liefern jeweils zehn Treffer zum Thema X zurück. Nun werden die Seiten der einzelnen Treffer angefordert und untersucht. Die Seiten werden durch Inquirus gewichtet und on the fly ausgegeben. Nachdem alle Treffer bewertet wurden wird eine sortierte Liste der Treffer erzeugt und ausgegeben. Das dieses Konzept für den Masseneinsatz im Moment ungeeignet ist, wird auf den ersten Blick deutlich, wenn in Betrachtung gezogen wird, daß jede einzelne Seite untersucht werden muß. Die Belastung für das Netzwerk des Providers ist sehr hoch. Trotz allem ist diese Variante der Server-based Meta-Suchmaschinen, was die Bewertung der Treffer betrifft kaum zu schlagen, da das Ranking-Problem geschickt verkleinert wird. 20 4.4 Personal Search Assistants Zu dieser Klasse der Meta-Suchmaschinen gehören hauptsächlich Client-based Meta-Suchmaschinen. Auf dem heimischen oder dem Büro-Computer wird die Suchanfrage an die MetaSuchmaschine übergeben. Diese befragt Suchmaschinen und liefert die Ergebnisse zurück. Das weitere Vorgehen unterscheidet sich kaum von den Server-based Varianten. Exemplarisch werden hier zwei unterschiedliche PSA vorgestellt. Eine sehr einfach Meta-Suchmaschine befindet sich im Netscape Communicator 6 [13] die zurückgelieferten Treffer werden in einer Liste als HTML-Seite dem Benutzer im Browser präsentiert. Wobei die Treffer in einer speziellen Seitenleiste gemerkt werden und somit nicht "verlorengehen", wenn der Benutzer die Ergebnisse in einem "falschen" Fenster betrachtet. Eine andere Variante bietet zum Beispiel Copernic2000. Bei dieser Programm besteht die Möglichkeit ähnliche Analysen, wie mit Inquirus auszuführen. Es lassen sich die zurückgelieferten Treffer runterladen und analysieren. Ferner besteht noch die Möglichkeit das Ergebnis der Suche zu speichern und bei Gelegenheit zu wiederholen, wobei sich Copernic merkt, ob Treffer neuhinzugekommen sind oder ob sie schon länger in der Datenbank ist. 5 Schlußbemerkungen Die einzelnen Meta-Suchmaschinen haben alle ihre Vor- und Nachteile im direkten Vergleich (vgl Tabelle in Abbildung 8). Prinzipiell muß jeder Benutzer sich selbst Gedanken darum machen, ob die Suchmaschine oder Meta-Suchmaschine, die gerade verwendet wird den eigenen Ansprüchen genügt. Wobei meistens die eigenen Ansprüche von Suchauftrag zu Suchauftrag variieren. Für eine schnelle Suche, um sich einen Überblick zu verschaffen, sind einzelne Suchmaschinen, wie Google meist vollkommen ausreichend. Für gründlichere Recherchen kann es notwendig sein auf Meta-Suchmaschinen zurückzugreifen. Für Recherchen, die sich über einen längeren Zeitraum erstrecken, bleiben eigentlich nur die PSA’s als komfortable Lösung, auch wenn sie mehr Ressourcen benötigen, sind sie doch die einzigen, die Informationen über vorhergehende Suchanfragen speichern. Es gibt bei der Informationssuche im WWW gewiß noch sehr viel Optimierungsbedarf. 21 Eigenschaften Meta Prolog Inquirus PSA Crawler Crawler ! ! Nutzbar (!) Kompl. Netzabdeckung ! ! ! „Online“ (!) ! ! ! Timeouts (!) Zeitraum (!) ! Pers. Suche ! ! Aktualität (!) ! ! ! 404-Problem (!) Qualität d. Ergebnisses (!) (!) (!) (!) ! = vorhanden, (!) = eingeschränkt vorhanden, - = nicht gegeben Abb. 8:Tabellarische Zusammenfassung Alleine schon das Aktualitäts-Problem schränkt die Möglichkeiten von der Benutzung des WWW gewaltig ein. Hinzukommt noch der explosionartige Wachstumsschub des WWW, mit dem die Suchmaschinen kaum mithalten können. Es bleibt ein interessantes Arbeitsfeld, was die Zukunft in dieser Richtung auch bringen mag, sei es nun "intelligente Software-Agenten" oder neue Berufsfelder, wie zum Beispiel "Information Broker". 22 Anhang A: [1] Literaturverzeichnis Internet Domain Survey, July 2000, http://www.isc.org/ds/WWW-200007/index.html, 06.01.2001 [2] Danny Sullivan, Search Engine Sizes, http://www.searchenginewatch.com/reports/sizes.html, 17.01.2001 [3] Search Engine Watch, How Search Engines Rank Web Pages, http://www.searchenginewatch.com/webmasters/rank.html 18.01.2001 [4] Search Engine Watch, Search Engine Placement Tips, http://www.searchenginewatch.com/webmasters/tips.html, 18.01.2001 [5] Wofgang Sander-Beuermann und Marco Schomburg, Internet Information Retrieval: The Further Development of Meta-Search Engine Technologie, http://www.comms.uab.es/inet99/inet98/1c/1c_2.htm, 07.01.2001 [6] Steve Lawrence und C. Lee Giles, Inquirus, the NECI meta search engine, http://www.neci.nj.nec.com/homepages/lawrence/papers/search-www7/, 07.01.2001 [7] Erik Selberg und Oren Etzioni, The MetaCrawler Architecture for Resource Aggregation on the Web, 08. November 1996 [8] Emanuele Bolognesi und Antonio Brogi, A Prolog Meta-Search Engine for the World Wide Web, http://www.cs.unt.edu/~diplcl99/Proceedings/brogi/, 07.01.2001 [9] P.R. Kaushik und Dr. K. Narayana Murthy, Personal Search Assistant: A Configurable Personal Meta Search Engine http://ausweb.scu.edu.au/aw99/papers/murthy/, 07.01.2001 [10] Stiftung Warentest , Internet-Suchmaschinen aus Test 08/2000, http://www.warentest.de/wtest/plsql/sw_test.anzeige_beitrag?kontaktnr=0&tmp_inh_id=18364&tmp_ausgabe=8, 17.01.2001 [11] www.copernic.com, 19.01.2001 [12] www.metacrawler.com, 19.01.2001 [13] www.netscape.com, 27.02.2001 23