Обзоры
Технология информационных коллекторов
0

Технология информационных коллекторов

К счастью (а, возможно, и к удивлению), информационные ресурсы не отличаются
однообразием. Хотя термины "база данных" и "информационное хранилище"
уже устойчиво ассоциируются с фразой "потребности бизнеса", и в статьях
маститых футурологов обычные электронные карманные справочники по товарам и услугам
получают громкие названия "brain accelerators" (ускорители мышления),
далеко не все человеческие потребности укладываются в жесткие рамки товарно-денежных
отношений
.

Иногда он грустно думал:
"Почему?", а иногда: "По какой причине?", а иногда он думал
даже так:
"Какой же отсюда следует вывод?".

А. Милн

Соответственно, и далеко не во всех базах данных хранятся вариации канонических
(с точки зрения авторов многочисленных учебников и справочников) записей типа
"customer_record" ("информация о потребителе"). К сожалению,
и сами базы данных "непотребительского" характера, и соответствующее
ПО для их создания и поддержания в актуальном состоянии остаются вне поля зрения
массовых изданий. Направленная на устранение этого "белого пятна" статья
не претендует ни на полноту, ни на детальный анализ всего существующего ПО, попадающего
в нечетко определенную категорию "системы управления информационными коллекторами".
Но рассмотренные в ней программы обладают рядом неоспоримых преимуществ: доступностью
(все они легально бесплатны и кросс-платформенны), работоспособностью и надежностью
(речь будет идти только о ПО с многолетней историей). И, что главное, в ней сделана
попытка найти ответ на основной вопрос: "Зачем это надо?".

Ситуация

Если ваш полноценно-персональный ПК используется не только (и не столько)
для развлечений, то со временем на его диске образуются "информационные завалы".
Это явление неизбежное — в Сети можно отыскать море книг (не только по компьютерной
тематике), технической документации, художественной литературы, статей. Надеяться
только на online-доступ приходится не всегда — Сеть "любит" подбрасывать
сюрпризы в виде исчезающих персональных страниц и даже целых сайтов. А отказаться
от бесплатной информации, которую получить любым другим способом трудно или вообще
невозможно, по меньшей мере, неразумно. Тем более неразумно при учете продолжительного
времени актуальности информации учебно-справочного характера. Когда "свалка"
достигает критических размеров (верхний предел определить трудно, но по опыту
автора он соответствует 1 GB), управление ею с помощью примитивно-традиционных
способов, таких, как создание дерева каталогов (директорий) и группирование по
тематикам, — занятие не для людей со слабыми нервами и недостатком свободного
времени. Но главная проблема заключается даже не в сложности управления накопленными
"информационными ресурсами", а в неудобстве (в некоторых случаях —
даже в практической невозможности) их использования.

Ситуация крайне усложняется разнообразием форматов данных, характерных для "информационной
свалки". Привычные пользователям настольных операционных систем тексты в
формате Microsoft Word здесь не в почете — в Сети их очень мало. Даже на сайте
www.research.microsoft.com,
где можно отыскать исключительно интересные работы в самых неожиданных областях,
предпочтение отдается независимым от операционной системы форматам PostScript
и pdf. Эти же форматы царствуют и в мире технической информации. Технологические
инструкции по обслуживанию той или иной марки автомобиля, справочники по электронным
компонентам, научные статьи и отчеты, журналы — этот перечень распространяемых
в кросс-платформенных форматах документов можно продолжать до бесконечности.

Естественно, что в список таких форматов попадает и html — опыт показывает, что самый надежный online-доступ обеспечивается только тогда, когда необходимая вам страница находится… на локальном диске. Для полноты картины остается добавить только перечень форматов графических файлов, без которых тоже не обойтись, — jpg, gif, tif, png…

Даже поверхностный взгляд на все это разнообразие сразу выявляет множество проблем, две из которых при росте "базы" чаще всего приводят ее к "летальному исходу". Во-первых, дисковое пространство: даже после снижения стоимости многогигабайтовых накопителей место на них никогда не бывает лишним. Но это только одна часть проблемы, со второй многие познакомились после утраты тщательно собираемой по крупицам огромной информационной базы — большие размеры гарантируют нетривиальность процедуры резервного копирования. Во-вторых, сложность поиска нужной информации (например, цитаты): в pdf-файлах нельзя непосредственно искать фрагменты текста без использования неповоротливого и ресурсоемкого ПО. Последствия проявлений этих двух проблем уже очевидны и, как говорилось выше, фатальны: в первом случае без CD-RW-копий можно просто утратить все, "что нажито непосильным трудом", во втором — стать счастливым обладателем персональной мусорной свалки (и не важно, что она вся усыпана жемчужинами, важно, что рассмотреть жемчуг невозможно).

Потребительский импульс

Несмотря на явно выраженное "антипотребительское" начало статьи
и присущий автору скепсис, после освоения пакета программ, предназначенного для
организации информационного хранилища, жажда потребления взяла свое. Очень захотелось…
Webpad — непременно легкий, с беспроводным доступом и хорошим экраном. Ведь как
замечательно вечером, лежа на диване (а не горбясь за компьютерным столом), вместо
очередного "TV-промывания мозгов" почитать что-нибудь интересное, чего
"на бумаге" не найти. И чтобы собственный ПК выполнял роль сервера —
в конце концов, появится достойное применение всем этим копеечным гигабайтам.
Такой подход не согласуется со взглядами апологетов "сервер-центрического"
компьютинга в одном (и главном) — он предусматривает наличие полноценного персонального
сервера, который при необходимости может сыграть роль и персональной рабочей станции
(или даже игрового ПК).

К сожалению, пока никто всерьез не занялся подобными разработками, несмотря на наличие всего необходимого — дешевых аппаратных средств, высокоскоростных беспроводных каналов с маленьким радиусом действия и, наконец, программного обеспечения. Домашняя беспроводная сеть, вероятнее всего, еще долго будет оставаться доступной или гениальным фанатикам-самодельщикам, или чрезвычайно состоятельным фанатикам.

"Управляя гигабайтами"

Кавычки в названии не случайны: упомянутый выше пакет программ, вызвавший
не слишком здоровое желание "купить еще один компьютер", именно так
и называется. Managing Gigabytes, или просто MG, была первой серьезной, полнофункциональной
и легально доступной системой, позволившей навести порядок в "информационной
свалке" на жестком диске.

Разработанная в рамках академического проекта новозеландских и австралийских ученых и своевременно "отпущенная на волю" (распространяемая с открытыми исходными текстами и либеральной лицензией), прекрасно документированная MG "приживается" в качестве незаменимого инструмента очень быстро. На деле представляющая собой обширный набор программ, MG выполняет на первый взгляд несложные операции — полнотекстовое индексирование и релевантный поиск. Так как подобные действия свойственны практически всем существующим аналогичным системам, им целесообразно уделить хоть немного внимания.

Термин
"полнотекстовое индексирование" означает способность ПО создавать для
каждого слова в хранящихся текстах специальную запись — индекс, содержащий информацию
о местоположении слова в файле. Естественно, что полнотекстовая индексация —
явление отнюдь не новое или уникальное, существует множество программ, ее поддерживающих.
Кроме того, у систем с полнотекстовой индексацией есть конкуренты, осуществляющие
поиск непосредственно в текстовых файлах и не требующие дополнительной информации
(индексов). К последним можно отнести разнообразные вариации классических программ
поиска по шаблону семейства grep (популярная утилита в ОС Unix). Оба варианта
обладают своими достоинствами и недостатками. Так, grep-подобные системы непозволительно
долго работают с очень большими массивами данных (ведь для поиска всех совпадений
им нужно полностью "просмотреть" текст). Главный "минус" полноиндексных
систем заключается в том, что хранение полнотекстовых индексов — достаточно "дорогое
удовольствие", когда речь идет о гигабайтовых текстовых базах. Разработчики
MG нашли изящное решение этой проблемы, обеспечив упакованное хранение как самой
базы с текстами, так и индексных файлов, что позволило сократить объем хранимой
базы на порядок при незначительном увеличении времени обработки запроса.

Релевантный поиск, обеспечиваемый MG и рядом других систем, — понятие намного более сложное, для трактования которого требуется серьезный математический аппарат. На ознакомительном уровне релевантность означает "значимость", измеряемую по определенным критериям. На сегодняшний день удачным алгоритмам релевантного поиска фактически нет альтернативы — аналогичные по точности определения нужного документа методы или слишком сложны, или очень ресурсоемки. Авторство самой концепции релевантного поиска принадлежит знаменитому Ванниверу Бушу (Vannevare Bush), а первой публикацией, посвященной ей, считается датируемая 1941 г. работа Буша "Меморандум относительно Memex" — уже ставший классическим труд, являющийся основой до сих пор находящейся в состоянии теоретических исследований области wearable-компьютинга ("невидимых" и "неотъемлемых" носимых компьютеров).

Итак,
Managing Gigabytes. Относительно небольшая (если судить по размерам реализации)
система управления компрессированным информационным хранилищем, содержащим текстовые
и графические файлы. В категорию "текстовых" входят все представляемые
в "чистом" текстовом формате документы, например html и PostScript.
Для тех, кто не знаком с последним термином: содержимое файлов с расширением ps
является… программой на языке PostScript, которая может быть превращена в пригодный
к печати на обычном принтере растровый формат с помощью виртуальной стековой машины
PostScript (например, бесплатной программой GhostScript). Пользователям ОС Unix
и клонов доступна графическая оболочка для задания запросов и отображения результатов
поиска. Уровень документации очень хороший, кроме того, системе посвящена одноименная
книга. Начиная с версии 1.3, MG стала кросс-платформенной системой, способной
работать в среде практически всех Unix-совместимых ОС и MS Windows.

Судя по опыту более чем годичной эксплуатации, MG со своими задачами справляется превосходно, а к перечню недостатков системы можно отнести непривычный пользователям Windows командный интерфейс (который на самом деле весьма удобен, его необходимо просто хорошо изучить) и неспособность работать с текстовыми файлами в кодировке Unicode. Последнее ограничение весьма важно — если уж создавать информационный ресурс, то "многоязычия" не избежать (пример, с которым столкнулся автор, не относится к компьютингу вообще — попытка добавить к информационной коллекции текст… "Войны и мира" Л. Н. Толстого, изобилующий французскими, английскими и немецкими предложениями).

Одно из самых занимательных приложений MG — создание… удобных многоязычных словарей с быстрым поиском переводов слов. Такой подход обладает рядом достоинств: словари прекрасно сосуществуют со всей коллекцией информационных ресурсов, представляются в обычном текстовом виде (иначе говоря — в открытом формате), занимают незначительное дисковое пространство и, что главное, — обеспечивают ряд уникальных функций (в первую очередь, за счет возможностей поиска с булевыми запросами типа "слово AND слово NOT слово"), реализация которых принципиально невозможна в закрытых коммерческих программах. Никакого низкоуровневого программирования для такого расширения функциональности не требуется, а процедура создания "словаря" ничем не отличается от типовой процедуры добавления нового документа к коллекции.

Многофункциональность MG позволяет использовать ее и для ведения базы данных электронной почты (что немаловажно для интенсивно "переписывающихся" пользователей), и для управления собственными каталогами рассылок новостей по интересующей тематике.

Цифровая библиотека

MG, ставшая "первой волной", не остановилась в своем развитии.
На ее базе новозеландскими учеными разработана исключительно мощная система управления
цифровой библиотекой Greenstone (программное ядро NZDL — New Zealand Digital
Library, цифровая библиотека Новой Зеландии). В полном соответствии с традициями
научного сообщества реализация Greenstone поставляется с открытыми исходными текстами
и легально бесплатно. Основой Greenstone является модифицированная версия MG,
"понимающая" Unicode-текст, а также ряд дополнительных утилит и сервисов.
В отличие от ориентированной на сугубо персональное применение MG, Greenstone
— сетевая многопользовательская система, поддерживающая http-доступ к ресурсам
информационного хранилища. Персональное применение, естественно, также возможно,
а сама система доступна в исполняемом виде пользователям всех версий Windows (а
также в исходных текстах). Для управления, администрирования и доступа к системе
необходим только броузер.


К особенностям Greenstone следует отнести единое внутреннее компрессированное
представление для документов самых разных форматов. Естественно, что при этом
осуществляется полнотекстовое индексирование (даже для тех форматов, для которых
непосредственно такая процедура невозможна, например, для pdf). О качестве реализации
процедур "упаковки" и преобразования можно судить по коллекции Computer
Science Technical Reports, доступной на сайте NZDL: полноиндексная база размером
2,7 GB, содержащая 1,3 млн. страниц (394 млн. слов и почти 30 тыс. иллюстраций),
была создана из 34 GB PostScript-файлов! В ней содержатся отчеты о НИР, диссертации,
научные статьи, монографии, короче говоря, все, что отражает состояние научной
жизни современного компьютерного сообщества (а точнее, 296 ведущих компаний и
университетов всего мира). Но хорошие способности к "упаковке", высокие
скоростные показатели (локально установленная Greenstone работает действительно
очень быстро) и единый внутренний формат данных — это еще далеко не все. В Greenstone
фактически полностью автоматизирован процесс добавления ресурсов к информационной
базе с автоматическим созданием гипертекстовых ссылок, сняты практически все ограничения
на тип хранимых данных — к тексту можно "присоединять" звуковые и видеофайлы.
Образованные с помощью Greenstone коллекции можно "публиковать" в Internet
(именно так поступили авторы проекта NZDL) или распространять на CD-ROM.


Уже более чем двухмесячный опыт работы с персональной версией Greenstone позволил совершенно тривиально превратить "свалку" общей емкостью более 1,2 GB в базу размером… 200 MB. Кроме того, удобство пользования таким персональным информационным коллектором оказалось настолько высоким, что это буквально вынудило начать добавление к базе множества информационных файлов, распространяемых на… CD-ROM. Таким образом, размер базы вырос до 350 MB, но, как говорится, "игра стоила свеч" — из моря разрозненной информации получилось нечто совершенно исключительное. Так, коллекция, посвященная любимому автором микроконтроллеру 8051, на сегодняшний день представляет собой единое информационное поле, объединяющее гиперссылками руководства по архитектуре и машинному языку с книгой по программированию 8051 на C, чуть ли не раритетной документацией Intel на первые микросхемы семейства и техническими руководствами самых современных версий этой нестареющей микросхемы. Если добавить к данной коллекции регулярно пополняемую (и конвертируемую в Unicode) компактную "литературную базу", мощные справочники по программированию на языке Ada 95 и ОС Unix, постоянно растущие коллекции алгоритмов, электронных схем и просто интересных статей и, наконец, ряд словарей, то получается весьма серьезный персональный информационный ресурс, абсолютно легальный и бесплатный во всех отношениях. Последняя фраза очень важна, особенно при учете модного сегодня утверждения, что "бесплатное ПО не означает дешевое ПО". В случае с Greenstone все затраты времени (на изучение и освоение) с большим избытком окупаются эффективностью работы с полученной системой.

Где и что

Дистрибутивы Greenstone доступны на сайте некоммерческой организации www.nzdl.org.
Отсюда же можно загрузить и книгу — руководство по системе в формате pdf и поработать
с основными уже существующими информационными коллекциями. Тем, кто собирается
всерьез заняться подготовкой собственного инфоресурса (а здесь главное — начать),
могут помочь и ряд сторонних инструментальных средств, например набор замечательных
утилит релевантного поиска rel, бесплатно распространяемых на основании либеральной
лицензии (www.johncon.com/nformatix/),
декомпрессор файлов в формате DjVU (djvu.research.att.com),
отличная программа ImageMagick, "понимающая" более 80 форматов графических
файлов (www.imagemagick.org),
и, наконец, версия "машины рендеринга" Ghostscript для вашей платформы
(www.cs.wisc.edu/~ghost/).


Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: