Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мои билеты.docx
Скачиваний:
16
Добавлен:
27.09.2019
Размер:
2.85 Mб
Скачать

33. Виды конфликтов при параллельном выполнении транзакций. Сериализация транзакций. Захват и освобождение объекта.

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

Виды конфликтов:

  1. Пропавшие обновления – две транзакции одновременно изменяют одну и ту же запись в БД.

  2. Чтение промежуточных данных (1 диспетчер отложил заказ, у 2 диспетчера показано, что заказ оформлен)

  3. Чтение несогласованных данных. Пусть 1 оператор продает 30 мониторов и COMMIT транзакцию. 2 оператор видит, что состояние БД изменилось. Он считает, что нарушена целостность его транзакции, 2 состояния получил в течение одной работы. Программа 1 оператора изменила кортеж с данными, который уже прочитала 2-ая программа.

  4. Строки-призраки. Получаем два отсчета в одном приложении с разными цифрами (печать). Печать выполнила два одинаковых запроса и получила разные результаты.

Сериализация транзакций – результат совместного выполнения транзакций эквивалентен результату некоторого последовательного выполнения этих транзакций.

Захват и освобождение объекта.

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

Два режима захватов:

  1. Совместный режим – разделяемый захват, для чтения.

  2. Монопольный режим – на запись, модификация, удаление.

В СУБД двухфазный протокол захватов. Захват объекта транзакцией -> накопление захватов -> освобождение захватов.

34. Технологии обработки данных. Функции «типового» приложения обработки данных.

1) Модель «Клиент-сервер»

2) Распределенная обработка данных

Системы распределенной обработки данных

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

Системы распределенных баз данных

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

Функции «типового» приложения обработки данных

1)Ввод и отображение данных

2) Функциональная обработка, реализующая алгоритм решения задач пользователя. Соответствующие «бизнес-правила» реализуются высокоуровневыми ЯП или расширенного языка манипулирования данными (ADABAS NATURAL,4GL)

3) Манипулирование данными БД в рамках приложения (SQL).

4) Управление данными и другими ресурсами БД, реализуемое внутренними средствами СУБД в рамках файловой системы ОС.

5) Управление процессами обработки: связывание и синхронизация процессов обработки данных разного уровня.

35. Архитектуры распределенной обработки данных.

Модель клиент-сервер.

Клиентская часть – обработка данных, взаимодействие с пользователем.

Серверная часть - хранение данных, обработка запросов и отсылка пользователю результатов.

  1. Архитектура «файл-сервер»

  1. Архитектура «выделенный сервер БД»

Снижает сетевой трафик и повышает эффективность обработки за счет оптимизации и буферизации ввода-вывода

  1. Архитектура «активный сервер БД»

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

  1. Архитектура «сервер приложений»