WEBVIEW: Ein Internet-Scale-Programm mit TAIGA

Überblick

WebView ist eine Visualisierung, wie das Web derzeit verwendet wird. Es wurde entwickelt, um die Websites zu überwachen, die gerade durchsucht werden, und um diese Informationen nach Kategorien in einer aussagekräftigen (und interessanten) Anzeige zusammenzufassen. Gleichzeitig wird das Potenzial des TAIGA-Programmiersystems demonstriert.

Um diese Visualisierung interessant und effektiv zu gestalten, müssen die Benutzer sie verwenden. Wir empfehlen Ihnen daher, die Software herunterzuladen, zu installieren und auszuführen.

Der Bildschirm

Aus Sicht der Benutzer ist Webview ein einfaches Skript, das eine kategorisierte Anzeige der aktuell durchsuchten Personen erstellt. Eine Beispielanzeige ist unten dargestellt:

Das Display besteht aus konzentrischen Ringen, von denen jeder einen Zeitraum von einer Minute bis zu mehreren Tagen darstellt. Jeder Ring ist in Bereiche unterteilt, die eine einzelne Kategorie von Webseiten widerspiegeln. (Wir verwenden derzeit die OpenDirectory-Klassifizierung, aber jede Kategorisierung würde funktionieren.) Die Kategorien sind alphabetisch geordnet und gehen von der 3-Uhr-Position aus gegen den Uhrzeigersinn (was zumindest für Mathematiker sinnvoll ist). Die Farben sind willkürlich, werden jedoch ausgewählt, um den Unterschied zwischen möglicherweise benachbarten Kategorien zu maximieren. Innerhalb jedes Kategoriebereichs befindet sich eine Wellenlinie, die Informationen zu den Seiten codiert, die in dieser Kategorie angezeigt werden. Die Anzeige wird ungefähr jede Minute aktualisiert.

Das Display bietet dem Benutzer verschiedene Arten von Informationen. Die Bogenspanne für jede Kategorie ist proportional zur Anzahl der Ansichten (von einem Browser angeforderte Seiten) von Seiten dieser Kategorie während der Zeitspanne. Der Farbton der Region bezeichnet die Kategorie; Die Sättigung der Färbung spiegelt die relative Anzahl der Ansichten wider. Wenn eine Spanne relativ wenige Ansichten hat (wobei die relative Relation auf der von der Spanne abgedeckten Zeit im Vergleich zum Gesamtverlauf basiert), ist die Region heller. Wenn die Spanne viele Ansichten hat, ist die Spanne dunkler. Die Wellenlinie selbst kann die relative Anzahl unterschiedlicher URLs während der Zeitspanne in der Frequenz der Linie codieren. Wenn also alle für eine einzelne Kategorie angezeigten Seiten von einer einzelnen URL stammen würden, wäre die Linie flach. Wenn jedes anders wäre, wäre die Linie ziemlich wellig. Die Dicke der Linie wird verwendet, um die relative Anzahl der Benutzer widerzuspiegeln, die Seiten dieser Kategorie durchsuchen. Wenn das gesamte Durchsuchen von einem einzelnen Benutzer durchgeführt würde, wäre die Linie ziemlich dünn. Wenn es vielen unterschiedlichen Benutzern entspricht, wäre die Linie dick.

Das Display kann auch Informationen in der Helligkeit (Fade to Black) der Bereiche und in der Amplitude der Linien codieren. Der Benutzer hat die Möglichkeit, die verschiedenen Anzeigeeigenschaften über entsprechende Dialogfelder zu ändern. Dies umfasst das Ändern der jeder grafischen Eigenschaft zugeordneten Statistik, das Ändern der den verschiedenen Kategorien zugeordneten Farben, das Zuordnen von Kategorien und das Ändern der verschiedenen Bereiche.

Informationsbeschaffung

Um Informationen darüber anzuzeigen, was im Web geschieht, müssen wir die Informationen sammeln. Somit ist dieses Programm Spyware. Es überwacht Ihren Browserverlauf und meldet die von Ihnen durchsuchten Seiten an einen zentralen Server, auf dem sie kategorisiert und die Kategorien aufgezeichnet werden. Das Programm zeichnet jedoch keine identifizierenden oder persönlichen Informationen auf. “Benutzer” werden durch eine eindeutige zufällige ID dargestellt, die nur zum Abrufen der Benutzeranzahl verwendet wird. Die IDs sind willkürlich und können (soweit ich weiß) nicht bis zur Quelle zurückverfolgt werden. Die Spyware funktioniert nur, wenn Sie den Viewer ausführen, und nur für den Benutzer, der die Ausführung ausführt. Die vollständige Quelle wird bereitgestellt, wenn Sie nicht glauben, was los ist.

Beachten Sie, dass unser Tool unter Windows, Linux und Mac OS / X mit Safari, Mozilla, IE und Opera in verschiedenen Kombinationen funktioniert. Wenn Sie zu den Projektdaten beitragen möchten, aber den Visualizer nicht ausführen möchten, stellen wir ein Skript bereit, das nur den Verlaufsmonitor ausführt.

Einstufung

Das System speichert niemals URLs oder Benutzer-IDs. Stattdessen findet es beim Erlernen einer Seite die entsprechende Kategorie und speichert regelmäßig Informationen über die Anzahl der Seiten, Benutzer und URLs für jede Kategorie. Das System lädt keine Seite herunter oder greift nicht darauf zu, um ihre Kategorie zu finden. Stattdessen wird versucht, die Kategorie nur über die URL zu finden.

Mit dem TAIGA-Framework ermöglichen wir mehrere Implementierungen von Klassifikatoren. Derzeit bieten wir drei verschiedene an. Unser erster Kategorisierer verwendete den Google-Webdienst und forderte Google auf, nach der jeweiligen Seite zu suchen und die Open Directory-Klassifizierung zu überprüfen, die Google als Teil des Ergebnisses zurückgibt. Dies ist begrenzt, da Google nicht möchte, dass wir den Webdienst mehr als 1000 Mal am Tag aufrufen, und weil die Klassifizierung auch für relativ häufig verwendete Seiten nicht immer gemeldet wird. Eine Alternative ist das MeURLin-Projekt. Wir haben einen Klassifikator, der mit seiner Demonstrationswebseite kommuniziert (sie haben noch keinen Webdienst eingerichtet) und das Ergebnis extrahiert. Dies ist sehr effektiv (mit unterschiedlicher Genauigkeit), aber für unsere Zwecke immer noch etwas zu langsam. Unser dritter Klassifizierer liest beim Start die Open Directory-Datenbank und erstellt einen Klassifizierungsbaum für eine URL. Sobald der Baum erstellt ist (was 15 Minuten und 2 GB Speicher benötigt), ist die Suche ziemlich schnell. Während alle drei Klassifikatoren verfügbar sind und TAIGA frei wählen kann, welcher zu einem bestimmten Zeitpunkt der beste ist, wird derzeit wahrscheinlich der letztere verwendet.

Wenn jemand einen besseren Klassifikator hat oder einen, den er ausprobieren möchte, würde ich ihn gerne schnell in das System integrieren. Mit Taiga kann die Implementierung eine Bibliothek, ein Client-Server-Dienst oder ein Webdienst sein.

Datenspeicher

Wir verwenden die globalen Dateisystemeigenschaften von TAIGA, um das anfängliche Informationsrepository bereitzustellen. Die gesammelten Ergebnisse aus der Informationserfassung werden regelmäßig an eine aktuelle Datendatei angehängt. Da diese Datei möglicherweise sehr groß werden kann, verwalten wir tatsächlich eine Reihe von Datendateien, in denen Dateien miteinander verknüpft sind. Ein separater Server wird bereitgestellt, um die aktuelle Datei für eine bestimmte Startzeit zu identifizieren, neue Dateien zu erstellen, wenn die Datendateien zu groß werden, und die Dateien miteinander zu verknüpfen. Dieser Dienst wird automatisch (falls noch nicht ausgeführt) auf einem Computer bei Brown gestartet.

Netzwerk

Im Zentrum dieses Projekts steht das TAIGA-System. Wenn Sie den Visualizer ausführen, wird auch der TAIGA-Kernel auf Ihrem Computer ausgeführt. Taiga verwendet das JXTA-Peer-to-Peer-Paket, um die Kommunikation zwischen den verschiedenen Kerneln und Diensten bereitzustellen. Beim ersten Start wird wahrscheinlich (zumindest vorerst) ein JXTA-Konfigurationsdialogfeld angezeigt. Wenn die Dinge funktionieren, sollte es ausreichen, nur auf OK zu klicken. Wenn Sie mit jxta vertraut sind, können Sie die verschiedenen Einstellungen ändern. Mit JXTA sollte Webview in Firewalls und auf Arbitray-Computern ausgeführt werden können. Wenn Sie ein Protokoll vom TAIGA-Kernel abrufen möchten, während dieser auf Ihrem Computer ausgeführt wird, setzen Sie entweder die Umgebungsvariable TAIGASHOW (unter Windows) oder die Umgebungsvariable TAIGALOG auf den vollständigen Pfadnamen einer entsprechenden Protokolldatei.

Papiere

Über dieses Projekt wurde noch nichts geschrieben. Wir schätzen Ihre Erfahrungen damit und freuen uns über jegliches Feedback, wann (und ob) wir einen Bericht schreiben.

Feedback

Diese Software ist (sehr) experimentell. Wir haben versucht, verschiedene Installationen durchzuführen, haben jedoch nur eine begrenzte Anzahl von Systemen zur Verfügung. Sowohl im Kernel als auch in der Anwendung und im Netzwerk, das alles zusammenhält, kann viel schief gehen. Wir wollen Dinge reparieren, aber dazu müssen wir wissen, was nicht funktioniert (und möglicherweise was). Wir freuen uns über alle Rückmeldungen, Fehlerberichte, Vorschläge, Kommentare, Anfragen usw. Senden Sie eine E-Mail an [email protected]

Software

Wenn Sie sich in der Brown-Informatik befinden, können Sie die neueste Version der Software unter / home / spr / tryview herunterladen (Y: \ home \ spr \ tryview unter Windows).

Wenn Sie sich außerhalb des Brown CS-Netzwerks befinden, können Sie die Software entweder im Format (tar.gz) oder (zip) von unserem FTP-Server herunterladen.

Die Installation ist einfach: Laden Sie die Software herunter und erweitern Sie sie. Das Ausführen ist ebenfalls einfach: Führen Sie einfach das Runview-Skript (oder runview.bat unter Windows) aus, um den Visualizer zu erhalten. (Um nur die Überwachungssoftware auszuführen, verwenden Sie die Runspy-Skripte.)

Nochmal. So laden Sie die Software herunter:

DOWNLOAD webview.distrib.tar.gz

DOWNLOAD webview.distrib.zip

Original article is here http://cs.brown.edu/~spr/research/webview.html