WEBVIEW: Інтэрнэт-шкала з выкарыстаннем TAIGA

Арыгінал даступны на сайце http://cs.brown.edu/

Агляд

WebView з’яўляецца візуалізацыяй таго, як на сённяшні дзень выкарыстоўваецца Інтэрнэт. Яно прызначана для маніторынгу сайтаў, якія праглядаюцца ў дадзены момант, а таксама для акумулявання інфармацыі з разбіўкай па катэгорыях для змястоўнага (і цікавага) яе адлюстравання. У той жа час, яно з’яўляецца дэманстрацыяй патэнцыялу сістэмы праграмавання TAIGA.

Каб зрабіць гэтую візуалізацыю цікавай і эфектыўнай, нам неабходна, каб людзі ёй карысталіся. Такім чынам, мы рэкамендуем вам загрузіць, усталяваць і запусціць праграмнае забеспячэнне.

Адлюстраванне даных

З пункту гледжання карыстальнікаў, webview – гэта просты скрыпт, які змяшчае катэгарызаванае адлюстраванне таго, што людзі ў цяперашні час праглядаюць. Прыклад адлюстравання даных паказаны ніжэй:

Адлюстраванне даных складаецца з канцэнтрычных кольцаў, кожнае з якіх адлюстроўвае перыяд часу ад адной хвіліны да некалькіх дзён. Кожнае кальцо дзеліцца на ўчасткі, якія адлюстроўваюць асобна ўзятую катэгорыю вэб-старонак (на сённяшні дзень мы выкарыстоўваем класіфікацыю OpenDirectory, але падыдзе любая катэгарызацыі). Катэгорыі размешчаны ў алфавітным парадку ідучы супраць гадзіннікавай стрэлкі з пазіцыі 3 гадзіны (што лагічна, па меншай меры, для матэматыкаў). Колеры з’яўляюцца адвольнымі, але выбраны такім чынам, каб па магчымасці зрабіць максімальную розніцу паміж найбліжэйшымі катэгорыямі. Ўнутры ўчастка кожнай катэгорыі знаходзіцца хвалістая лінія, дзе зашыфравана інфармацыя пра старонкі, якія праглядаюцца ў гэтай катэгорыі. Адлюстраванне даных абнаўляецца штохвілінна або каля таго.

Адлюстраванне даных дае карыстальніку інфармацыю некалькіх відаў. Інтэрвал дугі ў кожнай катэгорыі прапарцыйны колькасці праглядаў (старонак, запытаных браўзэрам) старонак названай катэгорыі за прамежак часу. Адценне ўчастка пазначае катэгорыю; насычанасць колеру адлюстроўвае адносную колькасць праглядаў. Такім чынам, калі інтэрвал ўтрымлівае адносна мала праглядаў (дзе паказчык абапіраецца на колькасць часу, якія ахопліваюць інтэрвалам ў адносінах да ўсёй гісторыі), то ўчастак будзе святлей; калі інтэрвал ўтрымлівае мноства праглядаў, то ён будзе цямней. Сама хвалістая лінія можа несці інфармацыю аб адносным колькасці розных URL-адрасоў за перыяд часу ў частаце паўтаранасці выгібу лініі. Так, напрыклад, калі б усе старонкі, прагледжваемыя ў рамках адной катэгорыі, ставіліся б да аднаго URL, то лінія была б роўнай, а калі б усе яны ставіліся да розных, то лінія была б даволі хвалістай. Таўшчыня лініі выкарыстоўваецца для адлюстравання адноснай колькасці карыстальнікаў, якія праглядаюць старонкі гэтай катэгорыі. Калі б усе прагляды былі зроблены адным карыстальнікам, то лінія была б даволі тонкай; калі ж яны адпавядаюць мноства розных карыстальнікаў, то лінія будзе тоўстай.

Адлюстраванне даных таксама можа несці інфармацыю з дапамогай яркасці участкаў (становячыся цямней) і амплітуды ліній. У карыстальніка маецца магчымасць змяняць розныя ўласцівасці адлюстравання даных з дапамогай адпаведных дыялогавых вокнаў. Гэта ўключае ў сябе: змяненне статыстыкі, звязанай з усімі графічнымі ўласцівасцямі; змена кветак, звязаных з рознымі катэгорыямі; мэппінг катэгорый; змена неаднолькавых інтэрвалаў.

Збор інфармацыі

Каб адлюстраваць інфармацыю аб тым, што адбываецца ў Інтэрнэце, нам неабходна сабраць інфармацыю. Такім чынам, гэтая праграма з’яўляецца шпіёнскім праграмным забеспячэннем. Яна адсочвае гісторыю вашых наведванняў і паведамляе аб прагляданых вамі старонках цэнтральнага сервера, дзе яны класіфікуюцца і дзе фіксуюцца катэгорыі. Аднак праграма не запісвае ідэнтыфікацыйную або асабістую інфармацыю. «Карыстальнікі» прадстаўлены унікальным выпадковым ID, які выкарыстоўваецца выключна для падліку карыстальнікаў. ID з’яўляюцца адвольнымі і не могуць быць отслежены аж да крыніцы (наколькі мне вядома). Шпіёнскае праграмнае забеспячэнне працуе толькі пры запуску праграмы прагляду і толькі для таго карыстальніка, які запускае праграму. Калі вы не верыце ў тое, што адбываецца, то прадастаўляецца зыходнік.

Звярніце ўвагу, што наша ПЗ падыходзіць Windows, Linux і Mac OS/X для Safari, Mozilla, IE і Opera у розных камбінацыях. Калі вы жадаеце зрабіць свой уклад у даныя праекта, але не хочаце запускаць візуалізатар, то мы прадстаўляем скрыпт, які запускае выключна адсочванне гісторыі.

Класіфікацыя

Сістэма ніколі не захоўвае URL або ID карыстальнікаў. Замест гэтага, калі яна даведаецца пра старонку, яна знаходзіць адпаведную катэгорыю і перыядычна захоўвае інфармацыю пра колькасць старонак, карыстальнікаў і URL-адрасоў для кожнай катэгорыі. Сістэма не загружае старонку і не зьвяртаецца да яе для таго, каб знайсці яе катэгорыю. Замест гэтага яна спрабуе знайсці катэгорыю выключна па URL.

Выкарыстоўваючы платформу TAIGA, мы прадстаўляем разнастайную рэалізацыю класіфікатараў. Цяпер мы прадстаўляем тры розных варыянту. Наш першы катэгарізатар выкарыстаў інтэрнэт-сэрвіс Google, запрошваючы ў Google пошук канкрэтнай старонкі і вывучаючы класіфікацыю Open Directory, якую Google вяртае ў якасці выніку. Такі падыход абмежаваны як тым, што Google не хоча, каб мы звярталіся да вэб-службе больш за 1000 разоў на дзень, так і тым, што яны не заўсёды даюць справаздачу аб класіфікацыі нават для адносна распаўсюджаных старонак. Альтэрнатывай з’яўляецца праект  MeURLin. У нас маецца класіфікатар, які звяртаецца да іх дэманстрацыйнай вэб-старонцы (у іх пакуль не настроены вэб-сэрвіс) і атрымлівае вынік. Гэта даволі эфектыўна (з рознай ступенню дакладнасці), але для нашых намераў ўсё ж занадта павольна. Наш трэці класіфікатар счытвае базу даных адкрытых каталогаў пры запуску і стварае дрэва класіфікацыі для URL. Як толькі дрэва пабудавана (што займае 15 хвілін і 2 ГБ памяці), пошук выконваецца даволі хутка. Пры тым, што ўсе тры класіфікатара даступныя і TAIGA можа свабодна выбіраць, які з іх з’яўляецца самым прыдатным ў дадзены момант, і, хутчэй за ўсё, выкарыстоўваецца апошні.

Калі ў каго-небудзь ёсць класіфікатар лепей ці ж такі, які хацелася б паспрабаваць, то я быў бы рады хутка інтэграваць яго ў сістэму. Taiga дазваляе рэалізацыі быць бібліятэкай, сэрвісам тыпу «кліент-сервер» або вэб-сэрвісам.

Захоўванне даных

Мы выкарыстоўваем уласцівасці глабальнай файлавай сістэмы TAIGA для прадастаўлення зыходнага сховішчы інфармацыі. Накопленыя даныя збору інфармацыі перыядычна дадаюцца ў гэты масіў даных. Паколькі гэты масіў патэнцыйна можа станавіцца даволі вялікім, у цяперашні час мы падтрымліваем сістэму файлаў з данымі, дзе файлы звязаны адзін з адным. Асобны сервер прадастаўляецца для ідэнтыфікацыі гэтага файла на вызначаны час запуску, для стварэння новых файлаў (калі файлы даных становяцца занадта вялікімі), а таксама для сувязі файлаў паміж сабой. Гэтая служба будзе запушчана аўтаматычна (калі яна ўжо не запушчана) на апаратнай платформе ў Brown.

Сетка

У аснове гэтага праекта знаходзіцца сістэма TAIGA. Пры запуску візуалізатара на сваёй апаратнай платформе вы таксама запусціце ядро ​​TAIGA. Для забеспячэння сувязі паміж рознымі ядрамі і сэрвісамі Taiga выкарыстоўвае аднарангавы пакет JAXTA. Пры першым запуску вы, верагодна, ўбачыце (па меншай меры, на сённяшні дзень гэта так) дыялогавае акно канфігурацыі JXTA. Калі ўсё добра, то досыць націснуць на «ОК». Калі вы знаёмыя з JXTA  не саромейцеся змяняць розныя налады. Выкарыстоўваючы JXTA, webview павінен быць здольным працаваць унутры брандмаўэраў і на выпадковых апаратных платформах. Калі вы хочаце атрымаць справаздачу ядра TAIGA падчас яго працы на вашым кампутары, то альбо ўсталюеце пераменную асяроддзя TAIGASHOW (для Windows), альбо задайце пераменнай асяроддзя TAIGALOG поўнае імя шляху да адпаведнага файлу справаздачы.

Дакументы

Аб гэтым праекце яшчэ нічога не напісана. Мы цэнім любое ваша азнаямленне з ім і вітаем кожны водгук на выпадак калі мы напішам справаздачу.

Зваротная сувязь

Гэта праграмнае забеспячэнне з’яўляецца (весьма) эксперыментальным. Мы паспрабавалі выканаць мноства розных установак, але ў нас маецца толькі абмежаваны дыяпазон даступных сістэм. Шмат што можа пайсці не па плане: як у ядры і ў дадатку, так і ў сетцы, якая склейвае усё разам. Мы хочам ліквідаваць памылкі, але для гэтага нам трэба ведаць, што не працуе (і, па верагоднасці, што працуе). Мы вітаем усе водгукі, паведамленні аб багах, прапановы, каментары, пытанні і т. п. Электронныя лісты адпраўляйце на адрас [email protected].

Праграмнае забеспячэнне

Калі вы знаходзіцеся ў Brown Computer Science, то апошні выпуск праграмнага забеспячэння можна атрымаць па адрасе /home/spr/ ryview (Y:\home\spr\tryview для Windows).

Калі вы не знаходзіцеся ў сетцы Brown Computer Science, то праграмнае забеспячэнне можна атрымаць з нашага ftp-сервера ў (tar.gz) або (zip) фармаце.

Ўстаноўка простая: скачайце і пашырце праграмнае забеспячэнне. Яго запуск таксама просты: простае выкананне скрыпту runview (або runview.bat для Windows) для таго, каб атрымаць візуалізатар (а для запуску праграмнага забеспячэння прызначанага выключна для маніторынгу выкарыстоўвайце runspy scripts).

Зноў, каб скачаць праграму:

СКАЧАЦЬ webview.distrib.tar.gz

СКАЧАЦЬ webview.distrib.zip