Similar presentations:
Архитектура систем баз данных
1. Архитектура систем баз данных
Основные концепции2. Определение архитектуры
Архитектура – это совокупность существенных решений, касающихся- организации программной системы;
- выбора структурных элементов, составляющих систему и их
интерфейсов;
- поведения этих элементов, определенного в процессе взаимодействия
с другими элементами;
- составления из этих структурных и поведенческих элементов
прогрессивно больших систем;
- архитектурного стиля, определяющего организацию системы, её
элементы и их интерфейсы, их взаимодействия и способ соединения.
Классическое определение (Буч, Рембо, Джекотсон)
3. Виды архитектур баз данных
Централизованная архитектураДецентрализованная архитектура
Компоненты системы базы данных
Компоненты системы базы данных
располагаются в единой среде
располагаются в разных средах (ПК)
(ПК) и исполняются внутри одной
и исполняются внутри различных
программы
программ
Реализует режим работы системы
многопользовательский с
параллельным доступом к БД
однопользовательский
с централизованной БД
(системы с распределенной обработкой)
с распределенной БД
(системы распределенных баз данных)
Database
Computer
Computer
Computer
Computer
Database
Database
Computer
Database
Computer
4. Технология «клиент-сервер»
Реализация децентрализованной архитектуры основанана технологии «клиент-сервер»
Суть технологии «клиент-сервер»
Вычислительный
процесс
запрос
1-й
Клиент
процесс
2-й
процесс Сервер
результат
5. Технология «клиент-сервер» в БД
Реализация технологии «клиент-сервер» в системах баз данныхсостоит в разделении функций, выполняемых системой баз данных,
и размещении их на клиентской либо серверной части:
- функции ввода и отображения данных (Presentation logic)
- функции решения прикладной задачи (Business logic)
- функции реализации модели данных (Database logic)
- функции управления ресурсами (Database Manager system)
- функции связи (Service function)
6. Модели архитектур баз данных
МодельМодель
удаленного Модель сервера БД Модель
и модель активного сервера
файлового доступа
сервера БД
сервера
приложений
Модели архитектур баз данных
Presentation Business
logic
logic
Database
logic
Database
manager
Распределенное
представление
клиент
сервер
Удаленное
представление
клиент
сервер
Распределенная
бизнес-логика
клиент
сервер
Удаленный
доступ к данным
клиент
сервер
Удаленное
управление
клиент
сервер
Гибридная схема
клиент
сервер
7. Характеристика моделей
Модель файлового сервераСервер
Клиент
Presentation Logic
Business Logic
Database Logic
БМД
Database Manager
System
Service Functions
СУФ
БД
Достоинства: разделение монопольного процесса на 2 процесса
Основные недостатки:
1. Большая нагрузка на сеть;
2. Слабая защита данных.
8. Характеристика моделей
Модель удаленного доступа к даннымСервер
Клиент
Presentation Logic
SQL - запрос
Business Logic
Service Functions
Database Manager
System
Результат
запроса
Достоинства:
1. Разгрузка сетевого трафика;
2. Повышение производительности
Основные недостатки:
1. Дублирование кода приложения;
2. Пассивная роль сервера.
Database Logic
БМД
БД
9. Характеристика моделей
Модель сервера баз данныхСервер
Клиент
Presentation Logic
Вызов
процедур
Service Functions
Business Logic
ХП
Database Logic
Тр
Database Manager
System
БМД
Результат
процедур
БД
Достоинства:
1. Технологичность разработки программного обеспечения;
2. Высокий уровень защиты базы данных из-за применения ХП
Основные недостатки:
1. Большая нагрузка на сервер при большом числе клиентов;
2. Сложности в проектировании и планировании разработки системы
10. Характеристика моделей
Модель сервера приложенийСервер приложения
Клиент
Presentation
Logic
Service
Functions
Вызов
процедур
Вызов
функции
Business
Logic
Результат
функции
Сервер БД
Database Logic
Database Manager
Результат System
процедур
ХП
Тр
БМД
БД
Достоинства:
1. Высокая производительность системы базы данных при большого
количестве клиентов при невысокой стоимости.
2. Более высокая технологичность разработки и сопровождения программного
обеспечения
Основные недостатки:
1. Дополнительные издержки на отладку и тестирование
2. Реализация дополнительных общих функций на сервере приложений
11. Модели серверов баз данных
Модель один-к-одномуОП
Клиент 1
Клиент 2
Клиент 3
Серверный
процесс 1
Серверный
процесс 2
I/O
CPU
Серверный
процесс 3
Недостатки.
1. Ограниченное количество одновременно обслуживаемых
клиентов.
2. Нерациональное использование ресурсов.
БД
12. Модели серверов баз данных
Многопотоковая односерверная модельОП
Серверный
процесс
Клиент 1
поток 1
I/O
Клиент 2
Клиент 3
поток 2
CPU
поток 3
Недостатки.
1. Модель не эффективна для многопроцессорной системы.
БД
13. Модели серверов баз данных
Многопотоковая мультисерверная модельОП
Клиент 1
Серверный процесс 1
поток 1
Клиент 4
Клиент 2
Клиент 3
CPU
поток 2
Серверный процесс 2
поток 1
I/O
CPU
Серверный процесс 3
Поток 1
Клиент 5
I/O
CPU
БД
I/O
поток 2
Недостатки.
1. Снижение производительности при выполнении операций I/O
На базе этой модели строятся архитектуры с распараллеливанием
выполнения запросов
14. Модели серверов баз данных
Выполнение запроса при вертикальном параллелизмеОП
подзапрос
Клиент 1
I/O
Серверный процесс 1
CPU
подзапрос
подзапрос
Серверный процесс 2
Клиент 2
I/O
CPU
БД
подзапрос
подзапрос
Серверный процесс 3
CPU
I/O
Декомпозиция запроса выполняется при условии независимости
полученных подзапросов. Тип серверного процесса здесь – нить (tread).
15. Модели серверов баз данных
Выполнение запроса при гибридном параллелизмеОП
подзапрос 1
Клиент 1
I/O
Серверный процесс 1
CPU
Подзапрос 2
раздел
БД
Подзапрос 3
Серверный процесс 2
Клиент 2
I/O
CPU
раздел
БД
Подзапрос 2
Подзапрос 3
Серверный процесс 3
I/O
CPU
раздел
БД