Репликация. Понятие согласованного распределенного набора данных. Варианты репликации. Протокол репликации rowa.
Репликация (тиражирование) данных (Data Replication – DR) – это хранение одних и тех же данных (копий) в нескольких узлах.
Репликацию применяют из соображений производительности, доступности, уменьшения времени доступа и безопасности. Если отдельным узлам придется постоянно получать доступ к удаленно хранящимся данным, то производительность неизбежно снизится. Решение этой задачи – использование репликации данных.
Функции репликации выполняет специальный модуль СУБД – сервер тиражирования данных, называемый репликатором (replicator). Его задача – поддержка идентичности данных в принимающих базах данных (target database) данным в исходной БД.
Основное понятие – понятие согласованного распределенного набора данных (consistent distributed data set – CDDS). Это набор данных, идентичность которого поддерживается репликатором во всех узлах, вовлеченных в процесс тиражирования.
-
CDDS должен подчиняться правилу взаимной непротиворечивости, которое требует, чтобы все копии фрагментов данных были идентичны
Возможны три варианта репликации БД. БД может быть:
-
полностью реплицированной – если копии одного и того же фрагмента данных располагаются на всех узлах сети; все фрагменты реплицированы.
-
частично реплицированной – если копии одного и того же фрагмента данных располагаются на нескольких узлах сети. Большинстов СУРаБД допускают работу именно с частично-реплицированными БД.
-
нереплицированной – каждый фрагмент хранится на отдельном узле. Дублированные фрагменты отсутствуют.
На репликацию влияет несколько факторов:
-
размер БД;
-
частота использования БД;
-
затраты, связанные с синхронизацией транзакций и их частей.
Тиражировать можно:
-
всю БД;
-
избранные объекты БД: таблицы или представления;
-
вертикальные проекции объектов БД: избранные столбцы таблиц и/или представлений;
-
горизонтальные проекции объектов БД: избранные строки таблиц и/или представлений;
-
сочетания наборов 2-4.
Где тиражируют? Основные схемы тиражирования:
-
"Центр – филиалы", изменения в базах данных филиалов переносятся в центральную БД, и/или наоборот;
-
равноправное, несколько БД разделяют общий набор изменяемых и тиражируемых данных;
-
каскадное, изменения в одной БД переносятся в другую БД, откуда в свою очередь в третью БД и т.д.;
-
через шлюзы изменения в БД могут переноситься в БД другой СУБД (неоднородная БД);
-
различные комбинации всех вышеперечисленных схем.
Протоколы репликации
Наиболее известным теоретическим критерием согласованности является критерий полной эквивалентности копий, который требует, чтобы по завершении транзакции все копии логического элемента данных были идентичны.
Типичный протокол тиражирования, обеспечивающий сериализуемость по критерию полной эквивалентности копий, известен под названием ROWA (Read-Once/Write-All – одно чтение, запись во все копии).
Задача протокола тиражирования – отобразить операции доступа к некоторому элементу х на множества операций над физическими копиями x (x1 , x2 ,..., xn).
Протокол ROWA отображает чтение x Read(x) на операцию чтения какой-либо из копий x Read(xi). Из какой именно копии будет производиться чтение, неважно – этот вопрос может решаться из соображений эффективности. Каждая операция записи в логический элемент данных x отображается на множество операций записи во все физические копии x.
Протокол ROWA прост и прямолинеен (достоинство), но он требует доступности всех копий элемента данных, для того чтобы транзакция была завершена (недостатки). Сбой на одном из узлов приведет к блокированию транзакции, что снижает доступность базы данных.
- Понятие распределенной информационной системы. Распределенные базы данных. Принципы создания и функционирования распределенных баз данных.
- Прозрачные свойства распределенных баз данных. Прозрачность фрагментации, местоположения, локального отображения.
- Системы управления распределенными базами данных: понятие, функциональные возможности, типы. Преимущества и недостатки систем управления распределенными базами данных.
- Архитектура клиент-сервер. Основные правила архитектуры клиент-сервер. Модели распределений.
- Модели архитектуры клиент-сервер: rda-модель, dbs-модель, as-модель. Преимущества и недостатки.
- Фрагментация. Основные концепции фрагментации данных. Виды фрагментации.
- Репликация. Понятие согласованного распределенного набора данных. Варианты репликации. Протокол репликации rowa.
- Технологии доступа к данным: odbc, jdbc, ole db, ado, dao, bde.
- Транзакция, ее свойства. Модель транзакции в стандарте sql. Журнализация транзакций.
- Понятие распределенной транзакции. Мониторы обработки транзакций.
- Параллельное выполнение транзакций. Управление параллельным выполнением транзакций. Проблемы и решения по организации управления параллельным выполнением в распределенной среде.
- Механизм блокировок. Виды блокировок. Централизованное блокирование, блокирование первичных копий и распределенное блокирование. Блокировка
- Метки времени
- Оптимистические методы
- Понятие проекта информационной системы, его структура. Экономико-организационные и информационно-технологические принципы проектирования информационных систем.
- 1. Экономико-организационные
- 2. Информационно-технологические
- Жизненный цикл разработки систем. Основные стадии жизненного цикла. Модели жизненного цикла.
- Каноническое проектирование информационных систем. Стадии процесса проектирования информационных систем.
- Состав работ на предпроектных стадиях проектирования системы. Обследование информационной системы. Описание постановки задачи. Техническое задание.
- Состав работ на стадиях технического и рабочего проектирования информационной системы.
- Состав работ на стадиях ввода в действие и сопровождения информационной системы.
- Case-технологии, основные принципы. Этапы создания информационной системы на основе case-технологии. Факторы эффективности case-технологии.
- Case-средства, их классификация. Примеры case-средств и их характеристика.
- Типовое проектирование информационных систем. Классификация, примеры типовых информационных систем и их характеристика.
- Проектирование системы управления в Business Studio.
- 29. Возможности и реализуемые стандарты современного пакета бизнес- моделирования Business Studio.
- 28. Основные задачи администратора базы данных: