Теория и практика построения баз данных (1088289), страница 111
Текст из файла (страница 111)
Этп сайты можно рассматривать скорее как отправные точки поиска; вам стоит также самостоятельно поискать информацию в чЧеЬ, так как постоянно возникают новые сайты, посвященные этой тематике. Разновидности сетевого окружения 51 7 Глава 14 Сети, многоуровневые архитектуры и ХМ1 С возникновением Интернета начали появляться технологии, которые сегодня используются для публикации баз данных как в Интернете, так и в закрытых пнтрасетях. Мы начнем с краткого обзора разновидностей сетевого окружения, затем опишем многоуровневые архитектуры, наиболее часто используемые в приложениях баз данных.
Далее мы рассмотрим роль НТМ1. и ПНТМ1., а завершим главу обсуждением ХМЕ. Как вы узнаете, наиболее важным для обработки баз данных является язык ХМЕ ЯсЬепга. Разновидности сетевого окружения Сеть (пегзног!с) — это совокупность компьютеров, общающихся между собой посредством стандартизированного протокола. Некоторые сети являются открытыми (рнЫ1с) — ими может пользоваться любой, заплатив провайдеру, предоставляющему доступ (или, как студенты, присоединившись к организации, уже оплатившей досзуп).
Другие сети являются закрытыми (рг1наге). Доступ к ним могут получить только уполномоченные па это лица. Наиболее популярной открытой сетью является Интернет; именно с него мы и начнем, Интернет Интернет (1пгегпес) представляет собой открытую сеть, состоящую из компьютеров, которые обшаются между собой посредством коммуникационного протокола под названием ТСР/1Р (Тгапечшзгйоп Сопгго! Ргонгаш/1пгегпег. Ргогосо1, Программа управления передачей/Интернет-протокол). Эта сеть была создана Агентством перспективных исследований (Ас!напсег! КезеагсЬ Рго!есгв Адепсу, АКРА) вооруженных сил США в 1960-х годах.
Изначально опа называлась АКРАЬ!ЕТ и соединяла крупные вычислительные центры военных ведомств, университетов и исследовательских институтов. Со временем к этой сети присоединялось все больше и больше организаций, и постепенно интерес к ней стали проявлять коммерчески ориентированные организации, не связанные с научными исследованиями. Сегодня эта сеть известна под названием Интернет.
В 1989 г. Тим Бернерс-Ли (Тпп Вегпегз-Еее) пз Европейской лаборатории ядерной физики (СЕК1ч) начал работу над проектом, который позволил бы исследователям делиться резулыатами своей работы с помощью Интернета. Этот проект привел к разработке НТТР (Ьуреггехг ггапз(ег ргогосо!) — протокола передачи гипертекста, основанного на протоколе ТСР/1Р и обеспечивающего совместное использование документов со встроенными ссылками на другие документы в сетях ТСР/1Р. С точки зрения приложений баз данных, заслуживают внимания две особенности протокола НТТР. Во-перпьгх, этот протокол ориентирован па запрос (гег1пезгог1епгег)).
НТТР-сервер ждет, пока не придет запрос, а по приходе запроса выполняет некоторые действия и затем, возможно, генерирует отклик. В отличие от традиционных приложений информационных управляющих систем, он не ведет статистики и никаким другим способом не отслеживает активность приложений. Во-вторых, НТТР-приложения являются бесстатусиыми (згаге1езх), то есть у них нет состояния.
Получив запрос, НТТР-сервер обрабатывает его, а затем «забывает» о клиенте, который прислал этот запрос. Попыток продолжить сеанс пли обмен дапнымн с определенным клиентом не предпринимается. Отсутствие состояния не является помехой для знеЬ-приложений, доставляющих клиенту статическое содержимое — рекламу и т. п. Однако для приложений баз данных отсутствие состояния представляет неудобство, ведь они ведут обработку транзакций, а это может подразумевать многократный обмен данными между клиентом и сервером. Следовательно, необходимо каким-то образом дополнить НТТР, чтобы приложения баз данных имели способ поддерживать свое состояние.
Несколько лет назад иеЬ-приложения вынуждены были для этого самостоятельно заниматься определенной алгоритмической «гимнастикой». Сегодня механизмы поддержания состояния предоставляются ПЯ в сочетании с АКР и сервлетамп '1ана в сочетании с)БР. Интрасети Термин иптрасеть (1пггапег) имеет несколько различных толкований. Чаще всего этим термином ооозначается закрьггая локальная (ЕАЬ1) пли глобальная (ЮА1ч) сеть, использующая ТСР/! Р, НТМ) и технологию браузеров на клиентских компьютерах в технологию виеЬ-серверов на серверных машинах. Иногда данный термин используется для обозначения любой закрытой локальной илп глобальной сети, в которой имеются клиенты и серверы.
Есть две характеристики ннтрасетей, которые отличают их от Интернета. Вопервых, интрасети являются закрытыми. Опи либо вообще ие соединены с открытой сетью, либо соединены с ней через брандмауэр (1!гена!1) — компьюзер, выступающий в качестве защитного шлюза. Брандмауэры фильтругот трафнк между интрасетью и Интернетом и отслеживают его источник и приемник. Одни брандмауэры действуют таким образом, что пропускают только определенные виды трафпка, другие, наоборот, запрещагот определенные виды графика, третьи работают в обоих режимах.
Многоуровневая архитектура 519 Беспроводной Дома В дорог В офисе 518 Глава 14. Сети, многоуровневые архитектуры и ХМ~ Поскольку интрасети являются закрытыми, о безопасности в нпх приходится заботиться меныпе. Это не означает, что безопасности вообще не требуется уделять внимания; смысл в том, что меры безопасности могут быть не столь изощренными. В большинстве случаев компьютеры в интрасети являются известными н поддерживаются организацией, которая владеет данной сетью н обслуживает ее. Несанкционированный доступ и нарушения безопасности в такой сети легче выявить н предотвратить, чем в открытой сети.
Вторая основная отличительная характеристика интрасети — скорость передачи данных. В интрасетях она велика: многие пнтрасетп имеют скорость порядка 100 000 Кбит/с (тысяч бнт в секунду). Сравните это с 56 Кбнт/с — типичной скоростью, на которой работают пользователи, соединяющиеся с Интернетом при помощи модема.
Даже те из пользователей, кто перешел на РЯ. н другие специализированные модемные технологии, работают на скоростях, не превышающих 500 Кбит/с. Таким образом, прн проектировании интернет-приложения необходимо привести требования приложения к скорости передачи данных в соответствие с возможностями пользователей. Благодаря этой разнице в скорости в ннтрасетевых приложениях можно использовать большие растровые рисунки, звуковые файлы н анимацисо.
Что касается мира баз данных, то здесь более важной является возможность передавать на клиентские компьютеры результаты запросов, содержагцне большие обьемы данных. Кроме того, высокая скорость позволяет загружать на клиентские машины программные файлы большого размера. Это означает, как вы узнаете позже, что в интрасетн клиент может выполнять больший объем действий по обработке приложения, чем в Интернете. Беспроводной доступ в сети Пользователи мобильных телефонов, наладонных компьютеров и других мобильных устройств хотят иметь доступ в Интернет и в организационные интрасети по беспроводной технологии. Поскольку мобильные устройства имеют ограниченный размер экрана, уменьшенную клавиатуру и сокращенный объем памяти, стандартные протоколы, подобные 11ТМЕ и ХМ(., не подходят для использования на таких устройствах.
Для установления международного стандарта доступа в сеть с мобильных устройств был разработан протокол 1(АР (Ж(ге1езз Арр11сас(оп Ргососо1, протокол для мобильных приложений). Кроме того, для отображения укеЬ-страниц на мобильных устройствах был разработан вариант ХМЕ под названием сттттт. (%1ге1езз Магйцр 1дпйцайе, язык разметки для мобильных устройств).
На рис. 14.1 показано использование всех трех типов сетей для управления контактной информацией. Секретарше здесь нужен доступ к именам и телефонам контактных лиц из офиса, из дома и с моонльного телефона, когда она находится в пути. База данных с контактной информацией может находиться в ее офисе, дома нли у провайдера. Секретарше не важно, где конкретно находится база данных: все, что она хочет, — это иметь доступ к единому источнику контактной информации в любое время, Дальнейшее обсуждение тйгМЕ и ЪЪ'АР последует позже, после того как мы рассмотрим ХМ1..
Рис. 14.! . Потребность е доступе к данным по сети из любой точки Многоуровневая архитектура На рис. 14.2 стзобрах<ена трехуровневая архитектура (Гйгее-1ече1 агсЫСессцге), используемая во многих приложениях баз данных, применяющих интернет-технологии. На этом и трех следующих рисунках будет много аббревиатур. Не беспокойтесь, если вы еще пе знакомы с этими терминами, Серверы (ПБ) и языки разметки (РНТМЕ) мы рассмотрим после того, как обсудим обшусо архитектуру. Стандарты баз данных (ОРВС) будут описываться в главах 15 и 16.
На рис. 14.2 показаны трп уровня, нли три типа процессоров. Если перечислять слева направо, это сервер базы данных, тееЬ-сервер п браузер или клиентский компьютер. Как показано, каждый из этих уровней может работать под управлением своей операционной системы. В этом примере сервер базы данных работает под управлением оп(х, тьеЪ-сервер — под управлением Юспдожз 2000, а браузеры — под управлением операционной системы Мас(псозй. Это только пример. Скорее всего, на уровне браузеров будет наблюдаться смесь из Ю(пдотуз 98, (Зп(х, Мас(псозй и Ж(пс(отта 2000. ЮеЪ-сервер и сервер базы данных могут работать под Пгйх илп ЧГ(пс(очтз 2000, Многоуровневая архитектура 521 туувЬ-страница ° 008С АОО ° ОБЕ/ОВ о НТТР: Браузвр Браузвр Продукт/операционная система (пример) Обработка 801.
НТТР-кпиент НТТР-сервер Клиентские Серверные сценарии сценарии Материализация Обработка представпений представлений Рис. 14.З. Функции уровней Управление базой данных 520 Глава 14. Сети, многоуровневые архитектуры и ХМБ Продукт/операционная система (пример) Не1зсарв Мач)оагог, Мгсговоа Пв, Огас!е, Мас)пговн Ю/)пбоягв 2000 Оп)х Рис. 14.2. Трехуровневая архитектура Продукты, показанные в качестве примеров на рпс.
14.2, включают Огас!е на сервере базы данных, М!стока(г 1пгегпег 1п(оппайоп 3егчег (ПЯ) па тчеЬ-сервере и браузер )т)е(эсэре )х!ач!яагог на клиентских компьютерах. Опять-таки, это всего лишь пример. На сервере базы данных может работать любая СУБД от Ассезз до 1)В2. Распространенными тчеЪ-серверами являются П3, Мегзсаре Бегчег и Арасйе.
Наиболее популярными браузерами являются /хе(эсэре Нач!яагог и М!агава(г 1гтгеггтег Ехр!агег. Как показано на рисунке, через интерфейс между тчеЬ-сервером и сервером базы данных передаются ЗО) -операторы и реляционные данные. Через интерфейс между ъ еЬ-сервером и браузером передаются ччеЬ-страницы, клиентский код и данные.
Мы еще будем много говорить о каждом из этих интерфейсов в этой и последующих трех главах. Функции описанных трех уровней перечислены на рис. 14.3. Назначение сервера базы данных — нести на себе СУБД, которая выпал>иет ЯЯ1.-операторы и осуществляет управление базой данных. Здесь СУБД действует в традиционной роли, заключающейся в манипулировании данными. Возможности прикладных средств, которьге вы видели в Ассезж в данном с//учао не задействуются. СУБД на сервере базы данных на рис.