Опубликован: 11.03.2009 | Уровень: специалист | Доступ: платный
Лекция 1:

Архитектура и принципы распределенного подхода. Требования и критерии построения информационных систем на базе распределенных баз данных (РБД)

< Введение  || Лекция 1: 12 || Лекция 2 >
Аннотация: Лекция посвящена теме распределенных баз данных. В теоретической части дается определение распределенной базы данных, приводится ее архитектура, принципы и критерии, использующиеся при построении РБД, типы РБД и ряд свойств. А также, рассматриваются практические задания по теме.

Под распределенной (Distributed DataBase - DDB) обычно понимают базу данных, декомпозированную и фрагментированную на несколько узлов вычислительной сети, с возможным управлением различными СУБД.

РБД должна обладать (требования):

  1. Локальными и глобальными(распределенными) средствами доступа к данным(СУБД).
  2. Единообразной логикой прикладных программ во всех АРМах сети.
  3. Малым временем реакции на запросы пользователей
  4. Надежностью, исключающей разрушения целостности системы в случае выхода из строя ее отдельных компонент(узлов)
  5. Открытостью, позволяющей наращивать объем локальных БД и добавлять новые АРМ
  6. Развитой системой управления резервным копированием и восстановления данных на случай сбоев
  7. Защищенностью, следящей за соблюдением привилегий доступа к данным
  8. Высокой эффективностью, за счет выбора оптимальных алгоритмов использования сетевых ресурсов
  9. Развитым репликационным механизмом, позволяющим размещать обновленные копии данных в сети оптимальным образом.

Принципы построения РБД.

  1. Минимизация интенсивности обмена данными (сетевого трафика)
  2. Оптимальным размещением серверных и клиентских приложений в сети
  3. Декомпозиция данных на часто и редко используемые сегменты (для правильной настройки репликации - размещение наиболее часто используемых данных на АРМ конечных пользователей)
  4. Периодическое сохранение копий данных и выполнение действий по поддержке целостности распределенной информационной системы.

Критерии построения РБД.

  1. Всесторонний анализ информационных потребностей предметной области с выявлением объемов хранимых данных, их сложности, достоверности, взаимосвязанности.
  2. Моделирование предполагаемого сетевого трафика при работе РБД с различными моделями репликации данных.
  3. Кластеризация элементов данных и программ их обработки. Цель- добиться максимальной автономности и слабосвязанности кластеров.
  4. Привязка кластеров данных к вероятным пользователям или АРМ.
  5. Поддержка эталонной копии данных и ограничение репликационного механизма
  6. Разработка и реализация правил приведения локальных и центральной БД в непротиворечивое состояние.

Распределенные архитектуры БД принято подразделять по типам на

  • Системы недублирующего разбиения (при большом объеме часто меняющихся данных)
  • Системы частичного дублирования (при небольшом объеме часто меняющихся данных)
  • Системы полного дублирования (при небольшом объеме редко меняющихся данных)

В заключении сформулируем ряд свойств, которым по К. Дейту1К. Дж. Дейт Введение в системы баз данных, 8-е издание.: Пер. с англю - М.: Издательский дом "Вильямс", 2005.-1328с.: ил. должна удовлетворять РБД:

  • Локальная автономия

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

  • Независимость узлов

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

  • Непрерывные операции

    Это качество можно трактовать как возможность непрерывного доступа к данным (известное "24 часа в сутки, семь дней в неделю") в рамках DDB вне зависимости от их расположения и вне зависимости от операций, выполняемых на локальных узлах. Это качество можно выразить лозунгом "данные доступны всегда, а операции над ними выполняются непрерывно".

  • Прозрачность расположения

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

  • Прозрачная фрагментация

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

  • Прозрачное тиражирование

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

  • Обработка распределенных запросов

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

  • Обработка распределенных транзакций

    Это качество DDB можно трактовать как возможность выполнения операций обновления распределенной базы данных ( INSERT, UPDATE, DELETE ), не разрушающее целостность и согласованность данных. Эта цель достигается применением двухфазового или двухфазного протокола фиксации транзакций (two-phase commit protocol), ставшего фактическим стандартом обработки распределенных транзакций. Его применение гарантирует согласованное изменение данных на нескольких узлах в рамках распределенной (или, как ее еще называют, глобальной) транзакции.

  • Прозрачность сети

    Доступ к любым базам данных может осуществляться по сети. Спектр поддерживаемых конкретной СУБД сетевых протоколов не должен быть ограничением системы с распределенными базами данных. Данное качество формулируется максимально широко - в распределенной системе возможны любые сетевые протоколы.

  • Независимость от оборудования

    Это свойство означает, что в качестве узлов распределенной системы могут выступать компьютеры любых моделей и производителей - от мэйнфреймов до "персоналок".

  • Независимость от операционных систем

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

  • Независимость от систем управления

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

< Введение  || Лекция 1: 12 || Лекция 2 >
Александра Каева
Александра Каева
Светлана Токаревская
Светлана Токаревская

Добрый день! Скажите пожалуйста, так и задумано, что в каждой лекции приложен один и тот же приктикум?

Марина Бурлуцкая
Марина Бурлуцкая
Россия, Москва
Роман Соланов
Роман Соланов
Россия, Москва