- •1. Методы распределенной обработки данных
- •1.1. Цели распределенной обработки данных
- •1.3. Архитектура удаленного доступа
- •1.5. Многоуровневые модели. Модель сервера приложений
- •1.6. Физическая модель срод
- •Основные понятия сетевой терминологии
- •2. Распределенные базы данных
- •2.2. Режимы работы с бд
- •2.3. Классификация систем по способам обработки данных
- •2.6. Свойства распределенных баз данных
- •2.7. Функции и архитектура сурбд
- •2.8. Распределенная база данных на примере вуЗа
- •3. Параллельные процессы (или процесс транзакций)
- •3.1. Транзакции
- •Свойства транзакций
- •3.2. Параллелизм операций над бд
- •3.3. Проблемы параллельных процессов
- •3.4. Элементы блокировки.
- •3.5. Расписание транзакций Последовательное исполнение транзакции при использовании блокировок элементов замедляет процесс работы с бд, хотя и работает правильно. Т1: lock a; unlock a;
- •3.6. Модели с блокировками для чтения и записи
- •3.7. Блокировки в Visual FoxPro
- •4. Структурированный язык запросов sql
- •5. Безопасность бд
- •5.3. Целостность данных
- •5.4. Шифрование данных
- •6. Хранилище данных
- •6.1. Концепции хранилища данных
- •6.2. Многомерная модель данных
- •6.4. Интеллектуальный анализ данных
- •7. Базы данных в Интернете
- •7.1. Язык html
- •Гипертекстовые ссылки
- •7.3. Средства взаимодействия.
- •8.1. Архитектура сервера
- •8.2. Табличные пространства и файлы данных
2. Распределенные базы данных
2.1. Предпосылки возникновения РБД
Основная задача систем управления распределенными базами данных состоит в
обеспечении средства интеграции локальных баз данных, располагающихся в некоторых узлах вычислительной сети, с тем, чтобы пользователь, работающий в любом узле сети, имел доступ ко всем этим базам данных как к единой базе данных.
При этом должны обеспечиваться:
• простота использования системы;
• возможности автономного функционирования при нарушениях связности сети или при административных потребностях;
• высокая степень эффективности.
Фундаментальный принцип. Для пользователя распределенная система должна выглядеть точно так же, как нераспределенная система.
Иначе говоря, работу пользователей в распределенной системе следует организовать таким же образом, как если бы она не была распределенной. Все связанные с распределенными системами проблемы являются (или должны быть) внутренними и должны возникать только на внутреннем уровне или уровне разработки, а не на внешнем уровне или на уровне пользователей.
Возникновением РБД обусловлены двумя противоположными тенденциями обработки данных: интеграцией и децентрализацией. Интеграция обеспечивает единый взгляд на данные, централизацию управления и ведения баз данных. Децентрализация позволяет приблизить хранение данных к местам их возникновения или обработки, ускоряет и удешевляет обработку.
Под распределенной (Distributed DataBase - DDB) обычно понимают базу данных, декомпозированную и фрагментированную на несколько узлов вычислительной сети, с возможным управлением различными СУБД.
2.2. Режимы работы с бд
На рис.2.1 приведены режимы работы с базой данных при удаленном доступе. Параллельный доступ к одной БД нескольких пользователей в том случае, если БД расположена на одной машине, соответствует режиму распределённого доступа к централизованной БД. (Такие системы называются системами распределённой обработки данных).
Рис.2.1. Режимы работы с БД
Если же БД распределена по нескольким компьютерам, расположенным в сети, и к ней возможен параллельный доступ нескольких пользователей, то мы имеем дело с параллельным доступом к распределённой БД. Подобные системы называются системами распределения баз данных. В 90-х годах наметили переход от отдельных mainframe – систем к открытым распределённым системам. На первых порах при использовании модели «клиент-сервер» пользовательская программа не разделялась на части, она выполнялась некоторым монопольным блоком. Но при монопольном исполнении используются ресурсы только одного компьютера, а остальные компьютеры в сети рассматриваются как терминалы. Но теперь в отличие от эпохи майнфреймов при распределённой обработке используется архитектура «клиент-сервер».
РБД представляет собой базу данных, отдельные части которой размещены (возможно, с дублированием) на нескольких ЭВМ сети. 60-е - 70-е – 80-е гг. - появление и развитие централизованных вычислительных систем. 80-90 – появились распределённые системы. Широко используемые ранее в 60-70-х годах иерархические и сетевые модели данных плохо приспособлены для организации РБД. Так как там требуется использование явных адресных указателей связей между данными и, кроме того - использование процедурного языка манипулирования данными (ЯМД), что ведёт к увеличению периодических сообщений по ЛВС. 80-90г. - используются реляционные базы данных, которые не требуют поддержки явных адресных указателей, наличие непроцедурного языка даёт возможность упростить формулировку сложных запросов. При проектировании РБД обязательно выполняется фрагментация данных – разбиение исходного объекта глобального типа на отдельные части и размещение их на разных ЭВМ. Для получения информации о размещении данных по сети вводится специальный словарь-справочник данных (ССД). Фрагментация может быть горизонтальной (a, b) или вертикальной (1,2 - 3,4), см. рис.2.2.
Рис.2.2. Фрагментация данных
При проектировании РБД выдвигается ряд требований: быстрая обработка запросов, безопасность, секретность, логическая и физическая независимость данных, прозрачность.
Эти требования означают, что пользователи не замечают распределенность данных, что при одновременной модификации одних и тех же данных разными пользователями сохраняется целостность данных. А также понимается независимость пользователей и ПП от типа ЛВС и применяемого сетевого программного обеспечения. Пользователь не должен замечать, что его запрос обрабатывается, возможно, на нескольких ЭВМ.
Существуют понятия системы распределенных баз данных (СРБД) и системы распределения обработки данных (СРОД). В СРБД базы данных распределены между несколькими (возможно, территориально разобщенными) ЭВМ. В СРОД возможен параллельный доступ нескольких пользователей к централизованной базе данных. Основной целью СРБД является обеспечение управляемого доступа и независимого обращения к данным, распределённым в сети ЭВМ. Под управляемым доступом понимается степень безопасности, необходимая для защиты данных от неавторизованного доступа. Независимость обращения или разделимость, позволяет пользователям получить доступ к данным через различные, подчас значительно удалённые вычислительные средства. Сеть ЭВМ представляет совокупность неоднородных вычислительных средств, связанных между собой высокоскоростными каналами связи.
Технологические проблемы в РБД делят на 2 категории: 1. проблемы проектирования; 2. проблемы реализации, затрагивающие функционирование распределённой системы.
Факторы, стимулирующие развитие распределённой обработки данных. • Снижение стоимости процессора (мини ЭВМ); • Повышение квалификации конечного пользователя; • Неудовлетворённость пользователя работой централизованных групп; • Творчество пользователей; • Высокая стоимость телефонных каналов; • Теледоступ к базам данных; • Развитие сетевого программного обеспечения; • Секретность. В распределённых системах легче обеспечить секретность, поскольку в них не складываются, «все яйца в одну корзину»; • Перегрузка центральных процессоров.
РБД должна обладать (требования):
- Локальными и глобальными(распределенными) средствами доступа к данным(СУБД).
- Единообразной логикой прикладных программ во всех АРМах сети.
- Малым временем реакции на запросы пользователей
- Надежностью, исключающей разрушения целостности системы в случае выхода из строя ее отдельных компонент(узлов)
- Открытостью, позволяющей наращивать объем локальных БД и добавлять новые АРМ
- Развитой системой backup-пирования и восстановления данных на случай сбоев
- Защищенностью, следящей за соблюдением привилегий доступа к данным
- Высокой эффективностью, за счет выбора оптимальных алгоритмов использования сетевых ресурсов
- Развитым репликационным механизмом, позволяющим размещать обновленные копии данных в сети оптимальным образом.
- Минимизация интенсивности обмена данными (сетевого трафика)
- Оптимальным размещением серверных и клиентских приложений в сети
- Декомпозиция данных на часто и редко используемые сегменты (для правильной настройки репликации - размещение наиболее часто используемых данных на АРМ конечных пользователей)
- Периодическое сохранение копий данных и выполнение действий по поддержке целостности распределенной информационной системы.
Критерии построения РБД.
-
Всесторонний анализ информационных потребностей предметной области с выявлением объемов хранимых данных их сложности, достоверности, взаимосвязанности.
-
Моделирование предполагаемого сетевого трафика при работе РБД с различными моделями репликации данных.
-
Кластеризация элементов данных и программ их обработки. Цель- добиться максимальной автономности и слабосвязанности кластеров.
-
Привязка кластеров данных к вероятным пользователям или АРМ.
-
Поддержка эталонной копии данных и ограничение репликационного механизма
-
Разработка и реализация правил приведения локальных и центральной БД в непротиворечивое состояние.