- •1. Распределенные базы данных и субд
- •1.1 Основные определения, концепции и классификация распределенных систем
- •1.1.1. Основные концепции распределенных систем с рбд и рсубд
- •1.1.2. Основные концепции распределенной обработки данных
- •1.1.3. Основные концепции параллельных субд
- •1.1.3.1. Системы с разделением памяти (срп)
- •1.1.3.2. Система без разделения (сбр)
- •1.1.3.3. Системы с разделением дисков (срд)
- •1.1.4. Мультибазовые системы
- •1.2 Гомогенные и гетерогенные распределенные субд
- •1.2.1. Преимущества и недостатки распределенных субд
- •1.2.1.1. Преимущества
- •1.2.1.1.1 Отражение структуры организации
- •1.2.1.1.2 Разделяемость и локальная автономность
- •1.2.1.1.3 Повышение доступности данных
- •1.2.1.1.4 Повышение надежности
- •1.2.1.1.5 Экономические выгоды
- •1.2.1.1.6 Модульность системы
- •1.2.1.2.3 Усложнение проблем защиты
- •1.2.1.2.4 Усложнение контроля за целостностью данных
- •1.2.1.2.5 Отсутствие стандартов
- •1.2.1.2.6 Недостаток опыта
- •1.2.1.2.7 Усложнение процедуры разработки базы данных
- •1.3 Функции распределенных субд
- •1.4 Архитектура распределенных субд
- •Глобальная концептуальная схема
- •1.4.2 Схемы фрагментации и распределения
- •1.4.3 Локальные схемы
- •1.4.4 Локальная субд
- •1.4.5 Компонент передачи данных
- •1.4.6 Глобальный системный каталог
- •1.4.7 Распределенная субд
- •1.5 Разработка распределенных реляционных баз данных
- •1.5.1 Распределение данных
- •1.5.2 Фрагментация
- •1.5.2.1 Назначение фрагментации
- •Корректность фрагментации
- •1.5.2.3 Типы фрагментации
- •1.5.3 Репликации.
- •1.5.3.1 Виды репликации
- •1.5.3.2 Функции службы репликации
- •1.5.3.3 Схемы владения данными
- •1.5.3.4 Сохранение целостности транзакций
- •1.5.3.5 Моментальные снимки таблиц
- •1.5.3.6 Триггеры базы данных
- •1.5.3.7 Выявление и разрешение конфликтов
- •1.6 Обеспечение прозрачности
- •1.6.1 Прозрачность распределенности
- •1.6.2 Прозрачность транзакций
- •1.6.2.1 Прозрачность параллельности
- •1.6.2.2 Прозрачность отказов
- •1.6.3 Прозрачность выполнения
- •Прозрачность использования
- •1.6.5 Заключение
- •1.7 Правила распределенных субд
- •1.8 Резюме
- •2 Введение в объектные субд
- •2.1 Специализированные приложения баз данных
- •2.1.1 Автоматизированное проектирование
- •2.1.2 Автоматизированное производство
- •2.1.3 Офисные информационные системы и мультимедиа системы
- •2.1.4 Геоинформационные системы
- •2.1.5 Научные приложения
- •2.2 Недостатки реляционных субд
- •2.3 Основные концепции объектно-ориентированного подхода (ооп).
- •2.3.1 Абстракция, инкапсуляция, сокрытие информации.
- •2.3.2. Объекты и атрибуты
- •2.3.3. Идентификация объекта
- •2.3.4. Методы и сообщения
- •2.3.5. Классы
- •2.3.6. Подклассы, суперклассы и наследование
- •2.3.7. Перегрузка
- •2.3.8. Полиморфизм и динамическое связывание
1.2.1. Преимущества и недостатки распределенных субд
Системы с РБД имеют дополнительные преимущества перед традиционными централизованными системами баз данных. Но эта технология не лишена и некоторых недостатков.
1.2.1.1. Преимущества
1.2.1.1.1 Отражение структуры организации
Некоторые организации (компании) имеют множество подразделений (отделений, офисов и т.д.), которые географически распределены. Вполне логично будет, если используемые этими организациями базы данных будут распределены между отделениями, офисами и т.д. В каждом отделении обычно нужно поддерживать свою базу данных. В подобной базе данных персонал отделения сможет выполнять необходимые ему локальные запросы. В то же время руководству организации (компании) может потребоваться выполнять глобальные запросы, требующие получения доступа к данным, ограниченным во всех существующих отделениях компании.
1.2.1.1.2 Разделяемость и локальная автономность
Географическая распределенность организации может быть отражена в распределении ее данных, причем пользователи одного сайта смогут получить доступ к данным, сохраняемым на других сайтах. Данные могут быть помещены на тот сайт, на котором зарегистрированы пользователи, которые их формируют и/или чаще всего используют. В результате заинтересованные пользователи получают локальный контроль над требуемыми им данными и могут устанавливать или регулировать локальные ограничения на их использование.
Администратор глобальной базы данных отвечает за систему в целом. Как правило, часть этой ответственности делегируется на локальный уровень, благодаря чему администратор БД локального уровня получает возможность управлять локальной СУБД.
1.2.1.1.3 Повышение доступности данных
В централизованных СУБД отказ центрального компьютера вызывает прекращение функционирования всей СУБД. Однако отказ одного из сайтов СУРБД или линии связи между сайтами сделает недоступными лишь некоторые сайты, тогда как вся остальная система в целом сохраняет свою работоспособность. Распределенные СУБД проектируются так, чтобы обеспечивать продолжение функционирования системы, несмотря на подобные отказы. Если выходит из строя один из узлов, система сможет перенаправить запросы к отказавшему узлу в адрес другого сайта.
1.2.1.1.4 Повышение надежности
Если организована в распределенной системе репликация данных, в результате чего данные и их копии будут размещены на более чем одном сайте, то отказ отдельного узла или соединительной линии связи между узлами не приведет к недоступности данных в системе.
1.2.1.1.5 Экономические выгоды
В шестидесятые годы мощность вычислительной установки возрастала пропорционально квадрату стоимости ее оборудования. Поэтому система, стоимость которой была втрое выше стоимости данной, превосходили ее по мощности (обычно) в девять раз. Эта зависимость получила название закона Гроша [1]. Однако в настоящее время считается общепринятым положение, согласно которому намного дешевле собрать из небольших компьютеров систему, мощность которой будет эквивалентна мощности одного большого компьютера. Оказывается, что намного выгоднее устанавливать в подразделениях организации собственные маломощные компьютеры и добавить в сеть новые рабочие станции, чем модернизировать (умощнять) систему с мейнфреймом (центральной ЭВМ).
Второй потенциальный источник экономии имеет место в том случае, когда базы данных географически удалены друг от друга и приложения требуют осуществления доступа к распределенным данным. В этом случае из-за относительно высокой стоимости передаваемых по сети данных (по сравнению со стоимостью их локальной обработки) может оказаться экономически выгодным разделить приложение на соответствующие части и выполнять необходимую обработку на каждом из сайтов локально.
