Карачаево – Черкесский государственный университет
им. У.Д.Алиева, г. Карачаевск
Современный уровень развития общества, требует высоко образованных специалистов, людей творческих, способных к свободному мышлению. Это ставит перед современным вузом задачу выработать методы для развития такой конкурентно способной личности. В последние десятилетия это задача успешно решается с помощью разработки и внедрения в образовательный процесс различных информационных технологии.
Базы данных – это уже достаточно хорошо проработанная научная дисциплина. Существует множество, в том числе и фундаментальных работ и учебников (на материал которых авторы опирались при подготовке этой статьи и убедительно рекомендуют их тем, кто серьезно интересуется этой проблематикой), среди которых необходимо выделить такие монографии, как «Организация баз данных в вычислительных системах Дж. Мартина, «Введение в системы баз данных» К. Дейта, «Алгоритмы и структуры данных» Н. Вирта, «SQL» Дж. Гроффа и П. Вайнберга.
Для успешной реализации этих задач нами сделана попытка раскрыть смысл основных понятии.
Банк данных является разновидностью ИС, в которой реализованы функции централизованного хранения и накопления обрабатываемой информации, организованной в одну или несколько баз данных.
Банк данных (БнД) в общем случае состоит из следующих компонентов: базы (нескольких баз) данных, системы управления базами данных, словаря данных, администратора, вычислительной системы и обслуживающего персонала.
База данных (БД) представляет собой совокупность специальным образом организованных данных, хранимых в памяти вычислительной системы и отображающих состояние объектов и их взаимосвязей в рассматриваемой предметной области.
Дальнейшее развитие технологий Интернета и СУБД предоставляет дополнительные возможности по использованию информационных ресурсов сети Интернет. Одним из способов электронного представления данных во всемирной сети является публикация баз данных в Интернете, позволяющая размещать информацию из баз данных на WеЬ-страницах сети. Публикация баз данных в Интернете может потребоваться для решения перечисленных ниже задач, возникающих перед разработчиками программного обеспечения всемирной сети.
Размещение информации из БД во всемирной сети стало возможным в связи с развитием технологий Интернета.
Цель данной работы – совершенствование знаний для публикации баз данных в интернет.
Это потребовала решения ряда конкретных задач;
- Организация взаимосвязи СУБД, работающих на различных платформах. Существует множество информационных систем работающих на различных платформах. Задачи организации их взаимодействия могут возникать при обеспечении различных видов информационного обмена между этими системами.
- Построение информационных систем в сети Интернет на основе многоуровневой архитектуры БД. Архитектура таких систем включает дополнительный уровень (WеЬ-сервер с модулями расширения серверной части), реализующий возможность информационного обмена и публикации БД в глобальной сети.
- Построение локальных интернет-сетей на основе технологии публикации БД в Интернете. При этом локальные сети строятся на принципах Интернета с наличием при необходимости выхода в глобальную сеть.
- Использование в Интернете информации из существующих локальных сетевых баз данных. Эти задачи возникают при необходимости опубликования в глобальной сети информации из локальных сетей Интернет.
- Применение БД для упорядочивания, каталогизирования информации. Огромный объем информации, представленной в Интернете, не обладает требуемой степенью структурированности, что делает весьма сложным и долгим процесс поиска необходимой информации.
- Применение языка SQL для поиска необходимой информации в БД.
- Использование средств СУБД для обеспечения безопасности данных, разграничения доступа и управления транзакциями при создании Интернет-магазинов, защищенных информационных систем и т. д.
- Стандартизация пользовательского интерфейса на основе применения обозревателей Web с типовым внешним видом и типовой реакцией на действия пользователя.
- Использование обозревателя Web в качестве дешевой клиентской программы для доступа к БД.
В Интернете вся информация размещается на Web – страницах, написанных на языке HTML (в этом случае имеем HTML – страницы) или его расширениях, таких как DHTML (Dynamic HTML — динамический HTML) и ХМL (extensible Магкuр Language — расширяемый язык разметки). В содержимое Web-страницы может входить текстовая информация, ссылки на другие WеЬ-страницы, графические изображения, аудио-, видеоинформация и другие данные. Эти страницы хранятся на Web-сервере.
Для доступа к Web-страницам используются специальные клиентские программы — обозреватели Web (программы просмотра, или браузеры — от англ. browser), находящиеся на компьютерах пользователей Интернета. Обозреватель формирует запрос на получение требуемой страницы или другого ресурса с помощью специального адреса URL(Universal Resource Locator — универсальный указатель ресурса). Этот адрес определяет тип протокола для передачи этого ресурса, имя домена, используемое для доступа к требуемому Web-узлу, номер порта (порт — логический канал связи, номера определяются стандартами Интернета), локальный путь к файлу и дополнительные аргументы.[7]
В функции Web-обозревателя входит отображение Web-страниц, которые формирует Web-сервер. При этом Web-обозреватель устанавливает соединение с требуемым Web-узлом, используя протокол передачи данных НТТР.
Для расширения возможностей клиентской части (обозревателя) и серверной части создаются программы расширения обозревателя и сервера. При организации такого взаимодействия могут использоваться следующие средства:
- сценарии, подготовленные на различных языках сценариев (JavaScript, JScript VBScript) и вставленные в обычный Web-документ; • апплеты и сервлеты Java;
- элементы управления ActiveX
- консольные ехе-программы, реализованные с использованием интерфейса СGI;
- ехе-программы, реализованные с использованием интерфейса WinCGI;
•динамические библиотеки, реализованные с использованием интерфейса
ISAPI; - динамические страницы IDС/НТХ;
- активные серверные страницы АSР;
- персональные домашние страницы РНР.
Дадим краткую характеристику каждого из названных средств.
Сценарии JavaScript, Jscript и VBScript
Сценарии, написанные на языках JavaScript, JScript или VBScript, используют для динамического управления интерфейсными объектами (компонентами) Web-документа. Эти языки являются языками интерпретируемого типа (код выполняется в процессе интерпретации). Интерпретация и выполнение сценариев осуществляется обозревателем или сервером. Сценарии являются расширением языка НТМL и могут включаться в тело Web-документа. Заданная часть сценария может исполняться во время загрузки Web-доку-мента, а часть сценария, реализованная, как правило, в виде функции, может выполняться в ответ на действия пользователя. Использование того или иного языка сценариев определяется типом применяемого обозревателя JavaScript представляет собой объектно-ориентированный язык с С – подобным синтаксисом. Сценарии на языке JavaScript используются в обозревателе Netscape Navigator, а сценарии на языке JScript используются в обозревателе Internet Ехр1огег. Лексика и синтаксис этих языков практически идентичны, отличия заключаются в используемых объектных моделях обозревателей (совокупностях элементов, их атрибутов и событий Web-документа). В обозревателе Internet Ехр1огег дополнительно поддерживается язык сценариев VBScript, по возможностям функционально эквивалентный языку JScript, но более простой в освоении. Этот язык наиболее часто используется программистами, имеющими опыт работы с Microsoft Visual Basic.
Сценарии могут применяться как расширение обозревателя (клиентское расширение) или как расширение сервера. В случае клиентского расширения сценарии находятся в Web-документе и применяются для создания динамических эффектов при просмотре Web-страницы. На стороне сервера сценарии используются при динамическом создании Web-документов в ответ на запрос пользователя. Для уменьшения нагрузки на Web-сервер часть функций, связанных с предварительной обработкой запросов и введенных данных, целесообразно выполнять на стороне клиента (в Web-обозревателе). В этом случае выделяют активность на стороне клиента. Клиентская активность может быть осуществлена и другими средствами (апплеты Java, элементы управления АсtiveХ).
Элементы управления АсtiveХ представляют вид модулей расширения, который может использоваться на стороне клиента или на стороне сервера. Они реализуются с помощью динамических библиотек DLL и могут быть встроены в Web-документ как дополнительные интерфейсные элементы. Механизм работы элементов управления АсtiveХ позволяет из программного кода этих объектов получать неограниченный доступ к локальным ресурсам компьютера пользователя. Из элемента управления АсtiveХ имеется возможность передавать на сервер любую информацию с компьютера пользователя. Поэтому использование этих элементов на стороне клиента не всегда оправдано в сети Интернет с точки зрения обеспечения безопасности данных.
В коде объектов АсtiveХ имеется потенциальная возможность наличия вируса. Если загрузить такой объект, то компьютеру клиента в принципе может быть причинен вред. Для частичного устранения этого недостатка компания Microsoft добавляет в свои коды цифровую подпись (signing), которая обозначает, что данный объект создан надежной компанией. При этом обозреватель Internet Ехр1огег, используя такой объект, выдает предупреждающее сообщение с предоставлением возможности пользователю отменить выполнение кода этого объекта. Этот механизм предназначен для идентификации модулей АсtiveХ и не устраняет возможность заражения вирусом компьютеров пользователей, использующих объекты АсtiveХ. Кроме того, при загрузке текущей Web-страницы, если на ней используются новые элементы управления АсtiveХ, для их активизации требуется сначала их скачать и установить. А это нарушает принцип универсальности обозревателя. По этим причинам более предпочтительно использовать элементы управления АсtiveХ на стороне сервера для наращивания его возможностей.
Апплеты Javа применяются для создания динамически формируемого интерфейса пользователя. Язык Javа является объектно-ориентированным языком с синтаксисом, похожим на синтаксис языка С++. Однако возможности языка Javа по доступу к локальным ресурсам пользователей сильно урезаны, что делает его безопасным для использования в сети. Апплеты предназначены для выполнения на любых платформах. Их код интерпретируется виртуальной Javа -машиной, входящей в состав обозревателя. Использование такого механизма гарантирует целостность локальных данных пользователей. Для использования апплета на Web-странице применяется специальный тег, позволяющий вставлять объект-апплет в любое место Web-документа. Сервлеты, в отличие от апплетов, выполняются на стороне сервера и служат для обработки запросов от обозревателя. [1]
Для создания модулей расширения Web-сервера могут использоваться интерфейсы СGI (Соmmon Gateway Interface— общий шлюзовой интерфейс) или интерфейсы программирования АРI (Аррlication Program Interface — интерфейс прикладного программирования).
Интерфейс СG1 является стандартным протоколом взаимодействия между Web-сервером и модулями расширения, которые могут применяться для выполнения дополнительных функций, не поддерживаемых сервером. Например, такие модули используются для обработки получаемой от пользователя информации, для динамического формирования Web-документа, публикации БД на Web-странице и т. д.
Интерфейсу СG1 соответствуют обычные консольные приложения операционной системы DOS. Обмен информацией между сервером и модулем расширения осуществляется с помощью стандартного потокового ввода/вывода, передача управляющих параметров организуется через переменные окружения операционной системы или через параметры URL-адреса модуля расширения. В качестве стандартных устройств ввода и вывода в среде DOS по умолчанию используются клавиатура и терминал (монитор) соответственно. В этом случае вывод на стандартное устройство перенаправляют в буфер, из которого данные с помощью протокола НТТР отправляются Web-обозревателю.
Для запуска модуля расширения достаточно задать его URL-адрес в строке адреса обозревателя и начать загрузку документа. При получении запроса обозревателя к СG1-приложению сервер запускает это приложение и передает ему данные из командной строки запроса. СG1-приложение формирует ответ и помещает его в выходной поток (на стандартном устройстве вывода), затем сервер посылает этот ответ с использованием протокола НТТР обратно обозревателю. В случае параллельной обработки нескольких запросов сервер запускает отдельный процесс для обработки каждого запроса. Причем для каждого процесса создается копия модуля расширения в памяти компьютера, на котором находится Web-сервер. Поэтому недостатками этого протокола является невысокая скорость обработки запросов и повышенная загрузка Web-сервера.
Существует адаптированный вариант общего интерфейса для среды Windows 3.1 — WinCGI. Этот интерфейс отличается от интерфейса СG1 тем, что управляющие параметры передаются через INI-файл, а входной и выходной потоки данных перенаправлены в специальные файлы. В остальном механизм взаимодействия с сервером аналогичен механизму, используемому интерфейсом СG1.
Используется также интерфейс FastСG1, который близок к интерфейсу СG1, но в то же время обладает преимуществами интерфейсов ISAPI/NSAPI (рассмотрены ниже). Приложения, написанные в соответствии с ним, запускаются как отдельные изолированные процессы, но являются постоянно активными и не завершаются после обращения к данным, как СG1-сценарии.
Более перспективными являются интерфейсы ISAPI/NSAPI (Internet Server API/Netscape Server АР1), разработанные фирмами Мicrosoft и Netscape соответственно. Они также предназначены для разработки дополнительных модулей расширения Web-сервера. В случае их использования модули расширения реализуются в виде библиотек DLL. Запуск модуля расширения выполняется сервером в ответ на запрос обозревателя на загрузку URL-адреса этого модуля. Взаимодействие между сервером и модулем расширения осуществляется с помощью специальных объектов (Request, Response). Сервер передает параметры запроса модулю расширения и получает сформированный Web-документ,’ который передается с помощью протокола НТТР обозревателю.
При многопользовательском режиме работы сервера загрузка ISAPI модуля расширения (библиотеки DLL) происходит один раз при первом обращении.
При обработке сервером последующих запросов к модулю расширения сервер использует уже загруженный экземпляр динамической библиотеки. Такой механизм взаимодействия сервера и модуля расширения обеспечивает экономию ресурсов сервера и увеличение скорости обработки запросов. Однако при возникновении ошибок в коде модуля расширения сам Web-сервер аварийно завершит работу (в отличие от интерфейса CGI при использовании которого в случае возникновения ошибки в модуле расширения сервер может продолжать нормально функционировать). Поэтому для отладки модулей расширения, реализуемых с помощью интерфейса ISAPI, создают аналог модуля на основе интерфейса CGI. При успешной его отладке создают и отлаживают вариант модуля расширения на основе ISAPI.
АSР, РНР и IDC/НТХ страницы — это специальный тип страниц, используемых для динамического формирования на сервере Web-страниц, содержащих информацию из БД.[2]
IDС-страница содержит алиас (псевдоним) БД, или системную запись, используемую операционной системой для связи с базой данных) БД, SQL,-запрос к базе данных, идентификатор пользователя и пароль для доступа к БД. НТХ-страница содержит НТМL-шаблон, определяющий какую информацию и в каком формате будет иметь результирующий файл. Этот файл поддерживает все теги языка НТМL и дополнительные теги для размещения информации из БД.
Активная серверная страница АSР (Аctive Servег Раgе) содержит одновременно НТМL-шаблон и SQL-запрос к БД. В АSР-странице используются средства языка JScript и объектная модель АSР, с помощью которых организуется доступ к БД и формируется внешний вид создаваемой Web-страницы. В АSР-страницах, также как в IDС-страницах, поддерживаются все теги языка НТМL и используются дополнительные теги для размещения кода на языке Jscript.
РНР-страницы разрабатываются с помощью одноименного языка обработки сценариев РНР (Регsonа1 Ноmе Раgе tools) — средства персональных домашних страниц). Синтаксис языка РНР напоминает смесь синтаксиса языков программирования С, JAVA и Рег1.
АSР, РНР и IDС/НТХ-страницы обрабатываются Web-сервером, в результате сервер генерирует Web-страницу содержащую информацию из БД, которая отсылается обозревателю. Рассмотрим процесс формирования Web-страниц, содержащих информацию из БД. [6]
В Интернете информация находится на Web-узлах, на которых для организации взаимодействия с пользователями сети устанавливается специальное программное обеспечение, в том числе Web-сервер. В функции Web-сервера входит обработка запросов Web-обозревателей пользователей сети. В результате обработки запроса сервер формирует Web-документ, который отсылается Web-обозревателю в формате протокола НТТР. Самостоятельно Web-сервер может отсылать готовые Web-страницы и формировать динамически Web-страницы различными способами. Для формирования динамической Web-страницы, содержащей информацию из БД, дополнительно используются модули расширения серверной части. В связи с этим различают пассивное и активное состояния Web-сервера. Так, Web-сервер находится в пассивном состоянии, если формируемый им документ содержит статическую текстовую, графическую, мультимедийную информацию и гиперссылки. В таком документе отсутствуют средства ввода и обработки запросов к серверу.
В случае, когда на Web-странице находятся интерфейсные элементы, которые могут в ответ на реакцию пользователя обращаться с запросами к серверу, то сервер переходит в активное состояние. Для публикации БД основной интерес представляет активный Web-сервер, который реализуется с помощью программных расширений. Для создания программных расширений Web-сервера, формирующих на Web-странице содержимое БД, используются следующие средства:
- консольные ехе-программы, использующие интерфейс СGI;
- ехе-программы, использующие интерфейс WinCGI;
- динамические библиотеки, использующие интерфейс ISAPI;
- динамические страницы IDС/НТХ;
- активные серверные страницы АSР.
Кроме того, для организации связи программных расширений Web-сервера с БД используются современные интерфейсы доступа к данным ОLЕ DВ, АDО и ODВС. Эти интерфейсы являются промежуточным уровнем между источником данных и приложением, в качестве которого выступают программные расширения Web-сервера.
Список использованной литературы
- Атре Ш. Структурный подход к организации баз данных. – М.: Финансы и статистика, 1983. – 320 с.
- Веретенникова Е.Г., Патрушина СМ., Савельева Н.Г. Информатика: Учебное пособие. Серия «Учебный курс», – Ростов Н/Д: Издательский центр «Март», 2002. – 416 с.
- Дейт К. Введение в системы баз данных //6-издание. – Киев: Диалектика, 1998. – 784 с.
- Диго СМ. Проектирование и использование баз данных. – М.: Финансы и статистика, 1995. – 208 с.
- Информатика. Базовый курс /Симонович СВ. и др. – СПБ: Издательство «Питер», 2000. – 640с.
- Информатика. Учебное пособие /Под ред. В.Г. Кирия. – Иркутск: ИРГТУ, 1998 часть 2. – 382с.
- Информатика. Учебное пособие /Ломтадзе В.В., Шишкина Л.П. -Иркутск: ИРГТУ, 1999. – 116с.
- Кузнецов С.Д. Введение в системы управления базами данных //СУБД. – 1995. -№1,2,3,4, 1996. -№1,2,3,4,5.
- Кузнецов С.Д. Операционные системы для управления базами данных //СУБД. -1996. – №3. – С.95-102.
- Ладыженский Г.М. Системы управления базами данных – коротко о главном //СУБД. – 1995. – №1,2,3,4.
- Ульман Д. Основы систем баз данных. – М.: Финансы и статистика, 1983. – 334 с.
Свежие комментарии