Мислене древо 2.5 – иерархическая СУБД для гуманитарной сферы
Жарких Н.И.
Информатизация в гуманитарной сфере имеет отличия от информатизации других областей человеческой деятельности – как в субъективном, так и в концептуальном плане. Отличия субъективного характера истекают из того, что работники гуманитарной сферы по своему базовому образованию далеки от информационных технологий. Мы рассмотрим детальнее концептуальные различия.
На наш взгляд, информатизация в гуманитарной области имеет такие особенности :
1. Ключевой абстракцией тут выступает документ, в отличие от трансакции, которая лежит в основе современных промышленных СУБД.
2. Принципиальной особенностью документа является его неструктурированность – этим он отличается от документов в других отраслях ИТ.
3. Чтение документов решительно преобладает над записью/модификацией документов.
4. Ошибочные документы никогда не должны удаляться, а только отмечаться как ошибочные.
5. Типичными для гуманитарной сферы являются расплывчатые даты (такие как “начало 12 ст.”), неизвестные в других отраслях ИТ.
Разрабатывая программные продукты для гуманитарных приложений, следует обращать внимание на эти особенности. Самым лучшим примером информационной технологии, приспособленной для гуманитариев, является сеть WWW : документно-ориентированная среда записей произвольной структуры, предназначенная только для чтения (не хватает только поддержки расплывчатых дат). Поэтому можно назвать ряд успешных гуманитарных Web-проектов, и достаточно трудно указать успешные предметно-ориентированные базы данных.
Иерархический подход к построению баз данных, на наш взгляд, является принципиальным проектным решением, которое должно удовлетворить требованиям гуманитарной сферы. В основе такой СУБД лежит понятие вершины (node) – абстрактного аналога документа. Вершина хранит произвольную неструктурированную информацию (она может быть и структурированой, но это не обязательно – ведь порядок есть частный случай хаоса). Вершины объединяются в дерево – односвязный граф (т.е. между двумя вершинами в одном дереве всегда есть путь, и этот путь только один). Древовидная структура обеспечивается тем, что каждая вершина хранит указатель на вершину-владелицу (одна только корневая вершина не имеет такого указателя). Порядок следования вершин в дереве может фиксироваться указателями на соседние вершины того же иерархического уровня (к одному уровню принадлежат вершины, которые имеют общую вершину-владелицу) или определяться динамически на основании информации из самих вершин.
Все операции над таким множеством данных, естественно, также являются иерархическими : поиск, отбор, сортировка, сбор статистики и другие операции над данными осуществляются по иерархическим алгоритмам.
Попросту говоря, иерархическая база данных – это застывший хаос, в котором иерархическая позиция определенной вершины имеет важное, а иногда даже ключевое значение, превосходя содержание вершины. Например, когда мы говорим “село Ивановка”, то для однозначной идентификации предмета нужно указать “такого-то района и области”. Без указания иерархического положения информация об этом селе обесценивается, так как неясно, где его искать среди других Ивановок.
Мысленное древо – программа, которая разрабатывается нами с 1999 года для реализации изложенных проектных предложений. Ныне в эксплуатации находится версия 2.5, выпущенная в конце 2004 года. Эта программа является бесплатной для конечных пользователей. Компактная программа (ее дистрибутив занимает всего 1.4 Мб) позволяет создавать и просматривать иерархические базы данных. Иерархия вершин в ней может создаваться вручную (командами “Добавить новую вершину”, “Добавить новую дочернюю вершину” и другими) или автоматически при помощи целого спектра совершенных методов импорта информации.
В вершинах базы данных можно хранить обычный и обогащенный текст (RTF, включая вложенные объекты), изображения в большинстве распространенных форматов, звуковые и видеофайлы, которые поддерживаются операционной системой. Программа поддерживает трансформацию иерархических наборов данных, иерархические операции поиска, отбора, сортировки, экспорта информации.
Программа поддерживает синхронизацию экземпляров баз данных, что позволяет организовать раздельное наполнение большой базы данных и является основой коллективной работы над крупномасштабными базами данных.
Программа “Мысленное древо” прекрасно оснащена для создания энциклопедий, справочников, словарей и каталогов – жанров, для которых иерархический принцип лежит в основе деятельности. Она пригодна также для создания электронных монографий и журналов. Программа может запускаться с компакт-диска без необходимости инсталировать что-либо на компьютер пользователя. Таким образом, базы данных “Мысленного древа” могут распространяться на компакт-дисках. По этой технологии нами подготовлено около 60 различных изданий на компакт-дисках (с их полным аннотированным перечнем можно ознакомиться на веб-сайте "Мысленного древа").
Кроме того, на нашем сайте можно загрузить дистрибутив программы, прочитать онлайновую версию контекстной помощи, ознакомиться с методическими рекомендациями по использованию программы. Изюминкой сайта является раздел “Мысленное древо 3”, посвященный новой версии программы, которая находится в процессе разработки.