Рубрики

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

Следующие вопросы были заданы на экзамене GATE 2012.

1) Рассмотрим следующие транзакции с элементами данных P и Q, инициализированными в ноль:

T1: read (P) ;
    read (Q) ;
    if P = 0 then Q : = Q + 1 ;
    write (Q) ;
T2: read (Q) ;
    read (P) ;
    if Q = 0 then P : = P + 1 ;
    write (P) ;

Любое несерийное чередование T1 и T2 для одновременного выполнения приводит к
(A) Сериализуемый график
(B) Расписание, не конфликтующее сериализуемо
(C) конфликтный сериализуемый график
(D) График, для которого график приоритета не может быть нарисован

Ответ (Б)
Говорят, что два или более действия находятся в конфликте, если:
1) Действия принадлежат разным транзакциям.
2) По крайней мере одно из действий является операцией записи.
3) Действия обращаются к одному и тому же объекту (чтение или запись).

Графики S1 и S2 называются конфликтно-эквивалентными, если выполняются следующие условия:
1) Оба графика S1 и S2 включают в себя один и тот же набор транзакций (включая упорядочение действий в каждой транзакции).
2) Порядок каждой пары конфликтующих действий в S1 и S2 одинаков.

Расписание считается конфликтно-сериализуемым, если оно эквивалентно одному или нескольким последовательным графикам.

Источник: вики-страница для расписания

В данном сценарии есть два возможных последовательных расписания:
1) Т1, затем Т2
2) Т2, за которым следует Т1.
В обоих последовательных расписаниях одна из транзакций считывает значение, записанное другой транзакцией, в качестве первого шага. Следовательно, любое несерийное перемежение T1 и T2 не будет конфликтно сериализуемым.

2) Рассмотрим следующие соотношения A, B, C. Сколько кортежей содержит результат следующего выражения реляционной алгебры? Предположим, что схема AUB такая же, как у A.

Table A
Id   Name    Age
----------------
12   Arun    60
15   Shreya  24
99   Rohit   11


Table B
Id   Name   Age
----------------
15   Shreya  24
25   Hari    40
98   Rohit   20
99   Rohit   11


Table C
Id   Phone  Area
-----------------
10   2200   02  
99   2100   01

(А) 7
(Б) 4
(С) 5
(D) 9

Ответ (А)

Result of AUB will be following table

Id   Name    Age
----------------
12   Arun    60
15   Shreya  24
99   Rohit   11
25   Hari    40
98   Rohit   20

The result of given relational algebra expression will be

Id   Name    Age  Id   Phone Area
---------------------------------
12   Arun    60   10   2200   02 
15   Shreya  24   10   2200   02   
99   Rohit   11   10   2200   02 
25   Hari    40   10   2200   02 
98   Rohit   20   10   2200   02 
99   Rohit   11   99   2100   01
98   Rohit   20   99   2100   01

3) Рассмотрим приведенные выше таблицы A, B и C. Сколько кортежей содержит результат следующего SQL-запроса?

SELECT A.id 
FROM   A 
WHERE  A.age > ALL (SELECT B.age 
                    FROM   B 
                    WHERE  B. name = "arun") 

(А) 4
(Б) 3
(С) 0
(D) 1

Ответ (Б)
Значение «ALL» означает, что A.Age должно быть больше, чем все значения, возвращаемые подзапросом. В таблице B нет записи с именем «arun», поэтому подзапрос вернет NULL. Если подзапрос возвращает NULL, то условие становится истинным для всех строк A (подробности см. В этом ). Таким образом, все строки таблицы A выбраны.

Пожалуйста, смотрите GATE Corner для всех документов / решений / объяснений предыдущего года, учебных планов, важных дат, заметок и т. Д.

Пожалуйста, пишите комментарии, если вы найдете какие-либо неправильные ответы / объяснения, или вы хотите поделиться дополнительной информацией по темам, обсужденным выше.

Рекомендуемые посты:

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

0.00 (0%) 0 votes