Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LEKTsII_BD_PR_2014_Ch2_s_soderzhaniem.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.09 Mб
Скачать

1.5.3.3 Схемы владения данными

Владение данными определяет, какому из сайтов будет представлена привилегия обновления данных. Основными типами схем владения являются варианты:

«ведущий - ведомый»,

«рабочий поток»,

«повсеместное обновление».

1. При организации владения данными по схеме «ведущий - ведомый» асинхронно реплицируемые данные принадлежат одному из сайтов, называемому ведущим или первичным, и могут обновляться только на нем. Здесь можно привести аналогию между издателем и подписчиками. Издатель (ведущий сайт) публикует свои (обновленные) данные. Все остальные сайты (подписчики) только лишь подписываются на эти данные, принадлежащие ведущему сайту, т.е. имеют собственные локальные копии, доступные им только для чтения.

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

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

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

Типичным примером использования схемы «рабочий поток» является система обработки запросов, в которой работа с каждым заказом выполняется в несколько этапов, например, оформление заказа, подготовка счета (в отделении компании), выписка счета (в центральном офисе компании) и т.д. (рис. 1.5.3.1).

Рис. 1.5.3.1. Схема владения «рабочий поток»

3. Схема владения «повсеместное обновление» создает равноправную среду, в которой множество сайтов имеют одинаковые права на обновление реплицируемых данных. В результате локальные сайты получают возможность работать автономно даже в тех случаях, когда другие сайты недоступны.

Однако, разделение права владения может вызвать возникновение в системе конфликтов, поэтому служба репликации в этой схеме должна использовать тот или иной метод выявления и разрешения конфликтов.

1.5.3.4 Сохранение целостности транзакций

Первые попытки реализации механизма репликации по самой свой сути не предусматривали сохранения целостности (т.е. корректности и завершенности) транзакций. Данные копировались без сохранения свойства атомарности (т.е. неделимости) транзакций, что потенциально могло привести к утрате целостности распределенных данных (или РБД). Такая ситуация проиллюстрирована на рис. 1.5.3.4.1.

Рис. 1.5.3.4.1. Репликация транзакций:

а) без соблюдения свойства атомарности транзакций;

б) с соблюдением свойства атомарности транзакций.

В данном случае транзакция, состоящая на исходном сайте из нескольких операций обновления данных в различных таблицах (А, В, С), в процессе репликации преобразовалась в серию отдельных (трёх) транзакций, каждая из которых обновляла данные в одной из таблиц. Если часть этих транзакций на целевом сайте завершилась успешно (первая и вторая), а остальная часть (третья транзакция) – нет, то согласованность (целостность) информации в двух базах данных утрачивалась (рис. 1.5.3.4.1,а).

В противоположность такому варианту, на рис. 1.5.3.4.1,б показан пример репликации с сохранением согласованности данных и, следовательно, целостности транзакции.

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