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