- •1.Три основные пути разработки по для автоматизации предприятий, их достоинства и недостатки.
- •2. Особенности информационного обеспечения систем управления, виды информации, правовое обеспечение информационных технологий.
- •3. Системы управления базами данных, примеры субд, история развития субд
- •4. Функции и состав субд.
- •5. Информационная безопасность, ее аспекты и основные программно-технические меры обеспечения.
- •6. Классификация субд
- •7. Реляционная база данных и основные её понятия.
- •8. Понятие о языке sql (Structured Query Language - структурированный язык запросов).
- •9. Операторы sql.
- •10. Основы проектирования баз данных, уровни моделирования.
- •11. Шаги проектирования базы данных
- •12.Шестой шаг проектирования базы данных (нормализация отношений)
- •13.Понятия oltp- и olap-систем (примеры).
- •14. Инфологическое проектирование базы данных.
- •15. Основные понятия модели Entity-Relationship.
- •16. Сложные элементы er-диаграмм, получение реляционной схемы из er-схемы.
- •17. Разработать er-диаграмму (отличную от примера в лекциях, с количеством сущностей не менее пяти).
- •18. Проектирование внутренней схемы базы данных (привести пример отличный от примера в лекциях с числом отношений не менее трех).
- •19. Параллельная обработка данных, понятия о конвейерности и параллелизме.
- •20. Транзакции и параллелизм, понятия смеси транзакций и графика запуска набора транзакций.
- •21.Проблемы параллельной работы транзакций. Проблема потери результатов обновления.
- •22.Проблемы параллельной работы транзакций. Проблема незафиксированной зависимости (чтение "грязных" данных, неаккуратное считывание).
- •23. Проблемы параллельной работы транзакций. Проблема несовместимого анализа (три вида).
- •24. Конфликты между транзакциями (типа w-w, r-w, w-r). Понятия последовательного, чередующегося, эквивалентного и верного (сериализуемого) графика запуска набора транзакций.
- •25. Понятия X- и s-блокировок, протокол доступа к данным с использованием этих типов блокировок.
- •27. Использование X- и s-блокировок блокировок при решении проблем параллельной работы транзакций. Решение проблем несовместимого анализа.
- •28. Понятие о тупиковых ситуациях, общий вид возникновения тупика, два принципиальных подхода к обнаружению тупиковой ситуации.
- •29. Понятие о преднамеренных блокировках. Is-, IX- и six-блокировки. Протокол доступа к данным с использованием преднамеренных блокировок
- •31. Метод временных меток для сериализации транзакций.
- •31) Метод временных меток для сериализации транзакций
- •32) Механизм выделения версий данных при параллельной работе транзакций
- •33) Основные понятия баз знаний
- •34) Структура статической экспертной системы, ее основные элементы
- •35) Структура динамической экспертной системы, ее основные элементы.
- •36. Разработка экспертной системы (условия возможности и целесообразности разработки, этапы разработки).
- •37. Знания, необходимые для функционирования экспертной системы.
- •38. Понятия об erp,mrp(II) – системах, их основные подсистемы, понятия хранилища данных.
- •39. Основные направления развития субд.
23. Проблемы параллельной работы транзакций. Проблема несовместимого анализа (три вида).
Транзакция - логический блок, объединяющий один или несколько операций в БД и позволяющая подтвердить или отметить результаты работы всех операций в блоке.
Проблема №1: проблема потерь результатов обновления.
Проблема №2: проблема незафиксированной зависимости (неаккуратное считывание),(чтение грязных данных).
Проблема №3: проблема несовместимого анализа.
Транзакция А |
время t |
Транзакция В |
чтение Р1=100, SUM=100 - - чтение Р2=100, SUM=200 чтение Р3=50, SUM=250 |
t1 t2 t3 t4 t5 |
х запись Р1=150, Р3=50 Фиксация х х |
24. Конфликты между транзакциями (типа w-w, r-w, w-r). Понятия последовательного, чередующегося, эквивалентного и верного (сериализуемого) графика запуска набора транзакций.
Транзакция - логический блок, объединяющий один или несколько операций в БД и позволяющая подтвердить или отметить результаты работы всех операций в блоке.
Конкурирующие транзакции – если они пересекаются по времени, обращаются к одним и тем же данным и хотя бы одна из них изменяет эти данные.
Типы конфликтов:
W-W (запись-запись) потеря результатов обновления
R-W (чтение-запись) неповторяемое считывание
W-R (запись- чтение) чтение «грязных» данных
График запуска набора транзакций называется ПОСЛЕДОВАТЕЛЬНЫМ , если транзакции выполняются строго по очереди, т.е. элементарные операции транзакций не чередуются друг с другом.
Два графика называются эквивалентными, если при их выполнении и одном и том же начальном состоянии базы будет получен один и тот же результат.
Если график набора транзакций содержит чередующиеся элементарные операции, то такой график называется чередующимся.
График запуска транзакций называется верным (сериализуемым), если он эквивалентен
какому-либо последовательному графику.
25. Понятия X- и s-блокировок, протокол доступа к данным с использованием этих типов блокировок.
1.Монотельная блокировка (Х-блокировка)
(x-lock, x-exclusive) - блокировка без взаимного доступа, блокировка записи.
Если транзакция заблокировала данные x-lock, то всякий доступ к этим данным со стороны других транзакций отвергаются.
2.Разделяемая блокировка (S-блокировка,S-lock, S- shared)- блокировка чтения, блокировка с взаимным доступом.
Если транзакция заблокировала данные при помощи S- блокировки, то:
все запросы др. транзакций на х-блок. этих данных будут отвергнуты.
«-» на S-блокир будут приняты.
Матрица совместимости блокировок
|
Транзакции В пытается наложить |
|
Транзакция А наложила |
S-lock |
x-lock |
S-lock |
да |
нет (конфликт R-W) |
x-lock |
нет (конфликт W-R) |
нет (конфликт W-W) |
Протокол доступа к данным
Прежде чем прочитать объект, транзакция должна наложить на этот объект S-lock
Прежде чем обновит объект, транзакция должна наложить на этот объект х-lock.
Если данные до этого были заблокированы S-lock, то перед обновлением она д.б. заменена на х-lock.
Если блокировка объекта другой транзакции отвергается от того, что он уже заблокирован первой, то вторая транзакция переходит в состояние ожидания до тех пор пока первая транзакция не снимет свою блокировку.
х-lock, наложенные транзакции сохраняются до конца этой транзакции.
26. Использование X- и S-блокировок блокировок при решении проблем параллельной работы транзакций. Решение проблем потери результатов обновления и незафиксированной зависимости. Решение проблемы параллелизма с помощью применения блокировок
1)Проблема потери результатов обновления
А |
Время |
В |
S-lock строки Р-успешна |
t1 |
Х |
Чтение Р=Ро |
t2 |
х |
- |
t3 |
S-lock Р-успешна |
- |
t4 |
Чтение Р=Ро |
X-lock Р-отвергаются |
t5 |
- |
ожидание |
t6 |
X-lock Р-отвергаются |
ожидание |
t7 |
Ожидание |
Возникла ситуация тупика (deod-lock)
2)Проблема незафиксированной зависимости
А |
Время |
В |
Х |
t1 |
S-lock строки Р-успешна |
Х |
t2 |
Чтение Р=Ро |
Х |
t3 |
Х-lock Р-успешна |
Х |
t4 |
Запись Р1=Р |
S-lock Р-отвергаются |
t5 |
- |
ожидание |
t6 |
Фиксация(-//-) Откат(блокировки сняты) |
S-lock Р-успешна |
t7 |
х |
Чтение Р=Ро (Р1) |
t8 |
|
Проблема решена