Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD.doc
Скачиваний:
4
Добавлен:
28.10.2018
Размер:
483.84 Кб
Скачать

21. Розподілені бд (правила Дейта).

Основные правила организации распределенных БД (12 правил Дейта).

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

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

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

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

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

 которые связаны с операциями выбора и проекции в реляционной алгебре. При фрагментации вводятся следующие допущения:

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

Независимость от репликаций. Говорят, что система поддерживает независимость от репликаций, если таблицы или фрагменты могут быть представлены различными копиями (реплики), хранящиеся на нескольких узлах. Благодаря независимости от репликаций достигается большая производительность, т.к. нет обмена с удаленными узлами. Основная сложность для репликаций - это обновление всех копий при модификации данных - это проблема распределения

22. Керування транзакціями.

В SQL сервере начало транзакции отмечается:BEGIN TRAN

Существует 2 вида транзакций:

1) явные (отмечается начало, конец и точки возврата) – они работают поверх остальных.

2) автоматические – SET_IMPLICIT_TRANSACTION OFF/ON – новая транзакция начинается сразу же после завершения предыдущей. Завершение транзакций может быть осуществлено следующими способами:

1. Оператор COMMIT - успешное завершение транзакций.

2. Оператор ROLL BACK - отменяет завершение транзакций.

3. Транзакция заканчивается после успешного завершения программы.

4. Неуспешное завершение программы (автоматически происходит откат).

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

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

2.Не блокировать лишние записи.

3.Устанавливать одинаковый порядок чтения и обновления данных в различных приложениях, которые работают с одной и той же БД.

Информацию о блокировках можно получить с помощью системной процедуры SP_LOCK.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]