Die Suchmaschine ht://Dig -...

23

Transcript of Die Suchmaschine ht://Dig -...

Page 1: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Die Suchmaschine ht://DigHauptseminar: Information Retrieval

Frank Tobian

02. Februar 2009

1 / 23

Page 2: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Überblick

1 EinleitungFunktionen und ProblemeSystemarchitektur

2 InstallationErstes Ausführen

3 Kon�gurationStandardkon�gurationSuchalgorithmenBeispiel URZ-Kon�gurationDesign

4 AlternativenMediaWikiOpensource

Hyper Estraier

GoogleCustomSearchGCS erstellen

GCS einbinden

5 Fazit

2 / 23

Page 3: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

ht://Dig - WebSearchEngine

ht://Dig1

ist eine Suchmaschine, die unter der GPL2 steht

entwickelt an der San Diego State University

wurde in C++ geschrieben

Entwicklung von 1995 bis 2004

letzte Version 3.2.0b6 vom 16. Juni 2004

1http://www.htdig.org/2GNU GENERAL PUBLIC LICENSE

3 / 23

Page 4: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Funktionen und Probleme

Funktionen

Indizierung geschützter Server möglich

Suchtiefe kann begrenzt werden

sehr gut kon�gurierbar, auch auf einzelne Seiten/Bereiche3

Unterstützt Latin-1 und HTML-Entitäten

Probleme:

unterstützt kein Unicode

wird nicht mehr weiterentwickelt

etwas langsam

3siehe alte Unisuche: search.uni-heidelberg.de4 / 23

Page 5: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Systemarchitektur und Funktionsweise

digging

Sammelt Daten von Webseiten. Startet mit einer in derKon�guration angegeben URL4, parst dieses Dokument nachverlinkten Dokumenten und hangelt sich so durch einenWebauftritt, bis die Daten aller verlinkten Dokumente gesammeltsind.

fuzzing

Erstellen von Fuzzy-Datenbanken, z.B. für synonyms, endings,accents, metaphone und soundex.Erweitert die Standardsuchdatenbanken.

4Uniform Resource Locator5 / 23

Page 6: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Systemarchitektur und Funktionsweise

merging

Erstellen eines Dokumenten-Index und Wortdatenbanken aus dengesammelten Daten der Webseiten, die schnell durchsucht werdenkönnen.Zusammenführen der bereits bestehenden Datenbanken und denneuen Daten.

searching

Durchsuchen der Datenbanken nach dem Suchbegri�, den ein Userüber ein Webinterface angibt.

dig, fuzzy und merge werden meistens in einem Kommandoausgeführt, können teilweise parallelisiert werden

6 / 23

Page 7: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Systemarchitektur und Funktionsweise

13Diplomarbeit Dietmar Hocke (2003), Wiesbaden 7 / 23

Page 8: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Installation unter Ubuntu

Installationsbefehl:

aptitude install htdig

Installierte Kommandozeilenbefehle:

rundig/htdig - Meta-/Hauptkommando

htmerge

htpurge

htnotify

htdump

htnotify

htfuzzy

htload

htstat

8 / 23

Page 9: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Erstes Ausführen

Ausführen und Testen

Installation eines Skriptes in das CGI5-VerzeichnisStandard unter ubuntu: /usr/lib/cgi-bin/

Ausführen von htdig auf der Kommandozeile ruft alle nötigenProgramme auf, um eine Suchdatenbank aufzubauen (benutzt dieStandardkon�guration /etc/htdig/htdig.conf)

Nun kann man per http: // localhost/ cgi-bin/ htsearchoder /usr/lib/cgi-bin/htsearch die ersten Suchanfragen abschicken.

Die Kommandozeile gibt den Quelltext der Webseite aus - solltenur zu testzwecken genutzt werden.

5Common Gateway Interface9 / 23

Page 10: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

3 Kon�gurationStandardkon�gurationSuchalgorithmenBeispiel URZ-Kon�gurationDesign

10 / 23

Page 11: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Standardkon�guration

Wichtige Teile der Standardkon�guration

database_dir: /var/lib/htdig

start_url: http://www.htdig.org/

limit_urls_to: ${start_url}

common_url_parts: .html .htm .shtml

exclude_urls: /cgi-bin/ .cgi

search_algorithm: exact:1 synonyms:0.5 endings:0.1

11 / 23

Page 12: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Suchalgorithmen

Suchalgorithmen

Verfügbare Algorithmen, die mit search_algorithm6 in derKon�guration angegeben und gewichtet7 werden.

accents

exact

endings

metaphone

pre�x

regex

soundex

speling [sic]

substring

synonyms

6Viele dieser Algorithmen haben etwas mit dem Aufbau der

Suchdatenbanken, in denen dann tatsächlich gesucht wird, zu tun.7Die Gewichte haben etwas mit dem �Ranking� der Tre�er zu tun.

12 / 23

Page 13: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Beispiel URZ-Kon�guration

Durchsuchen des URZ Webserver

Hauptbestandteile von /etc/htdig/urz.conf

database_dir: /var/lib/htdig/urz

start_url: http://www.urz.uni-heidelberg.de/

limit_urls_to: http://www.urz.uni-heidelberg.de

Aufruf per Webbrowser:

http://localhost/cgi-bin/htsearch?con�g=urz

Parameter con�g kann per Dropdown Menü übergeben werden

13 / 23

Page 14: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Design

Gestaltung der Tre�erliste

HTML-Code wird einfach per Dateien eingezogen.Standardmäÿig wird in

header.html der Kopf einer Webseite (inkl. <html><body>)

footer.html der Fuss einer Webseite (inkl. </body></html>)

wrapper.html die Suchbox und der Suchkopf

short.html der �Code� für kurze Darstellung der Ergebnisse

long.html der �Code� für die detailreiche Darstellung

nomatch.html die Fehlerseite, für keine Tre�er

angeben.Name und Pfad der Dateien sind kon�gurierbar.

14 / 23

Page 15: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

4 AlternativenMediaWikiOpensource

Hyper Estraier

GoogleCustomSearchGCS erstellen

GCS einbinden

15 / 23

Page 16: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

MediaWiki

MediaWiki Extension Suchmaschinen8:

Opensource:

Hyper Estraier

SphinxSearch

MWSearch

Lucene-search

OpenSearch

Kommerziell:

GoogleCustomSearch / GoogleSiteSearch

8www.mediawiki.org/wiki/Category:Search_extensions16 / 23

Page 17: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Opensource

Hyper Estraier10

besitzt nur eine japanische Wikipedia-Seite (Demos in Englischund Japanisch vorhanden)

unterstützt Unicode

benutzt QDBM: Quick Database Manager (organisiert Datenin B+ Bäumen) unter Linux und Mac

Cygwin unter Windows erforderlich

unterstützt P2P (also verteilte) Architekturen

steht unter LGPL9

Bibliotheken für Java, Ruby, Perl und Python existieren

hat ht://dig auf gnu.org ersetzt

9GNU Lesser General Public License10http://hyperestraier.sourceforge.net/

17 / 23

Page 18: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

GoogleCustomSearch

GCS - GoogleCustomSearch

wird auf vielen Seiten benutzt, z.B. Uni-HD

kostenfrei für jeden nutzbarman kann sogar Geld damit verdienen

für ö�entliche Einrichtungen werbefrei

Möglichkeiten GCS auf der eigenen Webseite zu nutzen:

Tre�erliste auf dem Googles Webserver

Tre�erliste auf eigener Webseite

als iframe (wird von der Universität verwendet)als Overlay (benutzt AJAX11)

11Asynchronous JavaScript and XML18 / 23

Page 19: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

GoogleCustomSearch

GCS erstellen

19 / 23

Page 20: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

GoogleCustomSearch

GCS auf der Suchseite einbinden

<form action="http :// www.uni -heidelberg.de/

results.html" id="cse -search -box">

<input type="hidden" name="cx"

value="011868209755949426626:6 yzqy3rcxue">

<input type="hidden" name="cof" value="FORID :11">

<input type="text" size="60" name="q"

class="inputSearchTop">

<input type="submit" name="sa"

class="inputSearchRightButton">

</form><script type="text/javascript"

src="http :// www.google.com/coop/cse/

brand?form=cse -search -box&lang=en">

</script >

20 / 23

Page 21: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

GoogleCustomSearch

GCS auf der Tre�erseite einbinden (iframe)

<div id="cse -search -results"></div>

<script type="text/javascript">

var googleSearchIframeName = "cse -search -results";

var googleSearchFormName = "cse -search -box";

var googleSearchFrameWidth = 600;

var googleSearchDomain = "www.google.com";

var googleSearchPath = "/cse";</script >

<script type="text/javascript"

src="http :// www.google.com/afsonline/

show_afs_search.js">

</script >

21 / 23

Page 22: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

ht://dig ist ein Urgestein der Suchmaschinen

ht://dig wurde auf sehr vielen Seiten eingesetzt, unteranderem Behörden, ö�entliche Einrichtungen uvm.

Das gröÿte Problem ist die fehlende Unicode Unterstützung.Heutzutage werden fast alle Webseiten in Unicode kodiert, daman damit alle Zeichen darstellen kann.

Für kleine (zugangsgeschütze) Intranets ist ht://digbenutzbar, da einfach zu kon�gurieren.

Für Internetseiten ist GoogleCustomSearch12 eine bessereAlternative.

Eine andere echte Alternative ist Hyper Estraier, welchemeiner Meinung nach der Nachfolger von ht://dig ist.

12die Google Search Engine kann man auch kaufen und lokal installieren22 / 23

Page 23: Die Suchmaschine ht://Dig - kontext.fraunhofer.dekontext.fraunhofer.de/haenelt/kurs/Referate/Tobian-Suchmaschinen.pdf · ht://dig wurde auf sehr vielen Seiten eingesetzt, unter anderem

Einleitung Installation Kon�guration Alternativen Fazit

Quellenangabe

Benutze Webseiten:

http://www.htdig.org

http://search.uni-heidelberg.de

http://www.google.com

http://hyperestraier.sourceforge.net

http://www.mediawiki.org

Dietmar Hocke (Dez. 2003), Erweiterung derht://Dig-Suchmaschine um einen JavaScript-Interpreter, FHWiesbaden, www.informatik.fh-wiesbaden.de/~linn/diplomarbeiten/hocke/13

Folien erstellt mit LaTeX, Beamer-Package, Theme Lübeck

23 / 23