SlideShare a Scribd company logo
Проектирование АИС: обзор курса Бабич А.В. [email_address] http:/barhan.poltava.ua/lug/ Полтавский государственный педагогический университет Полтавский политехнический колледж
Лекция  4 Понятие о распределенных ИС
О чем мы узнаем Понятие распределенных ИС  Технологии и модели «Клиент-сервер»  Объектное связывание данных Реплицирование данных
Цель лекции Дать представление о распределенных ИС, принципах их создания и функционирования, разновидностях таких ИС.
Урок 1 Понятие распределенных ИС
Распределенные ИС  понятие распределенных ИС В  неавтоматизированных ИС  информационные ресурсы организаций: разделены и  распределены   логически  (по разным подразделениям и службам) и  физически  (находятся в разных хранилищах, картотеках, помещениях) с другой стороны информационные ресурсы используются частично или в целом и  коллективно  и  индивидуально
Распределенные ИС  понятие распределенных ИС Первоначально при создании БД АИС данные сосредотачивались логически и физически в одном месте –  на одной вычислительной установке Для традиционных «бумажных» информационных технологий это  не совсем естественно
Распределенные ИС  понятие распределенных ИС 70-е годы – общая мощная вычислительная установка и групповая работа пользователей с удаленных терминалов Опыт внедрения АСУ в 70-е-80-е гг.    такая схема не всегда эффективна Осознание существующих проблем привело к мысли о  распределенных системах
Распределенные ИС  понятие распределенных ИС Впервые задачу об исследовании основ и принципов создания и функционирования  распределенных ИС  поставил  К. Дейт  в рамках проекта  System R      System R*  ( конец 70-х-начале 80-х)  В основе распределенных АИС лежат две идеи: много  организационно и физически распределенных пользователей , одновременно работающих с общими данными логически и физически распределенные данные , образующие общую БД
Распределенные ИС  принципы функционирования распределенных ИС К. Дейт сформулировал также  основные принципы  создания и функционирования распределенных БД: прозрачность  расположения данных для пользователя изолированность  пользователей друг от друга синхронизация  и  согласованность  состояния данных в любой момент времени
Распределенные ИС  принципы функционирования распределенных ИС Отсюда следует ряд дополнительных принципов: СУБД, на основе которых создаются распределенные ИС называются  распределенными СУБД  ( БД ) независимость от СУБД независимость от   рреплицирования независимость от коммуникаций независимость от   фрагментации данных независимость от типа ОС непрерывность   функционирования независимость от аппаратуры независимость от   местоположения распределенное управление   транзакциями отсутствие центральной   установки распределенная обработка   запросов локальная автономия
Распределенные ИС  «представления» Важную роль в технологии создания и функционирования распределенных БД играет техника  «представлений»  ( Views) Представление  – сохраняемый в БД авторизованный глобальный запрос на выборку данных Авторизованность  – возможность запуска запроса только конкретным зарегистрированным в системе пользователем Глобальность  – выборка данных может осуществляться со всей БД, в т.ч. из удаленных данных В результате такого запроса для пользователя создается некая  виртуальная БД  со своим перечнем таблиц, связей, т.е. со «своей» схемой и «своими» данными
Распределенные ИС  «представления»  Основная идея техники представлений: Пользова- тель Начало сеанса Глобальный запрос на выборку Работа со «своим» представлением БД Истинная структура БД и истинные данные Новая структура, отобранные и в т.ч. измененные данные
Распределенные ИС  «представления» При  входе  пользователя в распределенную систему ядро СУБД, идентифицируя пользователя,  запускает  запросы его  представления  и формирует ему свое  видение БД , которое пользователь воспринимает как локальную БД Несмотря на простоту и изящность идеи  «представлений»,  ее реализация вызывает серьезные проблемы: например, размещение системного каталога БД  - проблема обновлений
Распределенные ИС  технологии распределенных ИС Практическая реализация распределенных ИС =  отступление  от некоторых принципов создания и функционирования распределенных ИС  В зависимости от того, какой принцип приносится в «жертву», выделяют такие направления в технологиях распределенных ИС: технологии  «Клиент-сервер»  (отсутствие центральной установки) технологии  реплицирования  (непрерывность функционирования) технологии  объектного связывания  (согласованность состояния данных) Реальные распределенные ИС строятся на основе сочетания всех трех технологий
Распределенные ИС  технологии распределенных ИС Техника представлений оказалась очень полезной в сфере  защиты данных Авторизованный характер запросов, формирующих представления,  исключает  возможность доступа, просмотра и изменения данных, не являющихся необходимыми для выполнения должностных обязанностей пользователя
Урок 2 Технологии и модели «Клиент-сервер»
Клиент-серверные технологии  технологии и модели «Клиент-сервер» Системы на основе технологий  «Клиент-сервер»  исторически выросли из первых  централизованных многопользовательских АИС  (70-е годы,  main frame ) В этих технологиях отступают от принципа  отсутствия центральной установки В основе клиент-серверных технологий лежат две идеи: общие для всех пользователей данные на одном или нескольких серверах много пользователей ( клиентов ) на разных вычислительных установках совместно (параллельно и одновременно) обрабатывающих общие данные Т.е. системы, основанные на этих технологиях,  распределены лишь в отношении пользователей , поэтому часто их считают видом  многопользовательских систем
Клиент-серверные технологии  технологии и модели «Клиент-сервер» Основные понятия технологий «Клиент-сервер»: Сервер  – любая система, процесс, компьютер, владеющие каким-либо вычислительным ресурсом (памятью, временем и т.д.) Клиент  - любая система, процесс, компьютер, пользователь,  запрашивающие  у сервера какой-либо ресурс, пользующиеся каким-либо ресурсом или обслуживаемые сервером иным способом. В своем развитии технологии «клиент-сервер» прошли несколько этапов    разные модели технологии. Их реализация основана на разделении структуры СУБД на три компонента: компонент представления  (интерфейс пользователя) прикладной компонент  (запросы, события, правила, процедуры) компонент доступа к данным  (машина данных)
Клиент-серверные технологии  технологии и модели «Клиент-сервер» Четыре модели технологии «Клиент-сервер»: модель  файлового сервера  ( File Server –  FS ) модель  удаленного доступа к данным  ( Remote Data Access –  RDA ) модель  сервера БД  ( Data Base Server –  DBS ) модель  сервера приложений  ( Application Server –  AS )
Клиент-серверные технологии  модель файлового сервера Модель  файлового сервера  - наиболее проста Характеризует не столько способ образования фактографической ИС, сколько  общий способ взаимодействия компьютеров в локальной сети Один из компьютеров выделяется и определяется  файловым сервером , т.е.  общим хранилищем любых данных
Клиент-серверные технологии  модель файлового сервера FS  – модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Прикладной компонент Компонент доступа к данным (ядро СУБД) Компонент доступа к ресурсам  (файловая система ОС) Сервер Запросы на ввод-вывод Файлы
Клиент-серверные технологии  модель файлового сервера В  FS -модели все основные компоненты размещаются на клиентской установке Сервер выполняет чисто  пассивную  функцию Достоинства  FS -модели: простота отсутствие высоких требований к производительности сервера программные компоненты СУБД не распределены Недостатки: высокий сетевой трафик отсутствие механизмов безопасности БД
Клиент-серверные технологии  модель файлового сервера FS- модель – естественное  расширение персональных СУБД для поддержки многопользовательского режима  и в этом плане еще долго будет сохранять свое значение
Клиент-серверные технологии  модель удаленного доступа к данным Модель удаленного доступа к данным  основана на учете специфики размещения и физического манипулирования данными во внешней памяти для реляционных СУБД В  RDA- модели компонент доступа к данным в СУБД –  SQL -сервер  полностью отделен от двух других компонентов и размещается на сервере
Клиент-серверные технологии  модель удаленного доступа к данным RDA - модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Прикладной компонент Компонент доступа к данным  ( SQL -сервер –  машина данных) Сервер SQL Набор данных SQL Набор данных
Клиент-серверные технологии  модель удаленного доступа к данным В файле(ах) БД на сервере находится также и системный каталог БД В числе прочего, в каталог БД помещаются: сведения о зарегистрированных пользователях полномочия пользователей и т.д. На клиентских установках инсталлируются части СУБД, реализующие: интерфейсные функции прикладные функции
Клиент-серверные технологии  модель удаленного доступа к данным Прикладной компонент включает: библиотеки запросов процедуры обработки данных Прикладной компонент полностью размещается и выполняется на клиентской установке –  формирует  SQL -инструкции , направляемые  SQL- серверу
Клиент-серверные технологии  модель удаленного доступа к данным SQL- сервер  – специальный программный компонент ориентированный на интерпретацию  SQL- инструкций высокоскоростное выполнение низкоуровневых операций с данными принимает и координирует  SQL- инструкции от разных клиентов, выполняет их проверяет и обеспечивает выполнение ограничений целостности данных направляет клиентам результаты обработки  SQL- инструкций – наборы данных
Клиент-серверные технологии  модель удаленного доступа к данным Достоинства   RDA- модели: уменьшается загрузка сети SQL -сервер обеспечивает выполнение ограничений целостности и безопасности данных унифицированный интерфейс взаимодействия прикладной части ИС с общими данными в рамках  SQL  такое взаимодействие реализовано через  ODBC -протокол     интероперабельность Недостатки: высокие требования к клиентским установкам Значительный, хоть и меньший, чем в модели  FS , сетевой трафик
Клиент-серверные технологии  модель сервера БД Развитием  RDA -модели стала  модель сервера БД  –  DBS -модель   Сердцевина модели –  механизм хранимых процедур: определенные для конкретной предметной области АИС события, правила и процедуры, описанные средствами  SQL ,  хранятся вместе с данными  на сервере и на нем же выполняются На клиентских установках размещается лишь  интерфейсный элемент  (компонент представления)     снижение требований к клиентской установке
Клиент-серверные технологии  модель сервера БД DBS - модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Компонент доступа к данным  ( SQL -сервер –  машина данных) Сервер Вызов функций Результаты Прикладной компонент
Клиент-серверные технологии  модель сервера БД Достоинства  DBS- модели: снижение трафика сети более активная роль сервера более гибкая «настройка» на предметную область обеспечение согласованного состояния данных надежность хранения и обработки данных эффективная координация коллективной работы пользователей с общими данными  Недостаток  DBS- модели:     возрастают требования к серверу память дисковое пространство быстродействие
Клиент-серверные технологии  модель сервера приложений Чтобы разнести требования к вычислительным ресурсам сервера в отношении быстродействия и памяти по разным машинам, используется  модель сервера приложений  –  AS -модель Суть  AS -модели –  перенос прикладного компонента АИС на специализированный сервер На клиентских машинах – только  интерфейсная часть  системы Вызовы функций обработки данных направляются на  сервер приложений Низкоуровневые операции с данными выполняет  SQL -сервер
Клиент-серверные технологии   модель сервера приложений AS - модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Сервер Вызов функций Результаты Прикладной компонент (сервер приложений) Сервер Компонент доступа  к данным  ( SQL -сервер –  машина данных) SQL Наборы данных
Клиент-серверные технологии  модель сервера приложений Последовательная совокупность операций над данными ( SQL -инструкций), имеющая отдельное смысловое значение, называется  транзакцией Поэтому программный компонент СУБД, размещенный на сервере приложений часто называют  монитором обработки транзакций  (TPM – Transaction Processing Monitor)
Клиент-серверные технологии  модель сервера приложений Монитор транзакций устраняет такие  издержки совместной обработки : потерянные изменения –  две транзакции одновременно изменяют один объект БД «грязные» данные –  одна транзакция изменяет объект, а вторая читает данные из него неповторяющиеся чтения -  одна читает объект, а вторая транзакция изменяет его Для изоляции транзакций и преодоления ситуаций несогласованной обработки данных используют  сериализацию транзакций выполнение транзакций таким образом, чтобы результат их совместного выполнения был эквивалентен результату их последовательного выполнения
Клиент-серверные технологии  модель сервера приложений AS -модель сохраняет сильные стороны  DBS- модели и позволяет  более оптимально построить вычислительную ИС , но повышает трафик сети
Клиент-серверные технологии  модель сервера приложений RDA  – модель с  «толстым»  клиентом DBS  и  AS  – модели с  «тонким»  клиентом RDA  и  DBS  –  двухзвенные (двухуровневые) системы AS  –  трехзвенная (трехуровневая) система На практике часто используют смешанные модели СУБД, основанные на идеологии «Клиент-сервер» - «тяжелые» системы ( Oracle, SyBase, Informix, Ingres) –  стандарт де-факто для корпоративных ИС
Урок 3 Технологии объектного связывания данных
Связывание данных  Унификация взаимодействия прикладных компонентов с ядром ИС для клиент-серверных систем позволила выработать аналогичные решения и для  интеграции разрозненных локальных БД под управлением «настольных» СУБД в сложные децентрализованные гетерогенные распределенные системы  –  объектное связывание данных
Связывание данных  С узкой точки зрения  технология объектного связывания   решает задачу  обеспечения доступа из одной локальной БД , открытой одним пользователем,  к данным в другой локальной БД , возможно находящейся на другой машине и открытой другим пользователем
Связывание данных  Современные «настольные» СУБД поддерживают технологию  «объектного доступа к данным»  -   DAO Технически  DAO  основана на  протоколе  ODBC , который принят как  стандарт для доступа к данным  на  SQL -серверах и к любым данным под управлением реляционных СУБД –  ODBC -драйвера Современные «настольные» СУБД обеспечивают  прямой доступ к объектам внешних БД «своих» форматов  –  связанные объекты   Для доступа к БД наиболее распространенных форматов и файлам электронных таблиц –  ISAM  (Indexes Sequential Access Method)- драйвера
Связывание данных  Принцип доступа к данным через  ODBC: Ядро СУБД Драйвер  ISAM Ядро СУБД Драйвер  ODBC 1- я машина 2 - я машина Доступ к «своим» файлам БД, в т.ч. к таблицам из др., не открытой БД Доступ к БД наиболее распространенных форматов и электронным таблицам Доступ к БД  ODBC Рабочая область прямого доступа к источникам данных  ODBC
Связывание данных  Проблемы  этой   технологии: при больших объемах данных в связанных таблицах  сетевой трафик существенно увеличивается отсутствие надежных  механизмов безопасности данных отсутствие надежных  механизмов обеспечения ограничений целостности
Урок 4 Технологии реплицирования данных
Реплицирование данных  Узкое место клиент-серверных систем и объектного связывания данных –  недостаточно высокая производительность Альтернатива –  реплицирование данных Реплика  – особая копия БД, предназначенная для размещения на другой машине сети с целью автономной работы пользователей с  согласованными  данными ПО СУБД для реализации такого подхода включает  функции тиражирования (реплицирования) БД
Реплицирование данных  Пример организации распределенной ИС с применением реплицирования: Частичная реплика по делопроизводству Финансово-экономический отдел Главная реплика по делопроизводству Частичная реплика по делопроизводству Отдел кадров Руководство организации Частичная реплика по делопроизводству Подразделения
Реплицирование данных  Две проблемы реплицирования: обеспечение согласованного состояния во всех репликах  количества и значений общих данных принцип непрерывного размножения обновлений –  системы реального времени принцип отложенных обновлений –  синхронизация реплик обеспечение согласованного состояния во всех репликах  структуры данных техника главной реплики
Реплицирование данных  Важная особенность технологии – возможность создания  частичных реплик  - БД, содержащих ограниченное подмножество записей полной реплики Реплицирование –  экономное решение проблемы создания распределенных ИС  с элементами централизации На практике часто используют  смешанные технологии
Итоги  Основные принципы  создания и функционирования распределенных БД: прозрачность  расположения данных для пользователя изолированность  пользователей друг от друга синхронизация  и  согласованность  состояния данных в любой момент времени Виды распределенных систем: «Клиент-сервер» объектное связывание данных реплицирование данных Четыре модели технологии «Клиент-сервер»: модель  файлового сервера  ( File Server –  FS ) модель  удаленного доступа к данным  ( Remote Data Access –  RDA ) модель  сервера БД  ( Data Base Server –  DBS ) модель  сервера приложений  ( Application Server –  AS )
Вопросы ? ?
Вопросы Что «распределено» в  распределенных ИС и каковы основные принципы создания и функционирования таких систем ? Поясните суть техники «представлений». Каким основным принципом распределенных ИС пожертвовали в технологии «Клиент-сервер» ? Поясните принципы работы  RDA ,  DBS  и  AS- систем и дайте их сравнительную характеристику. Имеет ли распределенная БД, построенная по технологии объектного связывания каталог БД ? Чем главная реплика отличается от остальных реплик ?
Использованные материалы Гайдамакин Н.А. Автоматизированные информационные системы, базы и банки данных. Вводный курс: Учебное пособие. – М.: Гелиос АРВ, 2002. С. Д. Кузнецов. Проектирование и разработка корпоративных информационных систем. © Центр Информационных Технологий, 1998 С. Д. Кузнецов. Концептуальное проектирование схемы реляционных БД с использованием  UML . © Центр Информационных Технологий,  2000

More Related Content

PPT
раздел 1 введение в базы данных
PPT
Ais Lecture 1
PPTX
Лекция 1
PDF
Modern Trends in Development of Large Distributed Information Systems
PPTX
Управление данными (дополнительно)
PPT
Sql Server Data Services
PPT
базы данных в Delphi
PPTX
04 Архитектура информационных систем. Архитектурные модели и стили
раздел 1 введение в базы данных
Ais Lecture 1
Лекция 1
Modern Trends in Development of Large Distributed Information Systems
Управление данными (дополнительно)
Sql Server Data Services
базы данных в Delphi
04 Архитектура информационных систем. Архитектурные модели и стили

Viewers also liked (6)

PPS
лекция 2
PPT
лекция 1
PDF
PPT
мотивация к сертификации1
PPT
обучение, его стурктура
PDF
Построение территориально распределенных ЦОД
лекция 2
лекция 1
мотивация к сертификации1
обучение, его стурктура
Построение территориально распределенных ЦОД
Ad

Similar to Ais Lecture 4 (20)

PDF
04 - Базы данных. Архитектура СУБД
PPTX
Управление данными (распределенная обработка)
DOC
Konspekt
PPT
1 открытые системы. клиент и сервер
PPT
2 виды и особенности клиент серверных систем с бд
PPT
Базы данных лекция №10
PPT
PPT
лекция 4
PPT
PPSX
Presentation_1370860238383
PPTX
Управление Данными. Лекция 1
PPT
история развития бд1
PPT
лекц2
PDF
High Load 2009 Imdg Presentation
PPT
лекц4
PPTX
разработка бизнес приложений (9)
DOC
001
PDF
СУБД.pdf
PPTX
Интеграция / Integration
04 - Базы данных. Архитектура СУБД
Управление данными (распределенная обработка)
Konspekt
1 открытые системы. клиент и сервер
2 виды и особенности клиент серверных систем с бд
Базы данных лекция №10
лекция 4
Presentation_1370860238383
Управление Данными. Лекция 1
история развития бд1
лекц2
High Load 2009 Imdg Presentation
лекц4
разработка бизнес приложений (9)
001
СУБД.pdf
Интеграция / Integration
Ad

More from Alexander Babich (20)

PDF
Актуальні курси з мого арсеналу (Бабич О.В.)
PDF
M365: Word, Excel, PowerPoint...
PDF
M365: Інші сервіси та застосунки
PDF
M365: OneDrive
PDF
M365: Завершення
PDF
M365: SharePoint
PDF
M365: рекомендації
PDF
M365: Огляд платформи Microsoft365
PDF
M365: Вступ
PDF
M365: Роздаткові матеріали
PPTX
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
PDF
Ви обрали професію програміста
PDF
Змішане навчання в ППФК
PDF
Формування професійних інтересів студентів
PDF
День відкритих дверей' 2021
PDF
Спробуйте Python
PPTX
06. Обучение и сертификация по Azure
PPTX
05.Внедрение Azure
PPTX
04.Службы Azure - подробнее
PPTX
03.Сколько стоит облако
Актуальні курси з мого арсеналу (Бабич О.В.)
M365: Word, Excel, PowerPoint...
M365: Інші сервіси та застосунки
M365: OneDrive
M365: Завершення
M365: SharePoint
M365: рекомендації
M365: Огляд платформи Microsoft365
M365: Вступ
M365: Роздаткові матеріали
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Ви обрали професію програміста
Змішане навчання в ППФК
Формування професійних інтересів студентів
День відкритих дверей' 2021
Спробуйте Python
06. Обучение и сертификация по Azure
05.Внедрение Azure
04.Службы Azure - подробнее
03.Сколько стоит облако

Ais Lecture 4

  • 1. Проектирование АИС: обзор курса Бабич А.В. [email_address] http:/barhan.poltava.ua/lug/ Полтавский государственный педагогический университет Полтавский политехнический колледж
  • 2. Лекция 4 Понятие о распределенных ИС
  • 3. О чем мы узнаем Понятие распределенных ИС Технологии и модели «Клиент-сервер» Объектное связывание данных Реплицирование данных
  • 4. Цель лекции Дать представление о распределенных ИС, принципах их создания и функционирования, разновидностях таких ИС.
  • 5. Урок 1 Понятие распределенных ИС
  • 6. Распределенные ИС понятие распределенных ИС В неавтоматизированных ИС информационные ресурсы организаций: разделены и распределены логически (по разным подразделениям и службам) и физически (находятся в разных хранилищах, картотеках, помещениях) с другой стороны информационные ресурсы используются частично или в целом и коллективно и индивидуально
  • 7. Распределенные ИС понятие распределенных ИС Первоначально при создании БД АИС данные сосредотачивались логически и физически в одном месте – на одной вычислительной установке Для традиционных «бумажных» информационных технологий это не совсем естественно
  • 8. Распределенные ИС понятие распределенных ИС 70-е годы – общая мощная вычислительная установка и групповая работа пользователей с удаленных терминалов Опыт внедрения АСУ в 70-е-80-е гг.  такая схема не всегда эффективна Осознание существующих проблем привело к мысли о распределенных системах
  • 9. Распределенные ИС понятие распределенных ИС Впервые задачу об исследовании основ и принципов создания и функционирования распределенных ИС поставил К. Дейт в рамках проекта System R  System R* ( конец 70-х-начале 80-х) В основе распределенных АИС лежат две идеи: много организационно и физически распределенных пользователей , одновременно работающих с общими данными логически и физически распределенные данные , образующие общую БД
  • 10. Распределенные ИС принципы функционирования распределенных ИС К. Дейт сформулировал также основные принципы создания и функционирования распределенных БД: прозрачность расположения данных для пользователя изолированность пользователей друг от друга синхронизация и согласованность состояния данных в любой момент времени
  • 11. Распределенные ИС принципы функционирования распределенных ИС Отсюда следует ряд дополнительных принципов: СУБД, на основе которых создаются распределенные ИС называются распределенными СУБД ( БД ) независимость от СУБД независимость от рреплицирования независимость от коммуникаций независимость от фрагментации данных независимость от типа ОС непрерывность функционирования независимость от аппаратуры независимость от местоположения распределенное управление транзакциями отсутствие центральной установки распределенная обработка запросов локальная автономия
  • 12. Распределенные ИС «представления» Важную роль в технологии создания и функционирования распределенных БД играет техника «представлений» ( Views) Представление – сохраняемый в БД авторизованный глобальный запрос на выборку данных Авторизованность – возможность запуска запроса только конкретным зарегистрированным в системе пользователем Глобальность – выборка данных может осуществляться со всей БД, в т.ч. из удаленных данных В результате такого запроса для пользователя создается некая виртуальная БД со своим перечнем таблиц, связей, т.е. со «своей» схемой и «своими» данными
  • 13. Распределенные ИС «представления» Основная идея техники представлений: Пользова- тель Начало сеанса Глобальный запрос на выборку Работа со «своим» представлением БД Истинная структура БД и истинные данные Новая структура, отобранные и в т.ч. измененные данные
  • 14. Распределенные ИС «представления» При входе пользователя в распределенную систему ядро СУБД, идентифицируя пользователя, запускает запросы его представления и формирует ему свое видение БД , которое пользователь воспринимает как локальную БД Несмотря на простоту и изящность идеи «представлений», ее реализация вызывает серьезные проблемы: например, размещение системного каталога БД - проблема обновлений
  • 15. Распределенные ИС технологии распределенных ИС Практическая реализация распределенных ИС = отступление от некоторых принципов создания и функционирования распределенных ИС В зависимости от того, какой принцип приносится в «жертву», выделяют такие направления в технологиях распределенных ИС: технологии «Клиент-сервер» (отсутствие центральной установки) технологии реплицирования (непрерывность функционирования) технологии объектного связывания (согласованность состояния данных) Реальные распределенные ИС строятся на основе сочетания всех трех технологий
  • 16. Распределенные ИС технологии распределенных ИС Техника представлений оказалась очень полезной в сфере защиты данных Авторизованный характер запросов, формирующих представления, исключает возможность доступа, просмотра и изменения данных, не являющихся необходимыми для выполнения должностных обязанностей пользователя
  • 17. Урок 2 Технологии и модели «Клиент-сервер»
  • 18. Клиент-серверные технологии технологии и модели «Клиент-сервер» Системы на основе технологий «Клиент-сервер» исторически выросли из первых централизованных многопользовательских АИС (70-е годы, main frame ) В этих технологиях отступают от принципа отсутствия центральной установки В основе клиент-серверных технологий лежат две идеи: общие для всех пользователей данные на одном или нескольких серверах много пользователей ( клиентов ) на разных вычислительных установках совместно (параллельно и одновременно) обрабатывающих общие данные Т.е. системы, основанные на этих технологиях, распределены лишь в отношении пользователей , поэтому часто их считают видом многопользовательских систем
  • 19. Клиент-серверные технологии технологии и модели «Клиент-сервер» Основные понятия технологий «Клиент-сервер»: Сервер – любая система, процесс, компьютер, владеющие каким-либо вычислительным ресурсом (памятью, временем и т.д.) Клиент - любая система, процесс, компьютер, пользователь, запрашивающие у сервера какой-либо ресурс, пользующиеся каким-либо ресурсом или обслуживаемые сервером иным способом. В своем развитии технологии «клиент-сервер» прошли несколько этапов  разные модели технологии. Их реализация основана на разделении структуры СУБД на три компонента: компонент представления (интерфейс пользователя) прикладной компонент (запросы, события, правила, процедуры) компонент доступа к данным (машина данных)
  • 20. Клиент-серверные технологии технологии и модели «Клиент-сервер» Четыре модели технологии «Клиент-сервер»: модель файлового сервера ( File Server – FS ) модель удаленного доступа к данным ( Remote Data Access – RDA ) модель сервера БД ( Data Base Server – DBS ) модель сервера приложений ( Application Server – AS )
  • 21. Клиент-серверные технологии модель файлового сервера Модель файлового сервера - наиболее проста Характеризует не столько способ образования фактографической ИС, сколько общий способ взаимодействия компьютеров в локальной сети Один из компьютеров выделяется и определяется файловым сервером , т.е. общим хранилищем любых данных
  • 22. Клиент-серверные технологии модель файлового сервера FS – модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Прикладной компонент Компонент доступа к данным (ядро СУБД) Компонент доступа к ресурсам (файловая система ОС) Сервер Запросы на ввод-вывод Файлы
  • 23. Клиент-серверные технологии модель файлового сервера В FS -модели все основные компоненты размещаются на клиентской установке Сервер выполняет чисто пассивную функцию Достоинства FS -модели: простота отсутствие высоких требований к производительности сервера программные компоненты СУБД не распределены Недостатки: высокий сетевой трафик отсутствие механизмов безопасности БД
  • 24. Клиент-серверные технологии модель файлового сервера FS- модель – естественное расширение персональных СУБД для поддержки многопользовательского режима и в этом плане еще долго будет сохранять свое значение
  • 25. Клиент-серверные технологии модель удаленного доступа к данным Модель удаленного доступа к данным основана на учете специфики размещения и физического манипулирования данными во внешней памяти для реляционных СУБД В RDA- модели компонент доступа к данным в СУБД – SQL -сервер полностью отделен от двух других компонентов и размещается на сервере
  • 26. Клиент-серверные технологии модель удаленного доступа к данным RDA - модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Прикладной компонент Компонент доступа к данным ( SQL -сервер – машина данных) Сервер SQL Набор данных SQL Набор данных
  • 27. Клиент-серверные технологии модель удаленного доступа к данным В файле(ах) БД на сервере находится также и системный каталог БД В числе прочего, в каталог БД помещаются: сведения о зарегистрированных пользователях полномочия пользователей и т.д. На клиентских установках инсталлируются части СУБД, реализующие: интерфейсные функции прикладные функции
  • 28. Клиент-серверные технологии модель удаленного доступа к данным Прикладной компонент включает: библиотеки запросов процедуры обработки данных Прикладной компонент полностью размещается и выполняется на клиентской установке – формирует SQL -инструкции , направляемые SQL- серверу
  • 29. Клиент-серверные технологии модель удаленного доступа к данным SQL- сервер – специальный программный компонент ориентированный на интерпретацию SQL- инструкций высокоскоростное выполнение низкоуровневых операций с данными принимает и координирует SQL- инструкции от разных клиентов, выполняет их проверяет и обеспечивает выполнение ограничений целостности данных направляет клиентам результаты обработки SQL- инструкций – наборы данных
  • 30. Клиент-серверные технологии модель удаленного доступа к данным Достоинства RDA- модели: уменьшается загрузка сети SQL -сервер обеспечивает выполнение ограничений целостности и безопасности данных унифицированный интерфейс взаимодействия прикладной части ИС с общими данными в рамках SQL такое взаимодействие реализовано через ODBC -протокол  интероперабельность Недостатки: высокие требования к клиентским установкам Значительный, хоть и меньший, чем в модели FS , сетевой трафик
  • 31. Клиент-серверные технологии модель сервера БД Развитием RDA -модели стала модель сервера БД – DBS -модель Сердцевина модели – механизм хранимых процедур: определенные для конкретной предметной области АИС события, правила и процедуры, описанные средствами SQL , хранятся вместе с данными на сервере и на нем же выполняются На клиентских установках размещается лишь интерфейсный элемент (компонент представления)  снижение требований к клиентской установке
  • 32. Клиент-серверные технологии модель сервера БД DBS - модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Компонент доступа к данным ( SQL -сервер – машина данных) Сервер Вызов функций Результаты Прикладной компонент
  • 33. Клиент-серверные технологии модель сервера БД Достоинства DBS- модели: снижение трафика сети более активная роль сервера более гибкая «настройка» на предметную область обеспечение согласованного состояния данных надежность хранения и обработки данных эффективная координация коллективной работы пользователей с общими данными Недостаток DBS- модели: возрастают требования к серверу память дисковое пространство быстродействие
  • 34. Клиент-серверные технологии модель сервера приложений Чтобы разнести требования к вычислительным ресурсам сервера в отношении быстродействия и памяти по разным машинам, используется модель сервера приложений – AS -модель Суть AS -модели – перенос прикладного компонента АИС на специализированный сервер На клиентских машинах – только интерфейсная часть системы Вызовы функций обработки данных направляются на сервер приложений Низкоуровневые операции с данными выполняет SQL -сервер
  • 35. Клиент-серверные технологии модель сервера приложений AS - модель: Клиент 1 Клиент 2 Клиент 3 Компонент представления Сервер Вызов функций Результаты Прикладной компонент (сервер приложений) Сервер Компонент доступа к данным ( SQL -сервер – машина данных) SQL Наборы данных
  • 36. Клиент-серверные технологии модель сервера приложений Последовательная совокупность операций над данными ( SQL -инструкций), имеющая отдельное смысловое значение, называется транзакцией Поэтому программный компонент СУБД, размещенный на сервере приложений часто называют монитором обработки транзакций (TPM – Transaction Processing Monitor)
  • 37. Клиент-серверные технологии модель сервера приложений Монитор транзакций устраняет такие издержки совместной обработки : потерянные изменения – две транзакции одновременно изменяют один объект БД «грязные» данные – одна транзакция изменяет объект, а вторая читает данные из него неповторяющиеся чтения - одна читает объект, а вторая транзакция изменяет его Для изоляции транзакций и преодоления ситуаций несогласованной обработки данных используют сериализацию транзакций выполнение транзакций таким образом, чтобы результат их совместного выполнения был эквивалентен результату их последовательного выполнения
  • 38. Клиент-серверные технологии модель сервера приложений AS -модель сохраняет сильные стороны DBS- модели и позволяет более оптимально построить вычислительную ИС , но повышает трафик сети
  • 39. Клиент-серверные технологии модель сервера приложений RDA – модель с «толстым» клиентом DBS и AS – модели с «тонким» клиентом RDA и DBS – двухзвенные (двухуровневые) системы AS – трехзвенная (трехуровневая) система На практике часто используют смешанные модели СУБД, основанные на идеологии «Клиент-сервер» - «тяжелые» системы ( Oracle, SyBase, Informix, Ingres) – стандарт де-факто для корпоративных ИС
  • 40. Урок 3 Технологии объектного связывания данных
  • 41. Связывание данных Унификация взаимодействия прикладных компонентов с ядром ИС для клиент-серверных систем позволила выработать аналогичные решения и для интеграции разрозненных локальных БД под управлением «настольных» СУБД в сложные децентрализованные гетерогенные распределенные системы – объектное связывание данных
  • 42. Связывание данных С узкой точки зрения технология объектного связывания решает задачу обеспечения доступа из одной локальной БД , открытой одним пользователем, к данным в другой локальной БД , возможно находящейся на другой машине и открытой другим пользователем
  • 43. Связывание данных Современные «настольные» СУБД поддерживают технологию «объектного доступа к данным» - DAO Технически DAO основана на протоколе ODBC , который принят как стандарт для доступа к данным на SQL -серверах и к любым данным под управлением реляционных СУБД – ODBC -драйвера Современные «настольные» СУБД обеспечивают прямой доступ к объектам внешних БД «своих» форматов – связанные объекты Для доступа к БД наиболее распространенных форматов и файлам электронных таблиц – ISAM (Indexes Sequential Access Method)- драйвера
  • 44. Связывание данных Принцип доступа к данным через ODBC: Ядро СУБД Драйвер ISAM Ядро СУБД Драйвер ODBC 1- я машина 2 - я машина Доступ к «своим» файлам БД, в т.ч. к таблицам из др., не открытой БД Доступ к БД наиболее распространенных форматов и электронным таблицам Доступ к БД ODBC Рабочая область прямого доступа к источникам данных ODBC
  • 45. Связывание данных Проблемы этой технологии: при больших объемах данных в связанных таблицах сетевой трафик существенно увеличивается отсутствие надежных механизмов безопасности данных отсутствие надежных механизмов обеспечения ограничений целостности
  • 46. Урок 4 Технологии реплицирования данных
  • 47. Реплицирование данных Узкое место клиент-серверных систем и объектного связывания данных – недостаточно высокая производительность Альтернатива – реплицирование данных Реплика – особая копия БД, предназначенная для размещения на другой машине сети с целью автономной работы пользователей с согласованными данными ПО СУБД для реализации такого подхода включает функции тиражирования (реплицирования) БД
  • 48. Реплицирование данных Пример организации распределенной ИС с применением реплицирования: Частичная реплика по делопроизводству Финансово-экономический отдел Главная реплика по делопроизводству Частичная реплика по делопроизводству Отдел кадров Руководство организации Частичная реплика по делопроизводству Подразделения
  • 49. Реплицирование данных Две проблемы реплицирования: обеспечение согласованного состояния во всех репликах количества и значений общих данных принцип непрерывного размножения обновлений – системы реального времени принцип отложенных обновлений – синхронизация реплик обеспечение согласованного состояния во всех репликах структуры данных техника главной реплики
  • 50. Реплицирование данных Важная особенность технологии – возможность создания частичных реплик - БД, содержащих ограниченное подмножество записей полной реплики Реплицирование – экономное решение проблемы создания распределенных ИС с элементами централизации На практике часто используют смешанные технологии
  • 51. Итоги Основные принципы создания и функционирования распределенных БД: прозрачность расположения данных для пользователя изолированность пользователей друг от друга синхронизация и согласованность состояния данных в любой момент времени Виды распределенных систем: «Клиент-сервер» объектное связывание данных реплицирование данных Четыре модели технологии «Клиент-сервер»: модель файлового сервера ( File Server – FS ) модель удаленного доступа к данным ( Remote Data Access – RDA ) модель сервера БД ( Data Base Server – DBS ) модель сервера приложений ( Application Server – AS )
  • 53. Вопросы Что «распределено» в распределенных ИС и каковы основные принципы создания и функционирования таких систем ? Поясните суть техники «представлений». Каким основным принципом распределенных ИС пожертвовали в технологии «Клиент-сервер» ? Поясните принципы работы RDA , DBS и AS- систем и дайте их сравнительную характеристику. Имеет ли распределенная БД, построенная по технологии объектного связывания каталог БД ? Чем главная реплика отличается от остальных реплик ?
  • 54. Использованные материалы Гайдамакин Н.А. Автоматизированные информационные системы, базы и банки данных. Вводный курс: Учебное пособие. – М.: Гелиос АРВ, 2002. С. Д. Кузнецов. Проектирование и разработка корпоративных информационных систем. © Центр Информационных Технологий, 1998 С. Д. Кузнецов. Концептуальное проектирование схемы реляционных БД с использованием UML . © Центр Информационных Технологий, 2000

Editor's Notes

  • #2: Предлагаемый материал содержит доступную автору (возможно, не исчерпывающую) информацию по поводу проектирования, разработки, сопровождения и реинжиниринга информационных систем. Информация - это самое ценное достижение человечества. Она ценнее, чем алмазы и золото. Информация помогает нам жить. Информационные системы дают нам шанс на то, чтобы выжить. Грубо говоря, "data and knowlegment mining", т.е. добыча данных и знаний является нашей основной задачей. Задачей не русских, не японцев, не американцев, не какой-то конкретной страны, но всего человечества. Мы все непрерывно накапливаем данные и знания, но проблема состоит в том, чтобы все это переварить и полезно использовать. Для этого и предназначены компьютеризованные информационные системы. Они служат нам, чтобы более быстро, более надежно обработать информацию, чтобы люди не тратили рутинное время, чтобы избежать свойственных человеку случайных ошибок, чтобы сэкономить расходы, чтобы сделать жизнь людей более комфортной. Мы просто не можем справиться с поступающей информацией без компьютерной поддержки. Но для этого нужно уметь использовать существующие, а также проектировать, разрабатывать и сопровождать новые информационные системы. Собственно, этому и посвящен настоящий курс.