Разработка распределенных реляционных баз данных 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Разработка распределенных реляционных баз данных



В лекциях по ИОСУ (4 курс) была рассмотрена методология концептуального и логического проектирования централизованных реляционных баз данных. В дальнейшем рассмотрим дополнительные факторы, которые должны приниматься во внимание при разработке распределенных РБД.

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

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

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

Определение (выделение) фрагментов (фрагментация) и размещение их на сайтах (распределение) должно проводиться с учетом особенностей использования базы данных. В частности это подразумевает выполнение анализа приложений. При этом проектирование РБД должно выполняться на основе как количественных, так и качественных показателей. Количественная информация используется в качестве основы для распределения, а качественная служит базой при создании схем фрагментации.

Количественная информация включает следующие показатели:

1. частота запуска приложения на выполнение;

2. сайт, на котором запускается приложение;

3. требования к производительности транзакций и приложений.

Качественная информация может включать:

1. перечень выполняемых в приложении транзакций;

2. атрибуты и кортежи, к которым осуществляется доступ;

3. тип доступа (чтение или запись);

4. предикаты, используемые в операциях чтения.

Фрагментация и распределение фрагментов по сайтам выполняется для достижения следующих целей:

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

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

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

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

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

Распределение данных

Существует четыре альтернативных стратегии распределения (размещения) данных в системе:

1. централизованное;

2. раздельное (фрагментированное);

3. размещение с полной репликацией;

4. размещение с выборочной репликацией.

1. Централизованное размещение.

Данная стратегия предусматривает создание на одном из сайтов (сервере) единственной базы данных под управлением СУБД, доступ к которой будут иметь все пользователи сети (эта стратегия под названием «распределенная обработка» уже рассматривалась ранее (лекция 1)). В этом случае так называемая локальность ссылок (упрощенно: удобство в получении данных) минимальна для всех сайтов (клиентов), за исключением центрального, поскольку для получения любого доступа к данным требуется установка сетевого соединения. Соответственно уровень затрат на передачу данных будет высок, а уровень надежности и доступности в системе низок, поскольку отказ на центральном сайте вызывает паралич работы всей системы.

2. Раздельное (фрагментированное) размещение.

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

3. Размещение с полной репликацией.

Данная стратегия предусматривает размещение полнойкопии всей базы данных на каждом из сайтов системы. Следовательно, локальность ссылок, надежность и доступность данных, а также уровень производительности будут максимальны. Однако стоимость устройств хранения данных и уровень затрат на передачу данных в этом случае также будут самыми высокими. Для преодоления части этих проблем иногда используется технология моментальных снимков. Моментальный снимок представляет собой копию базы данных в определенный момент времени. Эти копии обновляются через некоторый установленный интервал времени – например, один раз в час или в неделю, - а потому они не всегда будут актуальными в текущий момент. Иногда в распределенных системах моментальные снимки используются для реализации представлений, что позволяет улучшить время выполнения в базе данных операций представления.

4. Размещение с выборочной фрагментацией.

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

Характеристики всех рассмотренных стратегий приведены в табл. 1.5.1.



Поделиться:


Последнее изменение этой страницы: 2017-02-05; просмотров: 281; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.31.239 (0.011 с.)