Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Хайретдинов_Лекции_СИТ-n.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
13.84 Mб
Скачать

Взаимодействие паутины и баз данных.

Исключительная особенность, связанная с отсутствием принципиальных ограничений на характер и типы в навигации URL, весьма просто можно реализовать интегрирование гипертекстовой среды и баз данных произвольного типа.

Общая идея, позволяющая взаимодействовать Web-серверу с приложениями в иной среде, например, в среде реляционной базы данных типа Oracle, состоит в том, что HTTPd (программа-сервер) понимает класс программ под общим названием "gateway" или Common Gateway Interface (CGI). Среди общепринятых или наиболее распространённых утилит этого класса, понимаемых WWW-сервером и его клиентами, можно привести Gopher, анонимный ftp и др. Не вдаваясь в разнообразные детали инициирования приложений в среде баз данных, приведём лишь вариант использования CGI под опции, понимаемые SQL-сервером.

<А href=''/oraweb/cgi-bin/dept.sql?''>Demonstration</A>

</H2>

The input file for the <STRONG>WWW-SqL Gateway</STRONG>

demo looks like this:

[file: dept.sql]

<PRE>

<ul>

&lt ;sql user=www,password=oraweb,data=I>

/*&felt;lift>*/ select deptno

/*'/.O.Os<a href="emp.sql?rowid="/.s' ' ' >*/,

deptno ''Department'', dname '' Name",

loc " Location"/*%s=%s*/ from dept where %s/*< /a> */ </sql> </ul>

<h2>Related tables</h2ftgt; <h3ftgt;<a href=''emp.sql?<esc> ">

Employees</a></h3ftgt;

</PRE>

Этот пример показывает, что прямыми включениями фрагментов SQL-запросов в документ HTML формата можно любым WWW browser-ом манипулировать данными ранее доступными только специальными утилитами. Более изысканные варианты интеграции WWW и Oracle легко реализуются на популярном языке интерпретатора Perl.

Приведём для примера ряд общедоступных средств типа CCI для WWW и Oracle:

WOW Gateway — реализован как отдельный пакет PL/SQL с встроенными HTML опциями;

WORA Gateway browser базы данных, написан на Рго*С К.Окраинцем из ОИЯИ, Дубна;

DECOUX Gateway пост-процессор, заменяющий записи SQL и форматирующий их в nceвдo-HTML метки с запросами в Oracle;

ORAYWWW Gateway реализация на Perl-e доступа в Oracle с генерацией документа HTML формата.

Кроме этого существуют коммерческие средства из того же класса, например, Oracle World Wide Web Interface Kit.

Базы данных самих гипертекстовых систем Большинство современных гипертекстовых систем используют собственные формы хранения данных. Применение в них, например, реляционных СУБД (Relational Data Base Management. System — RDBMS) ограничило бы их применимость, исключив из области их компетенции такие приложения, как САПР, системы управления документацией, геоинформационные системы. Для этого класса приложений характерны сложные, многомерные и большие объёмы данных, интенсивный обмен ими. Этот класс приложений требует модель баз данных более выразительную и гибкую, нежели реляционная модель. Предполагается для этого использовать объектно-ориентированные модели.

Многие наработки объектно-ориентированного подхода в его приложении к системному анализу и разработкам, языкам программирования, операционным системам и СУБД, можно расширить применительно к гипертекстовой модели.

• Простые узлы могут рассматриваться как неделимые объекты, представляющие примитивы типов данных, таких как integer, character, string, video-frame, bitmap.

  • Доступ к объектам или узлам может быть осуществлён путем использования их идентификаторов.

  • Связи могут быть представлены как набор минимум двух идентификаторов объектов. Cвязи также могут рассматриваться как объекты с собственными идентификаторами (идентификаторами связи), которые могут быть использованы для разделения указательной и содержательной информации.

  • Сложные узлы (состоящие из узлов и связей) могут быть представлены как сложные объекты или совокупность простых объектов.

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

  • Узлы и связи могут быть разбиты на классы по их семантическим признакам.

  • Узлы и связи определённого класса могут наследовать свойства родственных суперклассов. Эти свойства могут быть использованы при создании и управлении шаблонами.

• Свойства узлов и связей можно легко изменять через схему эволюции.

В заключение приведём основные характеристики гипертекстовых систем, которые позволяют претендовать им на лидерство в подходах к построению распределённых информационных систем:

  • Возможность манипулирования информацией независимо от природы и способа её хранения, которая может быть, например, файловой системой, системой знаний либо системой управления реляционными или объектно-ориентированными базами данных.

  • Встроенная система-менеджер, которая объединяет в себе инструменты создания и управления узлами и связями.

  • Дружелюбный графический интерфейс позволяет пользователям свободно ориентироваться в огромном объёме информации путем установления связей с узлами и получения информации о содержимом узлов.

  • Богатые возможности поиска информации как традиционного, по ключевым словам, авторам, тематике, так и с помощью создания особого механизма поиска по запросам пользователя.

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

6.2.2. WWW-клиенты

Самым древним WWW-клиентом является, конечно же, CERN-овский WWW-browser, предназначенный для использования на самых примитивных терминалах. Он работает даже не в экранном режиме, — в строчном! Сейчас это смотрится как мрачная забава. Anchor-области там "выделяются" проставлением чисел, заключённых в квадратные скобки, в соответствующих местах текста. Для активации ссылки нужно ввести её номер в ответ на соответствующий запрос browser-a.. И т.д. и т.п. Каково?

На данный момент существует множество различных browser-ов для самых разных типов терминалов. Рассмотрим только три из них.

Lynx

Lynx WWW-клиент для алфавитно-цифровых терминалов, поддерживающих стандарт VT100. Этот browser работает в экранном режиме, умеет прокручивать текст как вперёд, так и назад. Довольно сносно выделяет anchor-области, например, инверсным изображением. Показывает текущее положение курсора. Anchor-области реагируют на клавишу ENTER. Lynx прост и способен работать на совсем простых системах и немощных компьютерах.

Mosaic.

Mosaic разработан в NCSA's (National Center for Supercomputing Applications) Software Design Croup. Реализован на многих системных и аппаратных платформах от суперкомпьютеров до IBM-совместимых персоналок, от UNIX до примитивных DOS. Mosaic имеет следующие черты:

  • графический интерфейс, управляемый мышкой;

  • возможность отображать гипертекстовые и гипермедиа документы;

  • возможность изображать текст различными шрифтами;

  • поддержка звуковых эффектов (Macintosh, Sun audio format и другие);

  • поддержка видео (МРЕС-\ и QuickTime);

  • возможность изображать символы, определённые ISO 8S59;

  • поддержка интерактивной графики (в GIF или ХBМ формате), до 256 цветов в документе;

  • возможность создавать гипермедиа-связи и поддерживать следующие сетевые опции: ftp, (Gopher, telnet, nntp, WA1S;

  • поддержка текущих стандартов HTTP и HTML;

  • возможность хранить историю использованных связей;

  • возможность хранить и использовать набор URL в виде Book-Marks ("закладок").

Кстати, NCSA великодушно передал некоторые версии Mosaic в бесплатное пользование с условием, что это использование происходит в образовательных целях и не преследует никаких коммерческих целей. Подробнее читайте информацию в самой Mosaic.

Если вы отчаялись найти Mosaic, поищите её по анонимному ftp на сервере, ftp.ncsa.uiuc.edu в директории /Mosaic.

Netscape Navigator.

Netscape —дальнейшее развитие интерфейса Mosaic, выполненное фирмой Netscape Communication Corporation. Возможности Netscape перекрывают весь спектр возможностей Mosaic. Дополнительно, Netscape имеет следующие особенности:

  • соответствие стандарту MIME;

  • множественное HTTP соединение;

  • обеспечение (встроенное) безопасности сервера, а также возможность настройки клиента на проверку безопасности (надёжности);

  • наиболее важной особенностью Netscape, по сравнению с Mosaic, является синхронность перекачивания и визуализации информации, что бывает критично при низкой скорости линий связи с удаленными серверами.

О последней особенности подробнее. Netscape сначала показывает часть текста, которая перелается в первую очередь. Пока пользователь увлечённо читает этот текст, передаётся остальной текст и картинки, если установлен режим автоматического показа графики. Так как текст даже по 2400 bps-линиям передаётся быстрее, чем человек его может прочитать, тормознутость линий связи оказывается замаскированной. Это особенно хорошо работает, если картинки отключить (их всегда можно запросить простым нажатием кнопочки "Images").

Netscape Communication Corporation разрешает бесплатно пользоваться данным своим программным продуктом в следующих случаях:

  • если пользователь является учащимся или штатным сотрудником образовательного учреждения;

  • пользователь является работником (служащим) некоммерческой (бесприбыльной) организации;

  • если пользование происходит только в целях ознакомления с данным продуктом для принятия возможного решения о его при обретении.