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

Ваше имя и фамилия:

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


Академический Университет, осень 2014
теоретический тест

1. Напишите в правом верхнем углу фамилию и имя.


2. Пишите разборчиво.
3. Всегда явно выделяйте ответ.
4. Помните, что все ответы необходимо объяснять.

Задание 1 В отношении BOOKING определены следующие атрибуты:


4 балла
B номер корпуса отеля
R номер комнаты в корпусе
C класс комнаты
W фамилия дежурного портье в корпусе
D порядковый номер дня в году
P стоимость комнаты в этот день
G номер паспорта постояльца комнаты

Строчка в кортеже утверждает, что господин с паспортом G в день номер D занимает


в отеле комнату класса C c номером R в корпусе B, где дежурит портье W и платит
за это сумму P.
Пусть стоимость комнаты определяется классом и днем; комнат одного класса мо-
жет быть много, но разумеется у конкретной комнаты класс один; в разных корпусах
могут быть комнаты с одинаковым номером; портье не вездесущ, равно как и посто-
ялец.
Определите какие функциональные зависимости есть в этой таблице, какие в ней есть
потенциальные ключи, в какой нормальной форме она находится и, если требуется,
проведите декомпозицию до НФБК.

Задание 2 Пусть в отношении R со схемой (A, B) находится N кортежей, а в отношении S со


3 балла схемой (B, C, D) находится 2 × N кортежей. Вам известно, что атрибут R.B является
ключом в отношении R, S.B является внешним ключом, показывающим на R.B,
атрибут S.C является булевским, пара (B, C) объявлена ключом в отношении S, и у
всех атрибутов стоит ограничение NOT NULL
Сколько будет кортежей в результате выполнения cоединения R ▷◁ S ?
N ×(N +1)
a) 0 b) N c) 2N d) 2 e) N 2 f) неизвестно

Задание 3 Определите, является ли расписание сериализуемым по конфликтам и если да, то


3 балла какому последовательному расписанию оно эквивалентно, а если нет, то какое кон-
кретно действие привело к несериализуемости

R1 (X)R2 (Y )W2 (X)R4 (Y )W2 (Z)R3 (X)R3 (Z)W2 (Y )W4 (Z)

НА ОБРАТНОЙ СТОРОНЕ ЛИСТА ТОЖЕ ЕСТЬ ТЕКСТ


Задание 4 Предположим, что у вас есть отношение R, занимающее на диске минимально воз-
4 балла можное количество блоков. Характеристики R:

B(R) = 10000, T (R) = 50000, V (R, a) = k

У вас есть некластеризующий индекс для атрибута R.a и вы выполняете запрос


σa=C (R), где C – некая константа. В зависимости от значения k, вы предпочтете
воспользоваться индексом или проигнорировать его, и выполнить полный просмотр.
Найдите это граничное значение k, предполагая, что значения атрибута R.a распре-
делены равномерно, и что кеширование блоков в памяти не используется.

Задание 5 Докажите возможность или невозможность возникновения взаимных блокировок при


5 баллов использовании протокола MVCC.

Задание 6 В вашей БД есть объекты X = 100 и Y = 100. Вы выполняете две параллельных


4 балла транзакции T1 и T2 . Транзакция T1 увеличивает X и Y на 1, транзакция T2 умножает
Y × 2 и записывает результат и в X и в Y .
Расписание действий транзакций при нормальной работе выглядело бы так (арифме-
тика пропущена, можно считать что вычисления транзакции происходят непосред-
ственно перед её действием WRITE)

1: START T1 9: WRITE T1 , X
2: INPUT X 10: OUTPUT X
3: START T2 11: OUTPUT Y
4: INPUT Y 12: COMMIT T2
5: READ T2 , Y 13: READ T1 , Y
6: WRITE T2 , Y 14: WRITE T1 , Y
7: WRITE T2 , X 15: OUTPUT X
8: READ T1 , X 16: OUTPUT Y
17: COMMIT T1

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


X и Y вы ожидаете увидеть после восстановления, если вы используете политику
журналирования Undo logging?

Задание 7 Вы видите перед собой листья B+ - дерева. Дорисуйте внутренние узлы и корень,
2 балла при условии что в дисковом блоке есть место для трёх ключей и четырёх указателей.
Произведите вставку ключа 18 и нарисуйте структуры дерева после этой вставки.

2 3 5 7 11 13 17 19 23 29 31 37 41 43

НА ОБРАТНОЙ СТОРОНЕ ЛИСТА ТОЖЕ ЕСТЬ ТЕКСТ