О.Л. Жижимов, Н.А. Мазов, А.Ю. Поморцев
ОИГГМ СО РАН, г. Новосибирск
Abstract The article describes a method of providing multiple shared read access to distributed ISIS databases by means of the Internet global network's World Wide Web service. The method allows an end-user to obtain an information from remote ISIS database so, that an interactive graphical user interface is represented by a standard Web-browser and database files can be handled by an arbitrary machine, which is connected to the Internet and not necessarily running a Web-server. No additional database indexing or preformatting required. The method was implemented in portable software, offering easy cross-platform transportation. Во многих организациях как у нас в стране, так и за рубежом ведутся работы по перенесению библиографической информации на электронные носители и обеспечению к ней массового доступа, в том числе с использованием компьютерных сетей различного масштаба [1,2]. По причине лишь недавнего открытия услуг сети Internet в России, в библиотечных сетевых технологиях основной упор до сих пор делался на локальные сети в средах операционных систем подобных Novell NetWare, не обеспечивающих доступ к распределенной информации в глобальных масштабах. В настоящий момент разработка технологий с использованием услуг сети Internet является одним из наиболее перспективных направлений этой области [1,2,3]. Традиционно так сложилось в Сибирском отделении, что основной системой для ведения документальных библиографических баз данных принята система CDS/ISIS/M [4], разработанная под эгидой ЮНЕСКО и свободно распространяемая среди библиотек. Основные информационные ресурсы научно-технической информации СО РАН находятся под управлением CDS/ISIS - это крупнейшие БД ГПНТБ СО РАН, ОИГГиМ СО РАН, Института катализа СО РАН, Института органической химии и др. Авторами настоящего доклада был рассмотрен один из возможных способов доступа к базам данных, находящихся под управлением CDS/ISIS/M, распределенным по мини-серверам, через стандартный сервис сети Internet - World Wide Web (WWW). Этот способ реализован на сети UNIX-серверов ОИГГМ СО РАН ук и находится в режиме опытно-промышленной эксплуатации. Основанием для создания подобного программного комплекса в ОИГГиМ СО РАН явилась задача организации унифицированого сетевого доступа к библиографическим базам данных Института и информационным ресурсам институтов СО РАН, традиционно эксплуатирующихся под управлением интегрированной информационно-поисковой системы CDS/ISIS/M версии 3.0, с использованием возможностей сети Internet и сервиса WWW, предоставляемого этой сетью. При этом принимались во внимание следующие необходимые условия: обеспечение надежной коммуникационной дисциплины или дисциплины обмена данными на основе протокола TCP/IP; эффективная по времени и потребляемым системным и сетевым ресурсам реализация функций системы CDS/ISIS; наличие удобного русскоязычного пользовательского интерфейса, в том числе графического; переносимость (что подразумевает доступность исходного кода) либо наличие версий программного продукта для установки на различные аппаратные платформы в средах ОС UNIX, Windows NT, Windows 95; низкая стоимость. Сеть Internet развивается на базе ставшего стандартом де-факто протокола TCP/IP (Transmission Control Protocol/Internet Protocol). Следует отметить, что по причине разнородности аппаратных платформ и операционных систем, в средах которых существуют базы библиографических данных, протокол TCP/IP, являющийся сам по себе универсальным средством взаимодействия неоднородных систем, хорошо подходит для решения поставленной проблемы, однако немедленно встает вопрос о выборе прикладного программного обеспечения и сетевых протоколов прикладного уровня. В качестве основы функционирования описываемого комплекса был выбран сервис WWW по причине его максимальной демократичности по отношению к клиентскому и серверному программному обеспечению и наличию следующих преимуществ: стандартный протокол обмена текстовой и графической информацией (http); простая интеграция новых программных модулей в существующее серверное обеспечение (интерфейс CGI) [5]; использование готовых клиентских программ, просмотрщиков ресурсов Web, с развитым графическим интерфейсом (Netscape Navigator 2.0 и др.); огромная, постоянно растущая популярность сервиса WWW в сети Internet. На основании вышеизложенного было принято решение о создании собственного переносимого сервера системы управления базами данных формата CDS/ISIS, способного работать на различных платформах в средах ОС UNIX, Windows NT и Windows 95. При этом предполагалось согласование входных и выходных потоков данных с потоками данных и протоколами серверов HTTP (HyperText Transport Protocol) [6,7], что позволило бы увязать весь комплекс программ с сервисом WWW сети Internet и использовать в качестве графического интерфейса конечного пользователя любой Web-просмотрщик [8], например, Netscape Navigator (Netscape Communications Corp.), реализованный в средах ОС UNIX и Windows. В рамках решения описанной проблемы, авторами был разработан набор программных средств доступа к файлам БД CDS/ISIS, осуществляющих основные функции при поиске в БД: смена БД; просмотр БД в режиме листания; выполнение запроса к БД в логике "И", "ИЛИ" и "И-НЕ" с использованием правостороннего усечения терминов запроса "$"; просмотр словаря БД с возможностью выбора терминов для формулирования запроса; просмотр результатов поиска. Предложен оригинальный алгоритм поиска в БД, позволяющий обрабатывать очень широкие запросы пользователя к БД, которые в базовом CDS/ISIS приводили к переполнению временных областей памяти и зависанию системы. На базе упомянутых выше программных средств реализован протокол высокого уровня и коммуникационные модули сетевой поддержки CDS/ISIS с архитектурой "клиент-сервер", осуществляющие взаимодействие "данные CDS/ISIS - пользователь" на аппаратных платформах SPARC Sun4 в среде операционной системы UNIX (Solaris 2.4). Поддержка русскоязычного графического пользовательского интерфейса выполнена средствами стандартного для современных систем WWW языка HTML [9,10]. В качестве основных уникальных модулей в предлагаемом комплексе выступают: "Модуль сервера CDS/ISIS", построенный по параллельной технологии для обеспечения одновременного обслуживания нескольких клиентов. При этом используется свойство многозадачности POSIX операционных систем. Исходный код сервера, для обеспечения переносимости в среды ОС Windows NT и Windows 95, допускает возможность перекомпиляции на платформах Intel 386/486/Pentium с минимальными локализованными изменениями. Этот модуль исполняется на тех компьютерах, с которых возможен файловый доступ к базам данных CDS/ISIS. При этом становится несущественной конкретная природа файловой системы, т.к. доступ к файлам данных осуществляется через стандартные системные вызовы. На этот модуль возлагаются функции: регистрации сеанса связи с клиентом; проверки полномочий клиента; выдачи состояния установленных баз данных; интерпретации и исполнения команд клиента; обработки логики запросов; сбора статистики. "Модуль клиента" реализован в стандарте скрипта CGI (Common Gateway Interface) для согласования с потоками данных сервера HTTP, и поддержки HTML форм. Этот модуль исполняется на сервере WWW (в средах ОС UNIX или Windows-NT). На него возлагаются задачи: регистрации сеанса связи с пользователем; проверки полномочий пользователя; формирования интерактивного пользовательского интерфейса; интерпретации команд пользователя и формирования протоколь- ных запросов для "модуля сервера СУБД"; синхронизации представления кириллических текстовых данных и перекодировки между различными кодовыми таблицами. Модули построены по открытой технологии и допускают модифи- кацию и встраивание дополнительных функций. Протокол взаимодействия высокого уровня между вышеперечис- ленными модулями использует сервис, предоставляемый коммуникационным протоколом TCP. Он выполняет прозрачную передачу данных и реализует систему команд СУБД с учетом возможности ее расширения. При его разработке принималась во внимание задача оптимального использования сетевых ресурсов и минимизация сетевого траффика. Из соображений упрощения коммуникаций между компьютерами с различной архитектурой и способом представления числовых данных в памяти было решено принять текстовый формат команд протокола. Все числовые данные в таком формате передаются в форме их символьных ASCII эквивалентов и корректно преобразуются стандартными функциями библиотеки языка C. Схема работы конечных пользователей в предлагаемой системе выглядит следующим образом: Пользуясь стандартным просмотрщиком Web (Netscape Navigator) пользователь устанавливает связь с сервером WWW. Сервер WWW сообщает пользователю информацию о доступных удаленных серверах БД CDS/ISIS. Пользователь выбирает нужный сервер БД и получает информацию об установленных на этом сервере базах данных. Детали сетевого взаимодействия сервера БД и клиентского модуля от пользователя полностью скрыты. После выбора необходимой базы данных пользователь получает возможность интерактивной работы с ней по аналогии работы CDS/ISIS в MS-DOS. Количество участвующих в работе системы серверов WWW и серверов СУБД не лимитируется. ЛИТЕРАТУРА 1. Телекоммуникационные системы ГПНТБ России: современное состояние и перспективы/ Гончаров М.В. // Материалы междунар. конф. "Крым-95". 1995. Т. 2. С. 26. 2. Региональные библиотечные компьютерные сети/ Вислый А.И. // Материалы междунар. конф. "Крым-95". 1995. Т. 1. С. 176. 3. Перспективы развития электронной доставки документов в ГПНТБ России/ Еронина Е.А. // Материалы междунар. конф. "Крым-95". 1995. Т. 2. С. 44. 4. Пакет прикладных программ CDS/ISIS/M версия 2.3 // Метод. материалы и документация по пакетам прикладных программ. Вып. 70. М.: МЦНТИ, 1991. 5. The WWW Common Gateway Interface Version 1.1, INTERNET-DRAFT, D.R.T. Robinson, University of Cambridge, February 15, 1996. 6. Hypertext Transfer Protocol - HTTP/1.1, HTTP Working Group, INTERNETDRAFT, R. Fielding, UC Irvine, H. Frystyk, MIT/LCS, T. Berners-Lee, MIT/LCS, January 19, 1996. 7. Hypertext Transfer Protocol - HTTP/1.0, Work in progress, MIT/LCS, UC Irvine, October 1995. 8. В лабиринтах WEB, Рик Эйр, Кевин Рейчард, PC Magazine/Russian edition, N 6 (34), 1995 г., стр. 20. 9. Введение в HTML, Рей Данкан, PC Magazine/Russian edition, N 11 (40), 1995 г., стр. 148. 10. Hypertext Markup Language - 2.0, RFC 1866, Berners-Lee, T. and Connolly, D., MIT/W3C, November 1995.