Was ist Cygwin

Document Sample
scope of work template
							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