Основные свойства распределенных баз данных
С точки зрения пользователей распределенная база данных выглядит как обычная настольная база данных, компоненты которой могут находиться на различных компьютерах (узлах) локальной сети предприятия.
В идеале для распределенных баз данных должны быть характерны следующие свойства:
· локальная автономия (local autonomy);
· независимость узлов (no reliance on central site);
· непрерывность операций (continuous operation);
· прозрачность расположения (location independence);
· прозрачность фрагментации (fragmentation independence);
· прозрачность тиражирования (replication independence);
· возможность обработки распределенных запросов (distributed query processing);
· возможность обработки распределенных транзакций (distributed transaction processing);
· независимость от оборудования (hardware independence);
· независимость от операционных систем (operationg system independence);
· прозрачность сети (network independence);
· независимость от баз данных (database independence).
Локальная автономия — свойство, означающее, что управление данными на каждом из узлов распределенной системы выполняется локально. База данных, расположенная на одном из узлов, является неотъемлемым компонентом распределенной системы. Будучи фрагментом общего пространства данных, она в то же время функционирует как полноценная локальная база данных, управление которой выполняется локально и независимо от других узлов системы.
Независимость узлов — свойство, означающее, что в идеальной системе все узлы равноправны и независимы, а расположенные на них базы являются равноправными поставщиками данных в общее пространство данных. База данных на каждом из узлов самодостаточна, т. е. она включает в себя полный собственный словарь данных и полностью защищена от несанкционированного доступа.
Непрерывность операций — свойство, которое можно трактовать как возможность непрерывного доступа к данным (24 ч в сутки или семь дней в неделю) в рамках DDB независимо от их расположения и независимо от операций, выполняемых на локальных узлах. Это свойство можно выразить следующим образом: данные доступны всегда, а операции над ними выполняются непрерывно.
Прозрачность расположения — свойство, означающее полную прозрачность расположения данных. Пользователь, обращающийся к DDB, ничего не должен знать о реальном (физическом) размещении данных в узлах информационной системы. Все операции с данными выполняются без учета их местонахождения. Транспортировка запросов к базам данных осуществляется встроенными системными средствами.
Прозрачность фрагментации — свойство, которое трактуется как возможность распределенного размещения данных, логически представляющих собой единое целое. Существует фрагментация двух типов: горизонтальная и вертикальная. Первая означает хранение строк одной таблицы на различных узлах (фактически хранение строк одной логической таблицы в нескольких идентичных физических таблицах на различных узлах), а вторая — распределение столбцов логической таблицы по нескольким узлам.
Прозрачность тиражирования данных (асинхронного в общем случае процесса переноса изменений объектов исходной базы данных в базы, расположенные на других узлах распределенной системы) — свойство, означающее возможность переноса изменений между базами данных средствами, невидимыми пользователю распределенной системы, или, что тиражирование возможно и достигается внутрисистемными средствами.
Возможность обработки распределенных запросов — свойство DDB, которое трактуется как возможность выполнения операций выборки информации из распределенной базы данных, сформулированных в рамках обычного запроса на языке SQL. Это означает, что операцию выборки из DDB можно сформулировать с помощью тех же языковых средств, что и операцию в локальной базе данных.
Возможность обработки распределенных транзакций — свойство DDB, которое можно трактовать как возможность выполнения операций обновления распределенной базы данных (INSERT, UPDATE, DELETE), не разрушая целостность и согласованность данных, что достигается применением двухфазового (или двухфазного) протокола фиксации транзакций (two-phase commit protocol), ставшего фактическим стандартом обработки распределенных транзакций. Использование этого протокола гарантирует согласованное изменение данных на нескольких узлах в рамках распределенной (или глобальной) транзакции.
Независимость от оборудования — свойство, означающее, что в качестве узлов распределенной системы могут выступать компьютеры любых моделей и производителей.
Независимость от операционных систем — свойство, вытекающее из предыдущего свойства и означающее многообразие операционных систем, управляющих узлами распределенной системы.
Прозрачность сети — свойство, означающее, что в распределенной системе возможны любые сетевые протоколы, т.е. доступ к любым базам данных может осуществляться по сети и спектр поддерживаемых конкретной СУБД сетевых протоколов не должен быть ограничением системы с распределенными базами данных.
Независимость от баз данных — свойство, означающее, что в распределенной системе могут сосуществовать СУБД различных производителей, а также возможны операции поиска и обновления в базах данных различных моделей и форматов.
Рассмотренные свойства во многом связаны с технологиями, осуществляющими доступ и обработку информации в удаленных базах данных.
ГЛАВА 2. ПРИНЦИПЫ РАЗРАБОТКИ И ЭКСПЛУАТАЦИИ СИСТЕМ УПРАВЛЕНИЯ УДАЛЕННЫМИ БАЗАМИ ДАННЫХ