Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции БД.doc
Скачиваний:
15
Добавлен:
26.11.2018
Размер:
388.1 Кб
Скачать

Распределение базы данных

Соединение

У1 У2

У3 У4

Все таблицы данных распределяются по сети (узлом), где осуществляется их применение. Каналы между узлами – соединения.

Все таблицы данных распределяются по сети (узлом), где осуществляется их применение. Каналы между узлами – соединения.

Все данные в сети делятся на 2 подвида:

  1. Локальные – используются только в своем узле.

  2. Глобальные данные – могут использоваться в любом узле.

Преимущество:

1.уменьшенное время на доступ наиболее часто используемых программ.

2.рассширяются объемы данных, в которых можно иметь доступ.

3.надежность хранения увеличивается

Недостатки:

1.производительность падает.

2.запросы обрабатывать сложнее.

3.управление транзакциями при параллельном доступе усложняется.

4.возникает проблема обновления при терражировании данных.

Все распределенные базы данных делятся на два типа:

  1. Однородные – те базы данных. У которых все локальные данные управляются СУБД одного типа.

  2. Неоднородные – это такие БД, у которых все локальные данные могут управляться СУБД разного типа и могут иметь разные модели данных.

Все узлы в распределенных БД являются автономными, т.е. полная независимость узла от других узлов.

Задачи СУБД:

  1. Выполнение запросов.

  2. Обработка транзакций.

  3. Обнаружение распределенных тупиков.

  4. Восстановление РБД.

Каждая таблица имеет: имя, состоящее из:

1. Полное имя: задается командой CREAT TABL

2. Системное имя (создается при создании автоматически)

  • имя таблицы

  • № узла создания

  • № узла в котором таблица была размещена после создания (родовой узел)

  • имя создателя.

Существует оператор, который позволяет отправить таблицу на любой из узлов сети: MYGRATE TABLE эту таблицу можно найти по локальному каталогу в котором эта таблица была размещена после создания. Когда запрос обращается к таблице, считывается имя и затем считывается адрес, где находится.

Порядок выполнения запросов в бд

Узел, из которого исходит запрос, называется главным. Узлы, из которых исходит запрос, называется дополнительными.

  1. Происходит разбор команды SQL в главном узле. С заменой полных имен таблиц на системные имена

  2. В

    Т2

    главном узле определяется порядок взаимодействия узлов.

  3. Запрос (весь) разбивается на составные части, в каждом из которых будет воспроизводиться в своем узле. Эти части (подзапросы) рассылаются по соответствующим узлам.

  4. На дополнительных узлах происходит проверка прав доступа пользователя, оптимизация запроса в соответствии с имеющимися индексами, происходит комплектация запросов, т.е. генерация машинных кодов.

Архитектура РСУБД

Транзакция

Планировщик

ДТ

ДД

Транзакция

ДТ

ДД

Транзакция

Транзакция

.

.

.

ДТ

Транзакция

.

ДД

Транзакция

Транзакция в РБД может состоять из нескольких мастей – агентов.

Транзакции состоящая из нескольких агентов называются глобальными.

Транзакция, с которой начинается обработка, называется инициирующая.

ДТ – диспетчер транзакции. Фиксирует начало и конец транзакции, передает информацию о четности планировщику.

Планировщик составляет расписание работы транзакции, устанавливает блокировку по чтению БД.

ДД – диспетчер данных. Выполняет команду чтения и записи над данными, результаты этих операций передаю планировщику. Планировщик передает ДТ, а ДТ передает обратно транзакции.