- •Различие информации и данных
- •4.Банк данных
- •В состав банка данных входят одна или несколько баз данных, справочник баз данных, субд, а также библиотеки запросов и прикладных программ.
- •5.Назначение субд
- •Основные функции субд
- •Состав субд
- •7.Функции администратора базы данных
- •22) Охарактеризуйте методы обработки транзакций в активных базах данных.
- •23) В чем основные особенности архитектуры клиент-сервер?
- •24) Какие стандарты разработаны для архитектуры клиент-сервер?
- •25) Создание приложений «клиент-сервер»
- •26) Какова типичная распределённая система базы данных?
- •27) В чем состоят преимущества использования распределенных бд?
- •28) Перечислите основные принципы организации распределённых бд
- •29. Что представляет собой фрагментация данных?
- •30. Перечислите проблемы распределенных систем.
- •31. В чем состоит проблема обновления в распределенных системах?
- •32. Дайте определение хранилищ данных.
- •33. Какие свойства присущи хранилищам данных?
- •34. Какие задачи требуется решать при создании хранилищ данных?
- •35. Перечислите основные компоненты хранилищ данных.
- •36) Виды моделей хранилища данных
- •37) Опишите процесс загрузки данных в хранилище
- •38) Какие задачи решают средства анализа данных в системах поддержки принятия решений?
- •39) Дайте определение тракзакции.
- •40) Перечислите, какими свойствами должна обладать транзакция.
- •Atomicity — Атомарность
- •Consistency — Согласованность
- •Isolation — Изолированность
- •Durability — Надежность
- •41) Назовите 3 основные проблемы параллелизма.
- •Проблема потери результатов обновления
- •Проблема незафиксированной зависимости (чтение "грязных" данных, неаккуратное считывание)
- •Проблема несовместимого анализа
- •Неповторяемое считывание
- •Фиктивные элементы (фантомы)
- •Собственно несовместимый анализ
- •42) Что представляет собой блокировка?
- •8. Что представляет собой вычислительная система?
- •9. Назовите основные способы работы пользователя с базой данных при решении прикладных задач.
- •10. Укажите технологии создания приложений работы с базами данных.
- •11. Охарактеризуйте способы выполнения приложений работы с базами данных.
- •12.Перечислите основные модели жизненного цикла бд.
- •13. Перечислите основные признаки фактографических и документальных бд.
- •14. Перечислите классические и современные модели представления данных.
Проблема несовместимого анализа
Проблема несовместимого анализа включает несколько различных вариантов:
Неповторяемое считывание.
Фиктивные элементы (фантомы).
Собственно несовместимый анализ.
Неповторяемое считывание
Транзакция A дважды читает одну и ту же строку. Между этими чтениями вклинивается транзакция B, которая изменяет значения в строке.
Транзакция A |
Время |
Транзакция B |
Чтение |
|
--- |
--- |
|
Чтение |
--- |
|
Запись |
--- |
|
Фиксация транзакции |
Повторное чтение |
|
--- |
Фиксация транзакции |
|
--- |
Неповторяемое считывание |
|
|
Транзакция A ничего не знает о существовании транзакции B, и, т.к. сама она не меняет значение в строке, то ожидает, что после повторного чтения значение будет тем же самым.
Результат. Транзакция A работает с данными, которые, с точки зрения транзакции A, самопроизвольно изменяются.
Фиктивные элементы (фантомы)
Эффект фиктивных элементов несколько отличается от предыдущих транзакций тем, что здесь за один шаг выполняется достаточно много операций - чтение одновременно нескольких строк, удовлетворяющих некоторому условию.
Транзакция A дважды выполняет выборку строк с одним и тем же условием. Между выборками вклинивается транзакция B, которая добавляет новую строку, удовлетворяющую условию отбора.
Транзакция A |
Время |
Транзакция B |
Выборка строк,
удовлетворяющих условию (Отобрано n строк) |
|
--- |
--- |
|
Вставка новой строки, удовлетворяющей условию . |
--- |
|
Фиксация транзакции |
Выборка строк, удовлетворяющих условию . (Отобрано n+1 строк) |
|
--- |
Фиксация транзакции |
|
--- |
Появились строки, которых раньше не было |
|
|
Транзакция A ничего не знает о существовании транзакции B, и, т.к. сама она не меняет ничего в базе данных, то ожидает, что после повторного отбора будут отобраны те же самые строки.
Результат. Транзакция A в двух одинаковых выборках строк получила разные результаты.
Собственно несовместимый анализ
Эффект собственно несовместимого анализа также отличается от предыдущих примеров тем, что в смеси присутствуют две транзакции - одна длинная, другая короткая.
Длинная транзакция выполняет некоторый анализ по всей таблице, например, подсчитывает общую сумму денег на счетах клиентов банка для главного бухгалтера. Пусть на всех счетах находятся одинаковые суммы, например, по $100. Короткая транзакция в этот момент выполняет перевод $50 с одного счета на другой так, что общая сумма по всем счетам не меняется.
Транзакция A |
Время |
Транзакция B |
Чтение счета
|
|
--- |
--- |
|
Снятие денег со
счета
|
--- |
|
Помещение денег на счет .
|
--- |
|
Фиксация транзакции |
Чтение счета
|
|
--- |
Чтение счета
|
|
--- |
Фиксация транзакции |
|
--- |
Сумма $250 по всем счетам неправильная - должно быть $300 |
|
|
Результат. Хотя транзакция B все сделала правильно - деньги переведены без потери, но в результате транзакция A подсчитала неверную общую сумму.
Т.к. транзакции по переводу денег идут обычно непрерывно, то в данной ситуации следует ожидать, что главный бухгалтер никогда не узнает, сколько же денег в банке.
