Was ist Cygwin
Document Sample


Visualisierung von
Suchergebnissen der ht://Dig
PDV - Vertiefung SS2004 Frank
Eckert / Stefan Richter 1
Was wird visualisiert ?
Darstellung von Größen aus dem Internet
Laufzeiten
Responsezeiten
Seiteninhalte
Linkbeziehungen
...
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 2
Projektbeschreibung
Browser-basierte Visualisierung der
Suchergebnisse der htdig
Datenbankmodell
Relationales Datenbankmodell (MySQL) für die
htdig
htdig Modifikation
Abänderung der htdig Dateien zur Erzeugung
des erforderlichen SQL-Scriptes
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 3
Entwicklungsumgebung
Windows 2000
Cygwin
Apache 2.0.49 (Win32)
MySQL 4.0.18
PHP 4.3.6
JpGraph 1.14(GD-Library)
htdig 3.16
modifizierte Version wie in der Vorlesung
vorgestellt
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 4
Was ist Cygwin ?
GNU + Cygnus + Windows = cygwin
Cygwin ist eine von RedHat entwickelte UNIX-
Umgebung für Windows.
Diese Umgebung besteht im wesentlichen aus zwei
Teilen:
einer DLL, die als UNIX-Emulationsschicht eine UNIX-
API bereitstellt.
Ansammlung von Tools, die mehrheitlich von UNIX
portiert wurden und ein UNIX-artiges Look-and-Feel
bereitstellen.
z.B.: bash Shell, den C++ Compiler gcc, XFree86, den SSH-
Client und Server OpenSSH.
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 5
Cygwin Anwendungsbereich
Direkt unter Windows UNIX-Programme
verwenden.
Möglichkeit von einem Windows-Rechner
über das Netzwerk per SSH oder
X-Windows auf UNIX-Rechner zuzugreifen.
Erweiterbar durch Addons (KDE-
Oberfläche, Tools)
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 6
Cygwin Vor- /Nachteile
Vorteil:
Parrallele Installation von zweitem
Betriebssystem entfällt.
Open Source - Freeware
Nachteil:
Sehr gross, Komplettinstallation incl. KDE ca.
1,5 GB
Alternativen:
MINGW / MSYS
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 7
htdig – Allgemein 1
umfassende, sehr gut skalierbare
Suchmaschine für die Volltextsuche auf
Websites
problemlos können mehrere 10 000
Webseiten indexiert werden.
Für 13 000 Webseiten werden beispielsweise
150 MB für den Index benötigt.
frei verfügbar
geeignet für Intranetlösungen
Suche mit booleschen Operatoren
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 8
htdig – Allgemein 2
HTML und Textdateien können durchsucht
werden.
Keywords und Verfallsdatum werden
berücksichtigt
Suche kann auf Teile der Datenbasis
beschränkt werden.
Arbeitet mit Fuzzy-Logic (unscharfe Suche).
Geschrieben in C++
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 9
htdig - Programme 1
htdig
Der "Spider", der alle Dateien durchsucht und die
Informationen darüber erfasst und speichert.
ht://Dig nennt das Programm den "Suchroboter"
htmerge
Der "Indexer", der aus den Informationen von htdig den
Dokumentenindex und die Wortdatenbank generiert.
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 10
htdig - Programme 2
htfuzzy
erzeugt aus allen gefundenen Wörtern mittels des
Endungsskriptes und des Endungswörterbuchs
eine Datenbank
htfuzzy muß zur Erzeugung der jeweiligen
Datenbanken nur ein einziges Mal laufen.
(Datenbanken von den Dokumenten unabhängig)
Zum Generieren einer Synonym-Datenbank braucht
man ein Synonym-Wörterbuch. Ein
englischsprachiges wird mitinstalliert.
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 11
htdig - Programme 3
htnotify
Suche nach veralteten Dateien.
Benachrichtigung per Email an den zuständigen
Betreuer.
Festlegung im Head einer HTML-Seite als Metatag
Email-Adresse, das Subject und das Datum, ab wann eine
Datei als veraltet gelten soll,
<meta name="htdig-email" content="maintainer@bigpage.de">
<meta name="htdig-email-subject" content="Seite updaten!!!">
<meta name="htdig-notification-date" content="01/07/2001">
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 12
htdig - Programme 4
htsearch
Die eigentliche Suchfunktion.
Aufruf mit der Methode "POST" als auch mit
"GET" möglich (via Suchmaske).
"GET" sollte vorgezogen werden, da die
übergebenen Variablen in der URL auftauchen
Suchworte können mit dem Webalizer ausgewertet
werden.
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 13
htdig - Probleme
modifizierte htdig läuft nicht mit der
Datenbank Version 2.64 unter Win 2000
Änderungen:
Verwendung der Berkley Datenbank Version 2.77
Anpassung der absoluten Pfade auf relative Pfade
Sortierfunktion (defaults.cc) angepasst
{"sort_prog","c:/htdig/bin/gnu_sort.exe"}
Verwendung der Cygwin Sortierfunktion
sort.exe {"sort_prog","sort.exe"}
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 14
Datenbankmodell
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 15
JPGraph
Allgemeines
entwickelt von Johan Persson
„quick and dirty“, aber auch komplexe Graphen
für nicht kommerziellen Gebrauch kostenlos
Diagrammtypen
Balken-, Linien- und Kuchendiagramme
3d Kuchendiagramme
ab Version 1.6.3 auch Odometers
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 16
JPGraph - Voraussetzungen
Apache HTTP Server
PHP >= 4.1 (PHP 5.x noch nicht möglich)
GD Library >= 1.8
phpinfo()
FreeType Support – enabled
FreeType Linkage – with freetype
JPGraph Library
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 17
JPGraph - Installation
JPGraph Library entzippen
src-Ordner in gewünschtes Homepage-
Verzeichnis kopieren
jpgraph.php anpassen
// DEFINE(„CACHE_DIR“,“/tmp/jpgraph_cache/“);
an eigenes Cache-Verzeichnis anpassen
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 18
JPGraph - Grafik erstellen
einbinden der Libraries
include (“../jpgraph.php“);
include (“../jpgraph_line.php“);
bilden der Grafik
$ graph = new Graph(“Breite“, “Höhe“,
“auto“);
festlegen der Skala
$ graph->SetScale(“x-Achsey-Achse“);
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 19
JPGraph - Skalen-Typen
x-Achse
lin Lineare Skala
text Textskala
log Logarithmische Skala
int Integer-Skala
y-Achse
wie x-Achse, nur keine Textskala möglich
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 20
JPGraph - Grafik definieren
Werte in Array einfügen
$ydata = array(11, 3, 8, 12, 5, 1, 9, 13, 5, 7);
Umwandlung in Graphen
$lineplot = new LinePlot($ydata);
Eintragung in die Grafik
$graph->Add($lineplot);
Ausgabe des Graphen
$ graph->Stroke();
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 21
JPGraph - Grafik einbinden
<img src=„grafik1.php“ width=„300“
height=„200“>
Grafik wird in eigener Datei erzeugt
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 22
JPGraph - Beispiel
<?php
include ("../jpgraph.php");
include ("../jpgraph_line.php");
$ graph = new Graph(350,250,"auto");
$ graph->SetScale(“textlin“);
// Grafik definieren...
$ graph->Stroke();
?>
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 23
JPGraph
Beispielgraphen
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 24
JPGraph
Beispielgraphen
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 25
aktueller Stand
Entwicklungsumgebung installiert und eingerichtet
Datenbankmodell entwickelt
notwendige ht://Dig Implementierungen
SQL-Scripterzeugung
Einbau eines „Zeitstempels“ als zusätzliches Attribut
modifizierte htdig 3.16 an Win 2000 angepasst
Beginn der eigentlichen Visualisierung
Anbindung der MySQL-Datenbank an JPGraph mit
Hilfe von PHP
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 26
mögliche Erweiterungen
Einbau der Parent-URL in die ht://Dig als
zusätzliches Attribut
Visualisierung der Response-Zeiten des
Servers
Visualisierung der Entropie von Webseiten
Auswahlmöglichkeit der zu visualisierenden
Attribute
Anbindung der ht://Dig an die MySQL
Datenbank
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 27
Ausblick
Website zum Projekt
Quellenangaben
Dokumentationen
Downloadmöglichkeiten
modifizierte htdig als Win2000 Version
...
PDV - Vertiefung SS2004 Frank Eckert / Stefan Richter 28
Related docs
Get documents about "