Опыт построения распределенной информационной
системы на базе протокола Z39.50
Distributed Information System on the basis of Z39.50 Protocol:
Experience of Development
Досвід побудови розподіленої інформаційної системи
на базі протоколу Z39.50
Жижимов О.Л., Мазов Н.А., Болванов А.Ю.
Объединенный институт геологии, геофизики и минералогии СО РАН, Новосибирск, Россия
Oleg L. Zhizhimov, Nikolai А. Mazov, Andrei Yu. Bolvanov
Joint Institute of Geology, Geophysics and Mineralogy of the Russian Academy of Sciences’ Siberian Branch , Novosibirsk, Russia
Жижимов О.Л., Мазов М.А., Болванов А.Ю.
Об"єднаний інститут геології, геофізики та мінералогії СВ РАН, Новосибірськ, Росія
Описываются основные компоненты распределенной информационной системы, созданной в ОИГГиМ СО РАН на базе протокола Z39.50. Приводятся характеристики серверного программного обеспечения и возможности шлюза Z39.50-WWW. Приводятся результаты опытной эксплуатации системы.
Described are the main elements of the distributed information system, developed by the Institute on the basis of Z39.50 protocol. The characteristics of the server software and capabilities of the Z39.50-WWW gateway are covered. Pilot results of the system operation are presented.
Основные компоненты и общая схема информационной системы
В настоящем докладе описывается один из возможных способов построения информационной системы доступа к библиографическим базам данных, распределенным по мини-серверам, на основе протокола Z39.50. Описываемая система реализована на сети NT-серверов ОИГГиМ СО РАН и находится в настоящее время в режиме опытно-промышленной эксплуатации (http://geolibr.uiggm.nsc.ru, z3950: geolibr.uiggm.nsc.ru:210).
Толчком для создания подобного программного комплекса в ОИГГиМ СО РАН явилась задача организации унифицированого сетевого доступа к библиографическим базам данных Института, находящихся под управлением интегрированой информационно-поисковой системы CDS/ISIS/M версии 3.0 и выше (далее – ISIS), имеющейся также в библиотеках академических институтов СО РАН, в ГПНТБ СО РАН, с использованием возможностей сети Internet и сервиса WWW, предоставляемого этой сетью. При этом принимались во внимание следующие необходимые условия:
Эти условия определяют, в свою очередь, требования к информационной системе, предназначенной для обеспечения доступа к библиографическим базам данных через Internet с использованием широко распространенных Web-броузеров типа Netscape или MS Internet Explorer:
Авторами был построен некий прототип такой информационной системы [1]. Центральное место в информационной системе, несомненно, занимает сервер баз данных, поддерживающий протокол Z39.50. Для этого был разработан модульный сервер Z39.50, допускающий работу с данными различных СУБД. Включение в поисковую систему данных из новой СУБД для описываемого сервера сводится к разработке специального модуля с фиксированным программным интерфейсом (провайдер данных).
Архитектура и основные характеристики сервера
Для информационной системы разработан специальный сервер, удовлетворяющий требованиям:
Немаловажную роль при этом играло желание максимально использовать существующие открытые разработки и библиотеки поддержки Z39.50, распространяемые другими разработчиками в исходных текстах. Последнее позволяет применить накопленный мировым сообществом опыт и избежать многих ошибок в реализации базовых функций Z39.50. В результате анализа существующих открытых пакетов, выбор был остановлен на библиотеке YAZ компании IndexData [4]. Модули этой библиотеки после модернизации в направлении поддержки национальной специфики легли в основу самого низкого уровня сервера – управление сеансом связи и обработка APDU. Из этого же пакета была заимствована идея организации логики внутреннего командного процессора сервера, однако содержание этого процессора было практически полностью изменено. Более высокие уровни сервера – интерфейс провайдера данных, модули различных провайдеров данных и другие являются полностью оригинальными разработками. Ниже приведены основные характеристики сервера:
Функциональные характеристики сервера существенно зависят от возможностей поставщиков (провайдеров) данных. Все провайдеры данных представляют собой динамически загружаемые библиотеки Win32 (для версии 1) или отдельные модули, включаемые в код сервера на стадии компоновки (для версии 2). На сегодняшний день в комплект сервера входят следующие провайдеры данных:
Шлюз Z39.50-WWW
В качестве универсального клиента описываемой информационной системы авторами был создан шлюз Z39.50-WWW (http://geolibr.uiggm.nsc.ru/LWS/z39gw/).
Шлюз функционирует в среде Windows NT 4.0 sp3 и выше. Он выполняет функции клиента Z39.50 на сервере WWW (IIS 3.0 и выше) для доступа к серверам баз данных Z39.50 с сохранением контекста сессии. Шлюз представляет собой набор серверных (ASP) и клиентских (JScript) скриптов, управляющих обычными HTML-формами. Основной функциональный компонент шлюза выполнен в архитектуре COM для локализации сеансовой логики Z39.50 в отдельном модуле (ZCOM), который регистрируется в сессионных переменных IIS для сохранения контекста сессии Z39.50. Это позволяет вызывать интерфейсы ZCOM из обычных страниц ASP и предоставлять пользователю удовлетворительный сервис для доступа к информационной системе.
Шлюз позволяет:
В настоящее время в ОИГГиМ СО РАН создана информационная система, построенная на базе вышеописанного сервера Z39.50, для обеспечения доступа научных сотрудников к библиографической информации (в первую очередь аналитического характера – электронные варианты баз данных ВИНИТИ и др.). Система состоит из двух серверов Z39.50, обеспечивающих доступ к базам данных под управлением CDS/ISIS (библиографическая аналитическая информация), к базам данных MS SQL (справочная информация) и текстовым данным в формате SGML. Информационная система интегрирована в WWW через шлюз Z39.50-WWW, функционирующий в среде сервера IIS 4.0 (Windows NT 4.0 sp3). Шлюз реализован в виде ASP-модулей с применением технологии COM. Доступ к шлюзу открытый, однако, доступ к собственным информационным ресурсам, естественно, ограничен. Поскольку этот шлюз (http://geolibr.uiggm.nsc.ru/LWS/z39gw) поддерживает многие функции клиента Z39.50 его можно использовать для работы с любыми серверами Z39.50, которых в мире насчитываются сотни.
Следует отметить, что основной сервер информационной системы ОИГГиМ СО РАН официально зарегистрирован в агенстве Z39.50 (http://lcweb.loc.gov/z3950/agency/). Он прошел тестирование и сертификацию на предмет соответствия протоколу Z39.50. Тестирование проводилось на электронном каталоге ГПНТБ СО РАН. Также официально зарегистрирована группа разработчиков сервера с присвоением уникального идентификатора (ID=155), позволяющего в рамках стандарта разрабатывать собственные объекты Z39.50. Таким образом, на сегодняшний день в России официально существуют два сервера Z39.50 и две группы разработчиков программного обеспечения.
Опыт эксплуатации сервера Z39.50 в составе информационной системы ОИГГиМ СО РАН показал его жизнеспособность и эффективность на больших информационных массивах библиографической информации. Для апробации работы сервера в распределенной информационной системе в ГПНТБ СО РАН был установлен Z39.50 сервер версии 1 с доступом к электронному каталогу. При этом тестировалось: возможность перенаправления запросов (работа провайдера Z39.50), логическое объединение пространственно разнесенных и разнородных данных (работа провайдеров CDS/ISIS и MS ADO), время реакции системы. Наряду с этим сервер был успешно апробирован в ГПНТБ России (Москва) на электронном каталоге.
В настоящее время ведутся работы по расширению возможностей сервера в части поддержки дополнительных функций Z39.50 (сортировка, расширенный сервис, управление доступом и др.).