Научно-методичний центр
Научно-методический центр Санкт-Петербурга
Научные работы Доклады, курсовые, рефераты |
|
|
Если мост располагается в рабочей станции - внешний мост. Внешние мосты и их ПО устанавливаются в рабочей станции, которая функционирует не как файловый сервер. Поэтому внешний мост может передавать данные более эффективно, чем внутренний. Существуют выделенные и совмещенные мосты. Выделенный -это ПК, использующийся как мост, не может функционировать как рабочая станция. Совмещенный - может функционировать и как мост и как рабочая станция - одновременно. Преимущество: ограничиваются издержки на покупку дополнительного компьютера. Недостаток: отсутствие потенциальных возможностей рабочей станции, размещенной в нем. Когда прикладная программа на РС зависает и вызывает остановку РС, функционирующей как мост программа моста также останавливает операции. Этот сбой прерывает разделение данных между сетями, а также прерывает сеансы работы РС, которые связаны через мост с файловым сервером. Поскольку выделенный мост не используется как РС, то никакие ПП не вызовут такой сбой и не прервут работу. Выбирая мост, необходимо сопоставить стоимость оборудования и риск возможности сбоя моста. Локальный мост передает данные между сетями, которые расположены в пределах ограничений кабеля по расстоянию. Локальные мосты применяются в следующих случаях: 1. - для разделения больших сетей на две и более подсетей с целью увеличения быстродействия и уменьшения стоимости линий связи. Например, в одной организации различные отделы разделяют одну и ту же сеть. Т.к. большие сети медленнее малых, то есть возможность выделить в небольшие подсети компактно расположенные отделы. Используя локальный мост Netware, отделы могут продолжать разделять данные таким образом, как если бы они работали в одной сети, приобретая при этом быстродействие и гибкость, присущие малой сети. 2. - с помощью локального моста можно расширить физические возможности сети. Если сеть Netware имеет максимально допустимое число узлов, поддерживаемое её аппаратной схемой адресации и есть необходимость в добавлении ещё нескольких узлов, то для расширения такой сети используется мост Netware. При этом включение в сеть дополнительного файлового сервера необязательно. 3.- объединение сетей в интерсеть. Чтобы пользователи каждой сети могли получить доступ к информации других сетей, необходимо связать эти сети, образуя интерсеть. Удаленные мосты применяются, когда расстояние не позволяет соединять сети посредством кабеля. Например: соединение сети в г.Костроме с сетью г.Новгорода поставит перед необходимостью в использовании удаленного моста, так как ограничение по длине кабеля для локального моста будет превышено. Удаленный мост использует промежуточную среду передачи (телефонные линии) для соединения с удаленной сетью или удаленными РС. При связи сети с удаленной сетью необходимо установить мост на каждом конце соединения, а при связи сети с удаленной РС - мост требуется только на сети. Выбор модемов для организации удаленного взаимодействия должен определяться характеристиками и типом каналов связи, а также требованиями к возможностям модемов и их стоимости. Примечание: V - до 2400 бод - телеф. каналы связи (1бод=1бит/сек), используются с низко и средне - скоростными ассинхронными модемами (ассинхронный) ; V - до 19,2 бод - в выделенных линиях,(синхронный); (обычно телефонная линия, имеющая максимальную скорость V=64 Кбит/с, либо коммутируемая телеф. линия со скоростью передачи данных V=9600 бит/с). Удаленные мосты Netware поддерживают два вида методов последовательной передачи: ассинхронный и синхронный. Основное различие между мостом в защищенном (protected - mode) режиме и мостом в реальном (real - mode) режиме заключается в количестве памяти, которое он может поддерживать. Защищенный мост позволяет добавлять память, в то время как реальный мост предоставляет минимум памяти. Мост в защищенном режиме. ПО моста в защищенном режиме поддерживает стандартный 1Мбайт памяти моста (640 Кб ОЗУ +доп. память) Оно (ПО) также поддерживает установку плат памяти в общем объеме до 8 Мб. Этот объем дополнительной памяти позволяет иметь мост, на котором могут выполняться доп. процессы (Valua Added Processes - VAP) в объеме памяти вплоть до 7 Мб. Если планируется установить более чем один или два VAP - процесса, следует выбрать мост в защищенном режиме. При этом необходимо определить доп. количество плат памяти. Число дополняемых плат зависит от того, сколько VAP-процессов планируется выполнять. Если будет выполняться более чем два VAP-процесса, необходимо установить по крайней мере одну плату. Примечание. Если требуется выполнять 4 VAP-процесса, например таких, как VAP печати и VAP обслуживания очереди, мост должен работать в защищенном режиме. Прежде чем использовать мост в защищенном режиме, необходимо убедиться в соответствии типа компьютера возможности работы в совмещенном режиме. Мост в реальном режиме. ПО моста в реальном режиме поддерживает стандартные 640 Кб основной памяти, в этом случае в мосте может выполняться один или два дополнительных ориентированных процесса (VAP). Мосты в реальном режиме могут быть как выделенными, так и совмещенными. Вычислительная сеть позволяет пользователям сети использовать в своих работах сервис сетевой печати. Сетевыми печатающими устройствами (ПУ) могут быть принтеры, плоттеры или любые периферийные устройства. ПУ является сетевым, если оно подключено извне к рабочей станции (РС) или сети, и может быть использовано в интересах различных пользователей или групп пользователей сети с различных участков сети. Последние модели современных ПУ имеют большие функциональные возможности, высокую производительность. Они достаточно дороги и применение их в виде локальных будет сопряжено с большими материальными затратами. Сервис печати NETWARE позволяет сразу нескольким пользователям более эффективно использовать. Например, один лазерный принтер фирмы XEROX, подключенный в сеть даст возможность сэкономить средства, не приобретая другие. Когда несетевая станция посылает запрос на печать на подключенный к ней принтер, этот запрос сразу же направляется на выполнение. Если пользователь будет работать с сетевыми принтерами, то информация, которую он выводит ПУ, будет направлена сначала в файловый или принт-сервер, а уже потом на принтер. Когда принтер готов выполнять очередной запрос, принт-сервер выбирает задание на печать из очереди и посылает его на принтер, соответствующий данной очереди. Принт-сервер является составной частью программной компоненты файл-сервера, которая выбирает задания на печать из очереди и направляет их в принтер. Принт-сервер может также присутствовать в сети в виде специализированной рабочей станции, которая призвана обслуживать процесс печати в сети или он может быть совмещен с ПО моста. В сети процесс сетевой печати может осуществляться и на принтерах, подключенным к обычным удаленным РС. Принт-сервер NETWARE увеличивает возможности печати сети, он может обслуживать до 16 принтеров, подключенных к различным компьютерам, включенным в сеть и может быть инсталлирован (инсталляция - установка программного изделия на ПЭВМ) на файл-сервере, мосту или специализированной РС. ПО принт-сервера обычно совмещено с ПО файлового сервера и использует VAP-процессы, загружаемые на файл-сервере. VAP-процессы принт-сервера используют в процессе работы на файл-сервере или мосту до 128 К памяти, включая DOS при загрузке на мосту. Для каждого притера добавляется еще по 10 К. При использовании специализированного принт-сервера на РС для его работы требуется 200 К памяти, плюс по 10 К для каждого подключенного принтера. Эти цифры могут меняться в зависимости от загруженности принт-сервера. Удаленный принтер требует на своей РС 9 К памяти. Эта цифра включает и объем буфера, необходимый для работы принтера. Удаленный принтер будет функционировать при отключенном файловом сервере, если принт-сервер оформлен в виде специализированной РС или он инсталлирован на мосту. В системе NETWARE процесс печати реализован следующим образом: оболочка РС направляет файл по сети в файловый или принт-сервер, где он, согласно системному планированию, буферируется и ставится в очередь с параметрами задания для печати. При одновременной посылке информации пользователями на печать, запрос, полученный первым, будет обработан в первую очередь. Все последующие запросы выстраиваются в очередь и будут в такой последовательности обработаны, если только они не получат высший приоритет. Рабочим заданием на печать служат характеристики, определяющие, как должна производиться печать. К ним относятся: режим, формат, количество копий, а также указание конкретного принтера, который будет выполнять работу. Каждый пользователь создает задание на печать и направляет его в файл или принт-серверу, где оно уже ставится в очередь. NETWARE версии 2.15 позволяет одному принтеру обслуживать несколько очередей, и одна очередь может обслуживаться несколькими принтерами. Например, при наличии нескольких запросов на печать, принтерам Printer0 и Printer1 может быть дано задание на выполнение очереди с более высоким приоритетом. Можно также определить, каким пользователям разрешено помещать задания на печать в каждую очередь. Любая очередь на печать должна быть спланирована с помощью специальных средств. Можно установить соответствие между очередями на печать и принтерами с помощью команд, которые вводятся с консоли файл-сервера, или из подготовленного файлa аutoexec.sys. 4.3. Технология клиент-серверВ настоящее время весьма актуален переход от небольших локальных сетей персональных компьютеров к промышленным корпоративным информационным системам - UPSIZING. Большинство средних и крупных государственных и коммерческих организаций постепенно отказываются от использования только ПК, задачей сегодняшнего дня - создание открытых и распределенных информационных систем. На сегодняшний день развитие информационных технологий - создание единых сетей предприятий и корпораций, объединяющих удаленные компьютеры и локальные сети, часто использующие разные платформы, в единую информационную систему. Т.е. необходимо объединить пользователей компьютеров в единое информационное пространство и предоставить им совместный доступ к ресурсам. Однако здесь возникает множество трудностей, связанных с решением задачи по организации каналов связи (кабель Ethernet не протянешь по городу, а тем более до другого конца планеты). При построении корпоративных сетей иногда используются телефонные каналы, но связь по таким коммутируемым линиям ненадежна, аренда выделенных линий связи дорога, а эффективность такого канала невысокая. Проблема возникает и при интегрировании в корпоративную сеть разнородных ЛВС, а также в подключении больших компьютеров, например, IBM mainframe или VAX. Сложности возникают и при объединении в одну локальную сеть компьютеров с разными ОС. Поэтому построение корпоративной сети задача не из легких. Проблема первая - это каналы связи. Самым оптимальным вариантом является использование уже существующих глобальных сетей передачи данных общего пользования, чтобы коммуникационный протокол в корпоративной сети совпадал с принятым в существующих глобальных сетях. Наиболее рациональным выбором здесь следует считать протокол Х.25. Данный протокол позволяет работать даже на низкокачественных линиях связи, так как разрабатывался он для подключения удаленных терминалов к большим ЭВМ и соответственно включает в себя мощные средства коррекции ошибок, освобождая от этой работы пользователя. Дальнейшее развитие Х.25 - Frame Relay, а также новые протоколы типа АТМ, хотя и обещают значительно большие скорости, требуют практически идеальных линий связи и, возможно, не скоро будут широко применяться в ближайшем будущем. Существующие в нашей стране глобальные сети общего доступа - SprintNet, Infotel, Pochet и прочие - построены на базе Х.25 Протокол Х.25 позволяет организовать в одной линии до 4096 виртуальных каналов связи. Если протянуть к офису одну выделенную линию. то ее можно использовать для объединения нескольких удаленных офисов, подключения корпоративных информационных ресурсов, доступа к системам электронной почты, базам данным - одновременно. Выделенная линия - это обычная телефонная линия, с которой можно работать на скоростях 9600-28800 бит/с. Более скоростные линии (64 Кбит/с и >) стоят значительно дороже. Обычно сети Х.25 строятся на двух типах оборудования - Switch или центр коммутации пакетов (ЦКП) и PAD (hfcket assembler/disassembler - сборщик/разработчик пакетов), называемый также пакетным адаптером данных (ПАД), или терминальным концентратором. ПАД служит для подключения к сети Х.25 оконечных устройств через порты. Примером использования ПАД в корпоративной сети - подключение банкоматов к центральному компьютеру банка. ЦКП - его задача состоит в определении маршрута, т.е. в выборе физических линий и виртуальных каналов в них, по которым будет пересылаться информация. Переход к многопользовательским СУБД - качественно технологический скачок, обеспечивающий деятельность организаций в будущем. Реализация перехода к новой информационной системе (ИС) зависит от используемой и перспективной моделей клиент-сервер. Модели клиент-сервер - это технология взаимодействия компьютеров в сети. Каждый из компьютеров имеет свое назначение и выполняет свою определенную роль. Одни компьютеры в сети владеют и распоряжаются информационно-вычислительными ресурсами (процессоры, файловая система, почтовая служба, служба печати, база данных), другие имеют возможность обращаться к этим службам, пользуясь их услугами. Компьютер, управляющий тем или иным ресурсом называют сервером этого ресурса, а компьютер, пользующийся им - клиентом. Каждый конкретный сервер определяется видом того ресурса, которым он владеет. Например, назначением сервера баз данных является обслуживание запросов клиентов, связанных с обработкой данных; файловый сервер, или файл-сервер, распоряжается файловой системой и т.д. Этот принцип распространяется и на взаимодействие программ. Программа, выполняющая предоставление соответствующего набора услуг, рассматривается в качестве сервера, а программы пользующиеся этими услугами, принято называть клиентами. Программы имеют распределенный характер, т.е. одна часть функций прикладной программы реализуется в программе-клиенте, а другая - в программе-сервере, а для их взаимодействия определяется некоторый протокол. Рассмотрим эти функции. Один из основных принципов технологии клиент-сервер заключается в разделении функций стандартного интерактивного приложения на четыре группы, имеющие различную природу. Первая группа. Это функции ввода и отображения данных. Вторая группа - объединяет чисто прикладные функции, характерные для данной предметной области (для банковской системы - открытие счета, перевод денег с одного счета на другой и т.д.). Третья группа - фундаментальные функции хранения и управления информационно-вычислительными ресурсами (базами данных, файловыми системами и т.д.). Четвертая группа - служебные функции, осуществляющие связь между функциями первых трех групп. В соответствии с этим в любом приложении выделяются следующие логические компоненты: - компонент представления (presentation), реализующий функции первой группы; - прикладной компонент (business application), поддерживающий функции второй группы; - компонент доступа к информационным ресурсам (resource manager), поддерживающий функции третьей группы, а также вводятся и уточняются соглашения о способах их взаимодействия (протокол взаимодействия). Различия в реализации технологии клиент-сервер определяются следующими факторами: - видами программного обеспечения, в которые интегрирован каждый из этих компонентов; - механизмами программного обеспечения, используемыми для реализации функций всех трех групп; - способом распределения логических компонентов между компьютерами в сети; - механизмами, используемыми для связи компонентов между собой. Выделяются четыре подхода, реализованные в следующих моделях: 1. модель файлового сервера (File Server - FS); 2. модель доступа к удаленным данным (Remote Data Access - RDA); 3. модель сервера баз данных (Data Base Server - DBS); 4. модель сервера приложений (Application Server - AS). 4.3.1. Модель файлового сервера. (FS) -является базовой для локальных сетей ПК. До недавнего времени была популярна среди отечественных разработчиков, использовавших такие системы, как FoxPro, Clipper, Clarion, Paradox и т.д. Одним из компьютеров в сети считается файловым сервером и предоставляет другим компьютерам услуги по обработке файлов. Файловый сервер работает под управлением сетевой операционной системы (Novell NetWare) и играет роль компонента доступа к информационным ресурсам (т.е. к файлам). На других ПК в сети функционирует приложение, в кодах которого совмещены компонент представления и прикладной компонент (рис.4.7.). Клиент Сервер Запросы Компонент Прикладной Компонент доступа к представления компонент ресурсам файлы Рис.4.7. Модель файлового сервера
Протокол обмена представляет собой набор вызовов, обеспечивающих приложению доступ к файловой системе на файл-сервере. К недостаткам технологии данной модели относят низкий сетевой трафик (передача множества файлов, необходимых приложению), небольшое количество операций манипуляции с данными (файлами), отсутствие адекватных средств безопасности доступа к данным ( защита только на уровне файловой системы) и т.д. 4.3.2. Модель доступа к удаленным данным (RDA) –существенно отличается от FS-модели методом доступа к информационным ресурсам. В RDA-модели коды компонента представления и прикладного компонента совмещены и выполняются на компьютере-клиенте. Доступ к информационным ресурсам обеспечивается операторами специального языка (SQL, если речь идет о базах данных) или вызовами функций специальной библиотеки (если имеется специальный интерфейс прикладного программирования - API). Запросы к информационным ресурсам направляются по сети удаленному компьютеру, который обрабатывает и выполняет их, возвращая клиенту блоки данных (рис.4.8).
Клиент Сервер SQL Компонент Прикладной Компонент доступа к представления компонент ресурсам данные Рис.4.8. Модель доступа к удаленным даннымГоворя об архитектуре клиент-сервер, подразумевают данную модель. Основное достоинство RDA-модели заключается в унификации интерфейса клиент-сервер в виде языка SQL и широком выборе средств разработки приложений. К недостаткам можно отнести существенную загрузку сети при взаимодействии клиента и сервера посредством SQL-запросов; невозможность администрирования приложений в RDA, т.к. в одной программе совмещаются различные по своей природе функции (представления и прикладные). 4.3.3. Модель сервера баз данных (DBS) -реализована в некоторых реляционных СУБД (Informix, Ingres, Sybase, Oracle), (рис.4.9). Ее основу составляет механизм хранимых процедур - средство программирования SQL-сервера. Процедуры хранятся в словаре баз данных, разделяются между несколькими клиентами и выполняются на том же компьютере, где функционирует SQL-сервер. В DBS-модели компонент представления выполняется на компьютере-клиенте, в то время как, прикладной компонент оформлен как набор хранимых процедур и функционирует на компьютере-сервере БД. Там же выполняется компонент доступа к данным, т.е. ядро СУБД. Клиент Вызов Сервер Компонент Прикладной Компонент доступа к представления компонент SQL ресурсам Рис.4.9. Модель сервера баз данных
Понятие информационного ресурса сужено до баз данных, поскольку механизм хранимых процедур - отличительная характеристика DBS-модели - имеется пока только в СУБД. Достоинства DBS-модели: - возможность централизованного администрирования прикладных функций; - снижение трафика (вместо SQL-запросов по сети направляются вызовы хранимых процедур); - возможность разделения процедуры между несколькими приложениями; - экономия ресурсов компьютера за счет использования единожды созданного плана выполнения процедуры. К недостаткам относится: - ограниченность средств написания хранимых процедур, представляющих собой разнообразные процедурные расширения SQL, которые уступают по изобразительным средствам и функциональным возможностям в сравнении с языками С или Pascal. Сфера их использована ограничена конкретной СУБД из-за отсутствия возможности отладки и тестирования разнообразных хранимых процедур. На практике чаще используются смешанные модели, когда целостность базы данных и некоторые простейшие прикладные функции обеспечиваются хранимыми процедурами (DBS-модель), а более сложные функции реализуются непосредственно в прикладной программе, которая выполняется на компьютере-клиенте (RDA-модель). 4.3.4. Модель сервера приложений (AS) -представляет собой процесс, выполняемый на компьютере-клиенте, отвечающий за интерфейс с пользователем (т.е. реализует функции первой группы). (рис.4.10). Клиент Сервер Сервер Компонент API Прикладной SQL Компонент доступа представления компонент к ресурсам Рис.4.10. Модель сервера приложений
Прикладной компонент реализован как группа процессов, выполняющих прикладные функции, и называется сервером приложения (Application Server - AS). Доступ к информационным ресурсам осуществляет менеджер ресурсов (например, SQL-сервер). Из прикладных компонентов доступны такие ресурсы как, базы данных, очереди, почтовые службы и др. AS, размещенная на компьютере, где функционирует менеджер ресурсов, избавляет от необходимости направления SQL-запросов по сети, что повышает производительность системы. Модели RDA и DBS опираются на двухзвенную схему разделения функций: - в RDA-модели прикладные функции отданы программе-клиенту (прикладной компонент сливается с компонентом представления); - в DBS-модели ответственность за их выполнение берет на себя ядро СУБД (прикладной компонент интегрируется в компонент доступа к информационным ресурсам). В AS-модели реализована трехзвенная схема разделения функций. Здесь прикладной компонент выделен как важнейший изолированный элемент приложения. Сравнивая модели, AS обладает наибольшей гибкостью и имеет универсальный характер. Принципы перехода к новой информационной системе.При переходе к новой информационной системе (ИС) необходимо решить такие вопросы как выбор одной из четырех моделей, компоненты архитектуры ИС и инструментарий перехода. Наиболее распространенной ИС является FS-модель (примем ее за исходную), а в качестве целевой - RDA-модель (наиболее распространена и относительно проста). На практике наблюдаются и другие схемы перехода ( FS-->DBS, RDA--->DBS, RDA-->AS, FS-->AS). Наиболее типичный случай это FS-->RDA, это переход от локальных сетей ПК к архитектуре систем с сервером баз данных. Следующий шаг - определение компонентов архитектуры системы, имеющей в своей основе RDA-модель - компьютер-клиент и сервер баз данных. Проблема заключается в выборе аппаратного и базового программного обеспечения этих компонентов. На сегодняшний день используются ПК на базе процессоров 486 или Pentium под управлением ОС/2 MS Windows (распространенность, популярность, большое число приложений, широкий набор активно используемых русифицированных продуктов). Самое важное достоинство MS Windows - множество средств быстрой разработки приложений, работающих с SQL-ориентированными СУБД, и доступность этих средств для отечественных пользователей. Говоря о сервере БД, необходимо упомянуть, что это должен быть мощный компьютер, снабженный высокоскоростными надежными механизмами дисковой памяти большой емкости и системой архивирования на магнитных лентах. Его работа должна осуществляться под управлением многозадачной многопользовательской ОС, поддерживающей промышленные стандарты. Для RDA-модели характерны два ключевых компонента: - ПК на базе процессоров 486/Pentium под управлением ОС MS Windows; - высокопроизводительный RISC-компьютер (фирм Sun, Hewiett-Packard, IBM) под управлением соответствующей версии ОС UNIX. 4.4. Технология работы в среде распределенной обработки данныхОдной из важнейших сетевых технологий является распределенная обработка данных, позволяющая повысить эффективность удовлетворения информационной потребности пользователя и, обеспечить гибкость и оперативность принимаемых им решений. Достоинствами распределенной обработки информации является: - большое число взаимодействующих между собой пользователей; - устранение пиковых нагрузок с централизованной базы данных за счет распределения обработки и хранения локальных баз данных на разных ЭВМ; - возможность доступа пользователя к вычислительным ресурсам сети ЭВМ; - обеспечение обмена данными между удаленными пользователями. При распределенной обработке производится работа с базой, т.е. представление данных, их обработка, работа с базой на логическом уровне осуществляется на компьютере клиента, а поддержание базы в актуальном состоянии - на сервере. При наличии распределенной базы данных база размещается на нескольких серверах. В настоящее время созданы базы данных по всем направлениям человеческой деятельности: экономической, финансовой, кредитной, статистической, научно-технической, маркетинга, патентной информации, электронной документации и т.д. Создание распределенных баз данных (РБД) было вызвано двумя тенденциями обработки данных, с одной стороны - интеграцией, а с другой - децентрализацией. Интеграция подразумевает централизованное управление и ведение баз данных. Децентрализация обеспечивает хранение данных в местах их возникновения или обработки, при этом скорость обработки повышается, стоимость снижается, увеличивается степень надежности системы. Распределенная база данных - база данных, части которой размещены на отдельных ЭВМ, входящих в сеть. При этом некоторые данные могут дублироваться. При проектировании РБД осуществляется разбиение объекта на несколько частей (фрагментов) и размещение каждого фрагмента на один или несколько компьютеров. Размещение фрагментов может быть избыточным или безызбыточным. При избыточном размещении необходимо определить степень дублирования фрагментов. Выгоды, получаемые от дублирования, пропорциональны соотношению объемов выборки данных и их обновления. Для поддержания целостности базы данных требуется корректировка всех копий. Преимущества дублирования уменьшаются с увеличением стоимости хранения фрагментов и, увеличиваются, так как повышается устойчивость системы против отказов. Эффективность работы пользователей с РБД зависит от обеспеченности их информацией о содержащихся в РБД данных, их структуре и размещении. Эту задачу решает сетевой словарь-справочник данных, находящийся в одной ЭВМ сети или дублирующийся на нескольких ЭВМ. При этом, словарь-справочник может иметь распределенную структуру, т.е. когда его отдельные фрагменты распределены по рабочим станциям сети. К организации баз данных предъявляются такие общие требования как, обеспечение высокой скоростью обработки запросов, секретности, независимости (физической и логической) данных, безопасности и т.д. Кроме перечисленных требований, к РБД выдвигаются требования "прозрачности": распределенной структуры БД; совместного доступа к данным; распределенной обработки. Распределенная структура БД предполагает независимость конечных пользователей и программ от способа размещения информации на рабочих станциях сети, т.е. формулирование запросов к РБД производится аналогично запросам к централизованной БД. Совместный доступ к данным подразумевает модификацию одних и тех же данных несколькими пользователями не нарушая целостности РБД. "Прозрачность" распределенной обработки означает независимость пользователей и программ от типа локальной вычислительной сети и применяемого сетевого программного обеспечения. Обработка запроса пользователя может производиться на нескольких ЭВМ. Доступ пользователей к РБД и администрирование осуществляется с помощью системы управления распределенной базой данных (СУРБД), которая обеспечивает выполнение следующих функций: - автоматическое определение ЭВМ, хранящей требуемые в запросе данные; - декомпозицию распределенных запросов на частные подзапросы к БД отдельных ЭВМ; - планирование обработки запросов; - передачу частных подзапросов и их исполнение на удаленных ЭВМ; - прием результатов выполнения частных подзапросов; - поддержание в согласованном состоянии копий дублированных данных на различных ЭВМ сети; - управление параллельным доступом пользователей к РБД; - обеспечение целостности РБД. 4.5. Базовые технологии обработки запросов в архитектурахфайл-сервера и клиент-сервераПрикладные программы управления данными представляют собой необходимый инструмент для распределенной обработки. Архитектура клиент-сервера сети позволяет различным прикладным программам одновременно использовать общую базу данных. Совершенно очевидно, что перенос программ управления данными с рабочих станций на сервер способствует высвобождению ресурсов рабочих станций, предоставляет возможность увеличить число частных, локально решаемых задач. Данная архитектура позволяет также централизовать ряд самых важных функций управления данными, такие, как защита информации баз данных, обеспечение целостности данных, управление совместным использованием ресурсов. Одним из важных преимуществ архитектуры клиент-сервера в сетевой обработке данных является возможность сокращения времени реализации запроса. В подтверждение этому рассмотрим две базовые технологии обработки информации в архитектуре клиент-сервера сети и технологии использования традиционного файлового сервера. Допустим, что прикладная программа базы данных загружена на рабочую станцию и пользователю необходимо получить все записи, удовлетворяющие некоторым поисковым условиям. В среде традиционного файлового сервера программа управления данными, которая выполняется на рабочей станции, должна осуществить запрос к серверу каждой записи базы данных (рис.4.11,а). Программа управления данными на рабочей станции может определить, удовлетворяет ли запись поисковым условиям, лишь после того, как она будет передана на рабочую станцию. Очевидно, что данный технологический вариант обработки информации имеет наибольшее суммарное время передачи данных по каналам сети. В среде клиент-сервера, напротив, рабочая станция посылает запрос высокого уровня серверу базы данных. Сервер базы данных осуществляет поиск записей на диске и анализирует их. Записи, удовлетворяющие условиям, могут быть накоплены на сервере. После того, как запрос целиком обработан, пользователю на рабочую станцию передаются все записи, которые удовлетворяют поисковым условиям (рис. 4.11,б). Данная технология позволяет снизить сетевой трафик и повысить пропускную способность сети. Более того, за счет выполнения операции доступа к диску и обработки данных в одной системе сервер может осуществить поиск и обрабатывать запросы быстрее, чем если бы эти запросы обрабатывались на рабочей станции. Прикладные программы баз данных клиент-сервера поддерживаются программными продуктами: - NetWare Btrieve- программой управления записями с индексацией по ключу (выполняется на сервере); - NetWare SQL - ядром реляционных баз данных, предназначенным для обеспечения системы защиты и целостности данных. Службы баз данных NetWare Btrieve и NetWare SQL фирмы Novell позволяют разработчикам создавать надежные прикладные программы баз данных без необходимости написания собственных программ управления записями, что обеспечивает удобный перенос прикладных программ в среду клиент-сервера. В настоящее время разработаны десятки тысяч прикладных автономных и многозадачных программ, ориентированных на клиента версий NetWare Btrieve, NetWare SQL, которые могут быть использованы организациями, создающими или имеющими сеть ЭВМ. Более того, версии NetWare Btrieve и NetWare SQL фирмы Novell для клиентов имеют согласованные API, что упрощает перенос программ из среды одного клиента в среду другого. | |||
Файл-сервер |
Рабочая станция |
a) Типовая среда обработки запросов в сетях ЭВМ.
б) Распределенная среда обработки запросов в сетях ЭВМ.
Рис. 4.11. (а,б).Технологии обработки запросов по базовым вариантам
По степени изменчивости все базы данных (БД) можно разделить на два класса:
А - условно-постоянные (в основном для справочных систем);
Б - сильно динамичные (для банковских, биржевых систем и т.п.).
Для ведения баз данных первого и второго классов используются системы управления базами данных (СУБД), которые в значительной степени отличаются друг от друга как по функциональным возможностям, так и по эксплуатационным характеристикам.
Например,
- для условно-постоянных БД наиболее важными показателями являются показатели скорости отработки запросов и скорости формирования выходных отчетов по БД, а такие показатели, как скорость отработки транзакций и контроль целостности БД при отработке транзакций не столь критичны;
- для сильно -динамичных БД, на первый план выходят такие показатели, как скорость отработки транзакций, возможность контроля целостности, скорость формирования отчетов, согласованность по чтению и транзакциям. Менее критичны здесь скорости отработки запросов.
Поэтому любая СУБД не может одинаково успешно применяться при работе с БД разных классов. Такие системы, как CLIPPER, FOXPRO ориентированы на первый класс БД-(А), и здесь имеются неплохие результаты, а такие СУБД ,как Informix, Ingres, SyBase создавались для второго класса-(Б).
Исходя из вышесказанного напрашивается вывод: найти "золотую середину", которая удовлетворяла бы требованиям обоих классов (А) и (Б). Решением этой противоречивой задачи является использование дифференциальной организации файлов базы данных, или дифференциальных файлов (ДФ).
В последнее время разработчики СУБД ведущих фирм подошли к использованию идеи ДФ. Причинами явились следующие факты:
- значительно расширился класс решаемых на IBM PC задач, так, что термин "персональный компьютер" уже не соответствует действительности;
- широкое распространение локальных вычислительных систем (ЛВС);
- разработка многопользовательских и многозадачных систем;
- стремительное развитие технической базы ЭВМ (в большей степени дисковой памяти).
Остановимся на сути ДФ применительно к БД в ЛВС. Реализация идеи ЛВС в различных СУБД значительно отличается.
Идея ДФ включает три положения:
- основной файл БД остается неизменным при любых обновлениях базы данных, т.е., любые изменения БД последовательно накапливаются в специальном файле изменений (не путать с журналом транзакций) - ДФ;
- никакие индексы для него не создаются и не поддерживаются.
Когда ДФ достигнет значительных размеров (примерно 25-40% от размеров БД), администратор вносит все изменения в основной файл БД в удобный момент времени в пакетном режиме.
В качестве примера возьмем сравнение книги, где наблюдаются опечатки в страницах и, базы данных с ДФ. Нет необходимости переиздания книги из-за нескольких опечаток или незначительных изменений. Если это количество имеет тенденцию к значительному росту и достигло предельного значения, то становятся оправданными затраты на переиздание книги, куда должны быть включены все накопленные изменения.
Достоинства ДФ относятся к обеспечению высокой надежности, целостности БД и скорости отработки транзакций.
Вопрос, какие скорости отработки транзакций можно обеспечить при использовании ДФ, является довольно важным. Очевидно, что скорость отработки транзакций при такой организации БД возрастет в десятки раз. При этом сервер базы данных практически напоминает обычный файл-сервер.
Что касается индексов, то проблемы их поддержания не существует (скорости добавления, удаления и модификации записей БД находятся на самом высоком уровне). Внесение добавлений в БД не отличается от добавлений в обычный последовательный файл. Время обновления записей БД не зависит ни от размеров БД, ни от длины ключей, ни от их числа. Временные затраты на блокировку (как одно из узких мест для БД и ЛВС) сведены к минимуму.
Для того, чтобы обеспечить согласованность данных по чтению нет необходимости блокировать целиком таблицу, что имеет место в ряде СУБД, т.е., когда запрос (или формируемый отчет) начинает выполняться, СУБД "запоминает" старший адрес в ДФ (моментальный снимок). При этом пользователь, инициализирующий свой запрос, не обязан ждать "своего момента". Он "не видит" никого из пользователей и получает снимок БД именно в этот момент времени. Далее, по мере выполнения запроса (даже очень быстрого) часть записей-целей могла быть или изменена или удалена. Это отразится только на старших адресах ДФ, а поэтому СУБД просто проигнорирует любые изменения данных, случившиеся после начала выполнения запроса. Гарантируется корректировка сложных и длительных запросов к БД, т.е. обеспечение согласованности по чтению и транзакциям.
Становится интересным вопрос, как в этом случае ведется поиск в БД. В этом случае по ассоциатору находится множество записей-целей: число и список их адресов в основной БД, после чего производится считывание "ассоциатора" ДФ и производится корректировка этого списка. За счет этой корректировки время поиска увеличивается, причем величина этого увеличения зависит от размеров ДФ. Своевременность обновления БД должна быть в компетенции администратора БД. Чтобы исключить существенные издержки, связанные с ДФ, можно накапливать изменения БД для их пакетной обработки и при поиске ДФ не учитывать. В ряде систем, таких как банковские, допускается потеря некоторой точности в период между циклами обновления - "контролируемое запаздывание".
Помимо всего прочего использование ДФ обеспечивает:
- возможность администратору восстанавливать случайно удаленные записи;
- возможность (при необходимости) хранить индексные файлы на самих рабочих станциях;
- возможность создания распределенных БД;
- одновременное выполнение транзакций.
Непротиворечивость данных может обеспечиваться механизмом захвата на уровне записи - откат транзакций любой доступной вложенности.
Научно-методический центр © 2009 |
|