Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
answers_all_last.doc
Скачиваний:
5
Добавлен:
19.04.2019
Размер:
308.74 Кб
Скачать

9. Технология тиражирования данных

Тиражирование данных – асинхронный перенос изменений объекта исходной БД в БД, принадлежащим различным узлам РИС. Функции тиражирования выполняет специальный модуль СУБД – сервер тиражирования данных (репликатор). Его задача – поддержка идентичности данных принимающей и исходной БД. Принципиальная характеристика тиражирования данных заключается в отказе от физического распределения данных. Суть тиражирования состоит в том, что любая БД всегда является локальной. Данные размещаются локально на том же узле, где они обрабатываются. Реализация технологии тиражирования отвечает на 4 вопроса:

  1. Что тиражировать?

Основное понятие – понятие согласованного распределенного набора данных (СРНД). СРНД – набор данных, идентичность которого поддерживается репликатором на всех узлах, вовлеченных в процесс тиражирования. СРНД может представлять собой:

  1. Всю БД

  2. Избранные объекты БД: таблицы, представления

  3. Вертикальные проекции объектов: избранные столбцы таблиц

  4. Горизонтальные проекции объектов БД: избранные строки таблиц

  5. Сочетание наборов 2)-4)

Согласованность СРНД автоматически поддерживается репликатором и проявляется в том, что:

  1. Любые изменения любой копии СРНД автоматически распределяются на все остальные копии

  2. Внутри СРНД ни одна копия данных не имеет преимущества перед другими копиями

  3. Все объекты, составляющие каждую копию СРНД, имеют одинаковые имена

  4. Все узлы равноправны и могут быть источниками и приемниками изменений

  1. Где тиражировать?

Основные схемы тиражирования:

  1. Центр-филиал: изменение БД филиала переносится в центральную БД и наоборот

  2. Равноправное тиражирование: несколько БД разделяют общий набор изменяемых и тиражируемых данных

  3. Каскадное тиражирование: изменение в одной БД переносится в другую, откуда, в свою очередь, в третью и т.д.

  4. Через шлюзы изменения в БД могут переноситься в БД другой СУБД

  5. Различные комбинации вышеперечисленных схем

Механизмы, регулирующие взаимоотношения между узлами (с т. зр. принимающего узла):

  1. Равный с равным: все изменения, произведенные в СРНД на первом узле попадут на второй узел, и наоборот, при этом выполняется контроль возможных коллизий

  2. Доступ с обнаружением и разрешением конфликтов: изменения с первого узла попадают во второй, производится контроль возможных конфликтов, при этом изменения СРНД на втором узле незаконно игнорируются и передаются на первый узел

  3. Доступ по чтению без предотвращения конфликтов: то же, что и второй механизм, но конфликты не обнаруживаются

  4. Доступ через шлюз: то же, что и третий механизм, но второй узел содержит данные, получаемые через шлюз к БД другой СУБД

  1. Когда тиражировать?

Элементарным изменением, вызывающим реакцию репликатора, является транзакция. Стремясь быть максимально гибким, репликатор предоставляет следующие основные возможности:

  1. Тиражирование начинается после завершения определенного числа транзакций

  2. Тиражирование выполняется через равные промежутки времени или в определенный момент времени

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

  1. Как разрешать конфликт?

Репликатор самостоятельно обнаруживает конфликт (встречное тиражирование) и предоставляет разрешение конфликта либо администратору, либо делает это автоматически. Варианты обнаружения конфликта:

  1. Разрешение конфликта в пользу более раннего или позднего обнаружения

  2. Разрешение конфликта в пользу наивысшего приоритета тиражирования записи

Преимущества технологии тиражирования данных:

  1. Данные всегда расположены там, где они обрабатываются, следовательно, скорость доступа к ним существенно увеличивается

  2. Передача только операций, изменяющих данные, а не всех операций доступа к удаленным данным, к тому же в асинхронном режиме позволяет значительно уменьшить трафик

  3. Никакой продолжительный сбой связи не в состоянии нарушить передачу изменений, т.к. тиражирование предполагает буферизацию потока транзакций и после восстановления связи передача возобновляется с той транзакции, на которой тиражирование было прервано

Недостатки технологии тиражирования данных:

  1. Невозможно полностью исключить конфликты между двумя версиями одной и той же записи (такое может возникнуть, когда два пользователя на разных узлах исправят одну и ту же запись в тот момент, когда изменение из первой базы еще не были перенесены во вторую)

  2. Имеются сильные угрозы целостности распределенной БД

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]