WEBVIEW: un programa a escala de Internet con TAIGA

Resumen

WebView es una visualización de cómo se usa actualmente la web. Está diseñado para monitorear sitios web que actualmente están navegando y para acumular esta información de categoría en una pantalla significativa (e interesante). Al mismo tiempo, es una demostración del potencial del sistema de programación TAIGA .

Para que esta visualización sea interesante y efectiva, debemos tener personas que puedan usarla. Por lo tanto, le recomendamos que descargue, instale y ejecute el software.

visualización

Desde la perspectiva del usuario, webview es un script simple que muestra una visualización categorizada de lo que las personas están navegando actualmente. A continuación se muestra un ejemplo de una pantalla:

broken image

La pantalla consta de anillos concéntricos, cada uno de los cuales representa un período de tiempo entre un minuto y varios días. Cada anillo se divide en regiones que reflejan una sola categoría de páginas web. (Actualmente, utilizamos la clasificación OpenDirectory, pero cualquier clasificación funcionaría). Las categorías están ordenadas en orden alfabético, en sentido antihorario desde la posición 3 (lo que tiene sentido al menos para los matemáticos). Los colores son arbitrarios, pero se eligen para maximizar la diferencia entre las categorías adyacentes. Dentro de cada categoría hay una línea ondulada que codifica información sobre las páginas visitadas en esa categoría. La pantalla se actualiza cada minuto.

La pantalla ofrece al usuario varios tipos de información. La distancia del arco para cada categoría es proporcional al número de vistas (páginas solicitadas por un navegador) de páginas en esa categoría durante el intervalo. El color de la región denota la categoría; La saturación de color refleja el número relativo de vistas. Por lo tanto, si un intervalo tiene relativamente pocas relaciones (si la relación se basa en el tiempo cubierto por el intervalo de tiempo versus el historial general), entonces la región será más fácil; Si el rango tiene muchas vistas, el rango será más oscuro. La línea ondulada en sí misma puede codificar el número relativo de URL distintas durante el intervalo en la frecuencia de la línea. Por lo tanto, si todas las páginas vistas para una sola categoría fueran de una sola URL, la línea sería suave; si cada uno fuera distinto, la línea sería bastante ondulada. El grosor de la línea se utiliza para reflejar el número relativo de usuarios que navegan por las páginas de esa categoría. Si un solo usuario realizara toda la navegación, la línea sería bastante delgada; si corresponde a diferentes grupos de usuarios, la línea sería gruesa.

La pantalla también puede codificar información en el brillo (se desvanece a negro) de las aberturas y la amplitud de las líneas. El usuario tiene la opción de cambiar las diferentes propiedades de visualización a través de los cuadros de diálogo correspondientes. Esto incluye cambiar las estadísticas asociadas con cada propiedad gráfica, cambiar los colores asociados con las diferentes categorías, asignar categorías y modificar las diferentes aperturas.

Recolección de información

Para mostrar información sobre lo que sucede en la web, necesitamos recopilar información. Por lo tanto, este programa es spyware. Monitorea su historial de navegación e informa las páginas que está buscando a un servidor central donde se clasifican y se registran las categorías. Sin embargo, el programa no registra información de identificación personal. Los "usuarios" están representados por una identificación aleatoria única, que se usa solo para obtener el número de usuarios. Los ID son arbitrarios y no se pueden rastrear hasta la fuente (que yo sepa). El spyware solo funciona cuando ejecuta el visor y solo para el usuario que lo ejecuta. Se proporciona la fuente completa si no cree lo que está sucediendo.

Tenga en cuenta que nuestra herramienta funciona en Windows, Linux y Mac OS / X con safari, mozilla, IE y Opera en varias combinaciones. Si desea contribuir a los datos del proyecto, pero no desea ejecutar el visor, proporcionamos un script que solo ejecuta el monitor histórico.

clasificación

El sistema nunca guarda las URL o ID de los usuarios. En cambio, mientras aprende sobre una página, encuentra la categoría apropiada y guarda periódicamente información sobre el número de páginas, usuarios y URL para cada categoría. El sistema no descarga ni accede a una página para encontrar su categoría. En su lugar, intente encontrar la categoría solo con la URL.

Usando el marco TAIGA, permitimos múltiples implementaciones de los clasificadores. Actualmente, ofrecemos tres tipos diferentes. Nuestro primer categorista utilizó el servicio web de Google, pidiéndole a Google que busque una página en particular y mirando la clasificación de Open Directory que Google devuelve como parte del resultado. Esto es limitado tanto porque Google no quiere llamar al servicio web más de 1000 veces al día como porque no siempre informa la clasificación incluso para páginas relativamente comunes. Una alternativa es MeURLinproyecto. Tenemos un clasificador que habla con su página de demostración (todavía no tienen un servicio web) y extrae el resultado. Esto es bastante eficiente (con diversos grados de precisión), pero aún es un poco lento para nuestros propósitos. El tercer clasificador lee el directorio del directorio abierto al inicio y crea un árbol de clasificación para una URL. Una vez que se construye el árbol (lleva 15 minutos y 2G de memoria), la búsqueda es bastante rápida. Si bien los tres clasificadores están disponibles y TAIGA es libre de elegir lo que es mejor en un punto, el más probable que se use ahora es el último.

Si alguien tiene un mejor clasificador o uno que les gustaría probar, me complacería integrarlo rápidamente en el sistema. Taiga permite que la implementación sea una biblioteca, un servicio cliente-servidor o un servicio web.

Almacenamiento de datos

Utilizamos las propiedades del sistema de archivos global de TAIGA para proporcionar el repositorio de información inicial. Los resultados acumulados de la recopilación de información se adjuntan periódicamente a un archivo de datos actual. Debido a que este archivo puede ser bastante grande, realmente mantenemos un conjunto de archivos de datos en los que los archivos están vinculados entre sí. Se proporciona un servidor separado para identificar el archivo actual para una fecha de inicio particular, para crear nuevos archivos a medida que los archivos de datos se hacen demasiado grandes y para conectar los archivos entre sí. Este servicio se iniciará automáticamente (si aún no se está ejecutando) en un automóvil de Brown.

red

En el corazón de este proyecto está el sistema TAIGA. Cuando ejecute el visor, también ejecutará el núcleo TAIGA en su dispositivo. Taiga utiliza el paquete JXTA de igual a igual para garantizar la comunicación entre diferentes núcleos y servicios. En el inicio inicial, probablemente verá (al menos por ahora) un cuadro de diálogo de configuración JXTA. Si las cosas funcionan, simplemente haga clic en él. Si está familiarizado con jxta, siéntase libre de cambiar las diferentes configuraciones. Usando JXTA, webview debería poder ejecutarse en firewalls y máquinas de arbitraje. Si desea obtener un registro del núcleo TAIGA mientras se ejecuta en la máquina, configure la variante TAIGASHOW (en Windows) o configure la variante de entorno TAIGALOG en la ruta completa de un archivo de registro correspondiente.

papel

Todavía no se ha escrito nada sobre este proyecto. Apreciamos sus experiencias con esto y lo felicitamos con cualquier tipo de comentario sobre cuándo (y si) informamos.

opinión

Este software es (muy) experimental. Intentamos hacer una variedad de instalaciones diferentes, pero solo tenemos una gama limitada de sistemas disponibles. Hay muchas cosas que pueden salir mal tanto en el núcleo, en la aplicación y en la red que une todo. Queremos arreglar las cosas, pero para hacer esto necesitamos saber qué no está funcionando (y posiblemente qué está pasando). Damos la bienvenida a todas las respuestas, informes de errores, sugerencias, comentarios, preguntas, etc. Correo electrónico spr@cs.brown.edu .

software

Si se encuentra en el campo de la computación de Brown, puede obtener la última versión del software en / home / spr / tryview (Y: \ home \ spr \ tryview en Windows).

Si está fuera de la red Brown CS, el software se puede obtener de nuestro servidor ftp en formato (tar.gz) o (zip) .

La instalación es simple: descargue y expanda el software. La ejecución es simple: simplemente ejecute el script runview (o runview.bat en Windows) para obtener el visor. (Para ejecutar el software de monitoreo, solo use las secuencias de comandos RunSpy).

De nuevo Para descargar el software:

DESCARGAR webview.d distribution.tar.gz

DESCARGAR webview.distrib.zip