Вы находитесь на странице: 1из 12

Мой кабинет пользователя / Мои курсы /

Управление данными / Базы данных /


Раздел 11. Транзакции и параллелизм

/
Тест для самопроверки по разделу 11

Тест начат Понедельник, 20 декабря 2021, 23:09


Состояние Завершено
Завершен Понедельник, 20 декабря 2021, 23:27
Прошло 17 мин. 59 сек.
времени
Оценка 26,58 из 32,00 (83%)

Вопрос 1
Неверно

Баллов: 0,00 из 1,00

Если попытка блокировки объекта транзакцией В отвергается оттого, что этот объект уже заблокирован транзакцией А, то

Выберите один ответ:


транзакция В накладывает свою блокировку и ожидает, когда транзакция А снимет свою блокировку объекта
транзакция В переходит в состояние ожидания до тех пор, пока транзакция А не снимет блокировку объекта
транзакция В отменяет блокировку транзакции А и заменяет своей блокировкой 

Правильный ответ: транзакция В переходит в состояние ожидания до тех пор, пока транзакция А не снимет блокировку объекта

Вопрос 2
Верно

Баллов: 2,00 из 2,00

Совместимость S и X блокировок

Если транзакция А заблокировала кортеж S-блокировкой,

то транзакция В может  наложить свою S-блокировку;

то транзакция В не может  наложить свою X-блокировку;

то транзакция A может  наложить свою X-блокировку;

то транзакция В не может  разблокировать кортеж и наложить свою S-блокировку;

то транзакция В не может  разблокировать кортеж и наложить свою X-блокировку.

Вопрос 3
Верно

Баллов: 2,00 из 2,00

Совместимость S и X блокировок

Если транзакция А заблокировала кортеж X-блокировкой,

то транзакция В не может  наложить свою S-блокировку;

то транзакция В не может  наложить свою X-блокировку;

то транзакция A не может  наложить свою S-блокировку;

то транзакция В не может  разблокировать кортеж и наложить свою S-блокировку;

то транзакция В не может  разблокировать кортеж и наложить свою X-блокировку.

Вопрос 4
Верно

Баллов: 1,00 из 1,00

Какие проблемы возникают при параллельном выполнении представленных на рисунке транзакций?

Выберите один или несколько ответов:


Проблема несовместимого анализа - собственно несовместимый анализ
Проблема несовместимого анализа - фиктивные элементы (фантомы)
Проблема потери результатов обновления 
Проблема незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание)
Проблема несовместимого анализа - неповторяемое считывание

Правильный ответ: Проблема потери результатов обновления


Вопрос 5
Верно

Баллов: 1,00 из 1,00

Какие проблемы имеют место при параллельном выполнении представленных на рисунке транзакций?

Выберите один или несколько ответов:


Проблема несовместимого анализа - фиктивные элементы (фантомы)
Проблема незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание) 
Проблема несовместимого анализа - неповторяемое считывание
Проблема несовместимого анализа - собственно несовместимый анализ
Проблема потери результатов обновления.

Правильный ответ: Проблема незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание)

Вопрос 6
Неверно

Баллов: 0,00 из 1,00

Транзакции называются конкурирующими, если

Выберите один ответ:


выполнение одной транзакции влияет на выполнение другой транзакции
они начинаются одновременно
они одновременно обращаются к одним и тем же данным 
они пересекаются во времени
они выполняются одновременно
они обращаются к одним и тем же данным
они заканчиваются одновременно

Правильный ответ: выполнение одной транзакции влияет на выполнение другой транзакции


Вопрос 7
Неверно

Баллов: 0,00 из 1,00

Какая ситуация имеет место в приведенном ниже примере?

Выберите один или несколько ответов:


возникновение новой проблемы - ситуация тупика
не решенная проблема несовместимого анализа - неповторяемое считывание
не решенная проблема незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание)
решение проблемы незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание)
не решенная проблема несовместимого анализа - фиктивные элементы (фантомы)
не решенная проблема потери результатов обновления 
решение проблемы несовместимого анализа - неповторяемое считывание
решение проблемы несовместимого анализа - фиктивные элементы (фантомы)
решение проблемы потери результатов обновления

Правильный ответ: решение проблемы несовместимого анализа - неповторяемое считывание


Вопрос 8
Частично правильный

Баллов: 0,50 из 1,00

Какая ситуация имеет место в приведенном ниже примере?

Выберите один или несколько ответов:


не решенная проблема незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание)
не решенная проблема потери результатов обновления
решение проблемы несовместимого анализа - фиктивные элементы (фантомы)
решение проблемы несовместимого анализа - фиктивные элементы (фантомы)
не решенная проблема несовместимого анализа - неповторяемое считывание
решение проблемы потери результатов обновления 
возникновение проблемы - ситуация тупика
решение проблемы незафиксированной зависимости (чтение "грязных данных", неаккуратное считывание)
решение проблемы несовместимого анализа - неповторяемое считывание

Правильные ответы: решение проблемы потери результатов обновления, возникновение проблемы - ситуация тупика
Вопрос 9
Верно

Баллов: 1,00 из 1,00

Какие из приведенных ниже утверждений соответствуют протоколу двухфазной блокировки?

Выберите один или несколько ответов:


Перед выполнением каких-либо операций с некоторым объектом базы данных транзакция должна заблокировать этот 
объект
Если после снятия блокировки с какого-либо объекта транзакция хочет снова работать с этим объектом, то она вначале должна
снова заблокировать этот объект
Если после снятия блокировки с какого-либо объекта транзакция хочет работать с другим объектом, то она вначале должна
заблокировать этот объект
Перед выполнением каких-либо операций с заблокированным объектом базы данных транзакция должна снять блокировку с
этого объекта
После снятия блокировки с какого-либо объекта транзакция не должна накладывать блокировок на другие объекты 

Правильные ответы: Перед выполнением каких-либо операций с некоторым объектом базы данных транзакция должна
заблокировать этот объект, После снятия блокировки с какого-либо объекта транзакция не должна накладывать блокировок на
другие объекты

Вопрос 10
Верно

Баллов: 1,00 из 1,00

Удовлетворяет ли приведенная на рисунке транзакция требованиям протокола двухфазной блокировки?

Выберите один ответ:


нет
да 

Правильный ответ: да
Вопрос 11
Верно

Баллов: 1,00 из 1,00

Удовлетворяет ли приведенная на рисунке транзакция требованиям протокола двухфазной блокировки?

Выберите один ответ:


нет 
да

Правильный ответ: нет

Вопрос 12
Верно

Баллов: 2,00 из 2,00

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


соответствуют протоколу 2-х фазной блокировки.

не соответствует 

соответствует

не соответствует

соответствует

Вопрос 13
Неверно

Баллов: 0,00 из 1,00

Если вместо группы кортежей отношения заблокировать все отношение, то

Выберите один или несколько ответов:


вероятность конфликта транзакций будет выше
проблема фиктивных элементов (фантомов) будет решена
накладные расходы на установку блокировок будут ниже 
накладные расходы на установку блокировок будут выше
проблема фиктивных элементов (фантомов) не будет решена
вероятность конфликта транзакций будет ниже 

Правильные ответы: накладные расходы на установку блокировок будут ниже, вероятность конфликта транзакций будет выше,
проблема фиктивных элементов (фантомов) будет решена

Вопрос 14
Верно

Баллов: 1,00 из 1,00

Что блокируется при использовании предикатных синхронизационных блокировок?

Выберите один или несколько ответов:


Страницы данных, соответствующие заданному предикату
Все предикатные кортежи отношения
Кортежи-фантомы, удовлетворяющие заданному в запросе условию
Все кортежи, удовлетворяющие заданному в запросе условию
Кортежи отношения, являющиеся фантомами
Условие выборки кортежей, заданное в выполняемом запросе 
Отношения БД

Правильный ответ: Условие выборки кортежей, заданное в выполняемом запросе


Вопрос 15
Верно

Баллов: 5,00 из 5,00

Укажите правильную последовательность действий в методе сериализации транзакций с помощью временных меток

Каждой транзакции Т приписывается временная метка t, соответствующая моменту ее начала  .

Транзакция В перед выполнением операции над объектом R выполняет следующие действия.

Проверяет, помечен ли и кем помечен этот объект другой транзакцией.

Если объект не помечен  , то транзакция помечает его своей временной меткой и типом операции (чтение или изменение).

Если объект помечен  , то транзакция B  проверяет, не закончилась ли транзакция A  , пометившая этот


объект.

Если транзакция A  завершилась  , транзакция B  помечает объект R своей временной меткой и


выполняет операцию.

Если транзакция A  еще не завершилась  , то транзакция B  проверяет конфликтность операций.

Если операции неконфликтны  , то при объекте R остается или проставляется временная метка с меньшим 

значением, и транзакция B  выполняет свою операцию.

Если операции транзакций А и В конфликтны  , то,

если t(А) больше t(В) (т. е. транзакция А является более «молодой», чем В), то транзакция A  откатывается и, получив новую

временную метку, начинается заново. Транзакция B  продолжает работу.

Если же t(А) меньше t(в) (т. е. транзакция А является более «старой», чем В), то транзакция B  откатывается и, получив новую

временную метку, начинается заново. Транзакция A  продолжает работу.

В итоге система обеспечивает такую работу, при которой при возникновении конфликтов всегда откатывается более « молодая

 » транзакция (начавшаяся позже  .

Вопрос 16
Верно

Баллов: 1,00 из 1,00

Метод временных меток.

Выберите один или несколько ответов:


Метод временных меток используется для обеспечения сериализации транзакций 
При использовании метода временных меток журнал транзакций используется 
Метод временных меток используется для обеспечения возможности восстановления согласованности данных при сбоях
Временная метка соответствует моменту времени, когда транзакция блокирует объект
Временная метка соответствует моменту начала транзакции 
Временная метка соответствует моменту записи содержимого буфера журнала на диск
При использовании метода временных меток журнал транзакций не используется
Временная метка соответствует моменту окончания транзакции
Временная метка соответствует моменту записи содержимого буфера данных на диск

Правильные ответы: Метод временных меток используется для обеспечения сериализации транзакций, Временная метка
соответствует моменту начала транзакции, При использовании метода временных меток журнал транзакций используется

Вопрос 17
Верно

Баллов: 1,00 из 1,00

Сравнение метода временных меток и метода блокировок

Выберите один или несколько ответов:


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

Правильные ответы: При использовании метода временных меток неизвестно, какая транзакция будет откатана - более «дорогая»
или более «дешевая»., При использовании метода временных меток откаты транзакций будут чаще, чем при использовании метода
блокировок., При использовании метода временных меток эффективность распараллеливания транзакций будет ниже, чем при
использовании метода блокировок., Метод временных меток реализуется проще, чем метод, основанный на блокировках
Вопрос 18
Частично правильный

Баллов: 0,50 из 1,00

Методом разрешения ситуации тупика является

Выберите один или несколько ответов:


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

1
Правильные ответы: откат одной из транзакций, находящихся в состоянии тупика, после разрешения тупика, транзакция, для которой
был произведен откат, повторяется заново

Вопрос 19
Частично правильный

Баллов: 4,58 из 5,00

Метод сериализации транзакций, основанный на выделении версий данных

Для каждой транзакции формируется и запоминается ее текущий системный номер (SCN). Чем позже начата транзакция, тем
больше  ее SCN.

При выполнении операции записи  страниц данных на диск фиксируется SCN транзакции, производящей эту операцию.

Этот SCN становится текущим системным номером страницы данных. Транзакции, только читающие данные, не блокируют 
объекты в базе данных.

Если транзакция А читает страницу данных, то SCN транзакции А сравнивается с SCN читаемой страницы данных.

Если SCN страницы данных меньше  или равен SCN транзакции А, то транзакция А читает эту страницу.

Если SCN страницы данных больше  SCN транзакции А, то это означает, что некоторая транзакция В, начавшаяся

позже  транзакции А, успела  изменить данные страницы. В этом случае транзакция А просматривает

журнал транзакций  вперед  в поиске первой  записи об изменении нужной страницы данных с SCN

меньшим  , чем SCN транзакции А. Найдя такую запись, транзакция А использует старый  вариант данных страницы.

Вопрос 20
Верно

Баллов: 1,00 из 1,00

При использовании метода выделения версий данных транзакция не накладывает  блокировки на читаемые данные и

не блокирует  другие транзакции, изменяющие данные.

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

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

Вопрос 21
Верно

Баллов: 1,00 из 1,00

Средствами стандартного языка SQL можно управлять:

Выберите один или несколько ответов:


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

Правильный ответ: уровнями изоляции транзакций

◄ 3. Презентация по теме "Транзакции и параллелизм"

Перейти на...

Пособие. Распределённые системы. Архитектура клиент-сервер ►

Вам также может понравиться