технологические аспекты разработки интернет

advertisement
ТЕХНОЛОГИЧЕСКИЕ АСПЕКТЫ РАЗРАБОТКИ ИНТЕРНЕТ-ВЕРСИИ
АННОТИРОВАННОГО БИБЛИОГРАФИЧЕСКОГО КАТАЛОГА ПО
ПРОГРАММИРОВАНИЮ И БАЗАМ ДАННЫХ
Л.Б.Соколинский, Е.В.Апанасенко
Челябинский государственный университет, Челябинск
Тел.: (3512) 42-04-09, 36-56-73, факс: (3512) 42-09-25, e-mail: sokolinsky@acm.org
World Wide Web сделал Интернет частью нашей повседневной жизни. Большая часть
накопленной человечеством информации в течение десяти следующих лет будет
располагаться во Всемирной паутине. Web станет основной платформой для хранения
и доставки информации /1/. Одним из наиболее актуальных и бурно развивающихся
направлений научных исследований в области Интернет-технологий являются
электронные библиотеки. В /2/ отмечается, что "в 21-м веке в Интернет будут
располагаться миллионы репозиториев, в которых небольшие научные группы будут
аккумулировать их собственные знания".
В Челябинском государственном университете в настоящее время ведутся работы по
созданию репозитория научных статей по базам данных и программированию. Данная
работа выполняется в рамках проекта разработки параллельной СУБД Омега для МВС100 /3/. Одной из составных частей репозитория является электронный
аннотированный библиографический каталог. Данный каталог обеспечивает следующие
основные функции: трехуровневую иерархическую систематизацию статей по темам,
поиск и выборку статей по ключевым словам, авторам и названиям.
Первоначально данный каталог был реализован на базе СУБД MS Access. Затем был
написан конвертер базы данных из формата MS Access в формат Oracle. Для базы
данных в формате Oracle был реализован WWW-интерфейс.
Интернет-версия библиографического каталога поддерживает следующие основные
функции: трехуровневый иерархический поиск по теме, поиск по автору, поиск по
названию, поиск по ключевым словам, поиск по шифру (фамилия первого автора с
указанием двух последних цифр года публикации). При поиске по шифру, выбор шифра
производится из выпадающего списка. Результаты поиска выдаются в виде HTMLстраницы, содержащей список найденных библиографических ссылок, оформленный в
соответствии с ГОСТ. Каждая такая библиографическая ссылка является гиперссылкой
на HTML-страницу, оформленную в виде библиографической карточки. Данная карточка
содержит выходные данные публикации, тематические категории, ключевые слова и
аннотацию. Кроме этого, карточка может содержать ссылку на полный текст статьи в
формате PostScript или PDF /4/.
Результат запроса к библиографическому каталогу может содержать несколько сотен
и даже тысяч библиографических ссылок. Как правило, это означает, что запрос
нуждается в корректировке или уточнении. В этом случае удаленному клиенту
бессмысленно просматривать весь результат, передача которого может занять много
времени. Для решения данной проблемы в Интернет-версии библиографического
каталога была реализована функциональная возможность постраничных передач
клиенту результатов с большим объемом данных.
Web-реализация библиографического каталога имеет трехзвенную архитектуру,
включающую в себя Web-сервер, сервер баз данных Oracle и Web-клиента. В основу
реализации положен подход, в соответствии с которым доступ к базе данных
реализуется на стороне Web-сервера. Данный подход базируется на использовании
протокола CGI (Common Gateway Interface) /5/. В качестве Web-сервера был
использован сервер Apache под управлением ОС Linux. В качестве сервера баз
данных была использована СУБД Oracle под управлением Windows NT. На той же
машине, на которой был установлен Web-сервер, была установлена СУБД Oracle в
объеме клиентской инсталляции (около 30 Мб). Это позволило обеспечить связь
между Web-сервером и сервером Oracle на базе сетевого протокола Oracle SQL*Net.
При выполнении запроса к базе данных, клиент заполняет соответствующую форму в
HTML-странице. Данная форма передается Web-серверу, который вызывает
ассоциированный с ней CGI-скрипт c параметрами, определенными при заполнении
формы. CGI-скрипт формирует соответствующий запрос на языке SQL и передает его
клиенту Oracle. Клиент Oracle передает запрос серверу Oracle, используя протокол
SQL*Net. Сервер Oracle обрабатывает полученный запрос к базе данных и возвращает
результат клиенту Oracle. Клиент Oracle, в свою очередь, передает его CGIскрипту. В соответствии с полученным результатом, CGI-скрипт динамически
формирует HTML-страницу, возвращает ее Web-серверу и на этом заканчивает свою
работу. Web-сервер передает Web-клиенту результат выполнения запроса в виде
HTML-страницы, и на этом выполнение запроса к базе данных заканчивается.
Для всех видов поиска по библиографическому каталогу были спроектированы и
реализованы соответствующие HTML-формы. Реализация функций была выполнена в виде
набора CGI-скриптов, написанных на языке Perl /6/.
Описанная в данной работе Web-версия электронного каталога по базам данных и
программированию свободно доступна в настоящее время по адресу
http://reindeer.csu.ac.ru/oracle/bibl.
Работа выполнена при поддержке Российского фонда фундаментальных исследований
(грант No. 97-07-90148).
Литература
1. Bernstein P.A. at al. The Asilomar Report on Database Research // ACM SIGMOD
Record. December 1998.Vol. 27. No. 4. P. 74-80.
2. Schatz B., Chen H. Digital Libraries: Technological Advances and Social
Impacts // IEEE Computer. February 1999.Vol. 32. No. 2. P. 45-50.
3. Sokolinsky L., Axenov O., Gutova S. Omega: The Highly Parallel Database
System Project // Proceedings of the First East-European Symposium on Advances
in Database and Information Systems (ADBIS'97), St.-Petersburg. September 2-5,
1997. Vol. 2. P. 88-90.
4. Ames P. Beyond Paper: The Official Guide to Adobe Acrobat. Adobe Press,
Mountain View, Calif, 1994.
5. Кузнецов С.Д. Доступ к базам данных с использованием технологии WWW // СУБД.
1996. No. 5-6. C. 4-9.
6. Wall L., Christiansen T., Schwartz R. Programming Perl. 2nd ed. O'Reilly &
Associates, 1996.
Download