- •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.1.2. Основные концепции распределенной обработки данных
Очень важно понимать различия, существующие между распределенными СУБД и распределенной обработкой данных (РОД).
РОД – обработка с использованием централизованной базы данных, доступ к которой может осуществляться с различных компьютеров сети (клиент-сервер).
Ключевым моментом в определении РБД (§1.1.1) является то, что система (СУРБД) работает с данными, физически распределенными в сети. Если же данные хранятся централизованно, то даже в том случае, когда доступ к ним (данным) обеспечивается от любого пользователя сети, такая система просто поддерживает распределенную обработку данных (РОД), но не может рассматриваться, как распределенная СУБД. Пример топологии системы с РОД приведен на рис. 1.2
Рис. 1.2. Топология системы с РОД
1.1.3. Основные концепции параллельных субд
Следует четко понимать различия, существующие между распределенными и параллельными СУБД.
Параллельная СУБД (ПСУБД) – это система управления базами данных, функционирующая с использованием нескольких процессоров и устройств жестких дисков. Это позволяет ей распараллеливать выполнение некоторых операций (это возможно по логике операций) с целью повышения общей производительности обработки.
Появление ПСУБД было вызвано тем, что системы с одним процессором оказались неспособны удовлетворять растущие требования к надежности, производительности и масштабируемости обработки данных. Эффективной и экономически обоснованной альтернативой однопроцессорным СУБД стали ПСУБД, функционирующие одновременно на нескольких процессорах. Применение параллельных СУБД позволяет объединить несколько маломощных ЭВМ для получения того же самого уровня производительности, что и в случае одной, но более мощной ЭВМ, с дополнительным выигрышем в масштабируемости и надежности системы, по сравнению с однопроцессорной СУБД.
Для представления нескольким процессорам совместного доступа к одной и той же БД ПСУБД должна обеспечивать управление совместным доступом к ресурсам. Какие именно ресурсы разделяются и как это разделение реализовано на практике, непосредственно влияет на показатели производительности и масштабируемости создаваемой системы, что в свою очередь определяет пригодность конкретной СУБД к условиям заданной вычислительной среды и требованиям приложений. Можно выделить три основных типа архитектуры ПСУБД. К ним относятся:
Системы с разделением памяти;
Системы с разделением дисков;
Системы без разделения.
1.1.3.1. Системы с разделением памяти (срп)
СРП состоят из тесно связанных между собой компонентов, в число которых входит несколько процессоров, разделяющих общую системную память. Эта архитектура популярна и применяется для разных вычислительных платформ (например, группы персональных рабочих станций) и обеспечивает быстрый доступ к данным для процессоров, число которых меньше 64. Эту систему еще называют симметричной многопроцессорной обработкой (СМПО).
Рис. 1.3. Архитектура системы с параллельной обработкой с разделением памяти
1.1.3.2. Система без разделения (сбр)
Эту архитектуру иначе называют массовой параллельной обработкой. Используют схему (рис. 1.4), в которой каждый процессор, являющийся частью системы, имеет собственную оперативную и дисковую память. База данных распределена между всеми дисковыми устройствами, подключенными к отдельным вычислительным подсистемам. В результате этого все данные прозрачно доступны пользователям каждой из этих подсистем. Данная архитектура обеспечивает более высокий уровень масштабируемости, чем системы с разделением памяти (СРП), и позволяет легко организовать поддержки работы большого количества процессоров. Однако оптимальной производительности удается достичь только в том случае, если требуемые данные хранятся локально. Следует отметить, что СБР в некоторых случаях относят к распределенным СУБД, однако в параллельных системах (в том числе и СБР) размещение данных диктуется исключительно соображениями производительности. Более того, узлы (сайты) РСУБД обычно:
Разделены географически;
Независимо администрируются;
Соединены между собой относительно медленными сетевыми соединениями.
Тогда как узлы параллельной СУБД чаще всего располагаются на одном и том же компьютере или в пределах одного и того же сайта.
Рис. 1.4. Архитектура систем с параллельной обработкой без разделения памяти
