Преимущества распределенных БД

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

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

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

Независимость от конфигурации позволяет:

  • организации добавлять или заменять оборудование, не изменяя существующих компонентов программного обеспечения распределенных БД;
  • расширить систему в случае, если существующее оборудование перестает удовлетворять пользователя.

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

Тиражирование данных означает поддержку нескольких одинаковых копий реляционных таблиц. Тиражирование применяется с целью повышения доступности данных и надежности их хранения. Кроме того, несколько пользователей могут параллельно обращаться к одним и тем же данным. Например, это могут быть копии статистических данных для отдельных регионов, во-вторых, метаданные. Издержками этого подхода является необходимость дополнительного объема памяти и поддержания согласованности данных разных копий. Для этого нужно поддерживать централизованную базу, а копии выделять для локального использования. Потери данных на одном центре могут восстанавливаться при помощи централизованной БД. Недостатком такого подхода является слишком долгое время загрузки центральной БД. Поэтому загрузка новых данных, касающихся локальной БД, в региональном и главном центрах происходит одновременно. Можно применить тиражирование данных по времени отсечения. Например, в региональном центре данные хранятся только за последний год.

Управление распределенной БД– выработка способов функционирования в ситуации, когда БД из соображений эффективности тиражируется на нескольких узлах. Здесь нужно поддерживать идентичность копий. В ситуациях, когда связь нарушается, в копиях могут появиться различия. После восстановления связи должен включаться механизм согласования, который формирует некоторую копию, отражающую все сделанные изменения. В связи с растущей зависимостью производственных процессов от БД, для многих приложений необходимым требованием становится стопроцентная доступность – семь дней в неделю, 24 ч. в сутки. Репликация должна обеспечивать идентичность копий данных и корректное функционирование системы в условиях отказа отдельных компонентов.

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

Фрагментация данных связана с тем, каким образом реляционные таблицы могут быть разделены и распределены между центрами. Это продолжение стратегии расчленения данных, которая обычно означает распределение по центрам таблиц целиком. При фрагментации таблица делится на несколько частей (подмножеств). Объединение этих подмножеств составит исходную таблицу. Фрагментация может быть горизонтальной (данные для разных районов в разные фрагменты) и вертикальной (разные атрибуты в разные фрагменты). Для случая одного типа данных лучше применить горизонтальную фрагментацию. Здесь имеется проблема пересечения данных, т.е. одни и те же данные могут дублироваться на границах регионов.