Редактирование: Базы Данных, любимые вопросы лектора

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 1: Строка 1:
-
=Вопросы=
+
== From Ebaums Inc to MurkLoar. ==
-
* Реляционная модель данных / ограничения реляционной модели / ограничения сущности: почему должен существовать хотя бы один возможный ключ? ([[Базы Данных, 07 лекция (от 28 сентября)]])
+
We at EbaumsWorld consider you as disgrace of human race.
-
** Ограничения сущности. Для каждой переменной отношения должен существовать хотя бы один возможный ключ и ни в одном значении соотв отношения, ни в одном кортеже этот ключ не должен содержать неопределенного отношения.
+
Your faggotry level exceeded any imaginable levels, and therefore we have to inform you that your pitiful resourse should be annihilated.
-
* Придумать хорошую хэш-функцию ([[Базы Данных, 08 лекция (от 29 сентября)]])
+
Dig yourself a grave - you will need it.
-
** Наиболее часто используемая функция — получающая от деления на простое число.
+
-
* Какова последовательность действий, эквивалентная Theta-соединению? ([[Базы Данных, 08 лекция (от 29 сентября)]])
+
-
** Rename
+
-
** Times
+
-
** Where
+
-
** Project
+
-
* Как будет звучать лемма, если есть FR A -> В? ([[Базы Данных, 15 лекция (от 26 октября)]])
+
-
** Лема Фейджина. B отн r{A, B, C} выполн MVD->->B <=> выполн MVD A->->C
+
-
* Есть r(A1,...An), А1 – возможный ключ. Есть ли здесь зависимость проекций соединений? Если да, то какая? ([[Базы Данных, 16 лекция (от 27 октября)]])
+
-
** Есть, ({A1, A2}, {A1, A3}, {A1, An}) – доказывается по теореме Хитта, так как всё без потерь. Оно сколько угодно декомпозируемое, и его декомпозировать не надо, так как оно и так хорошее.
+
-
* Нетривиальные вещи – что такое связь, когда добавляют связь один к одному и n к m. Оба вопроса возн на экзамене. ([[Базы Данных, 18 лекция (от 03 ноября)]])
+
-
** Самый дурацкий ответ – и там и там первичный ключ. Откуда тогда возьмётся связь?
+
-
** На самом деле: Если оперд 1 к 1, то надо выбрать, что где будет, в одной таблице объявл первич ключ, в другой внешний ключ, но сам он должен быть уникальным идентификатором первой сущности. То есть это комбинация внешнего и возможного ключа. Если на одном конце связь необяз, то на этом конце надо определить возм ключ, который обладает свойствами внешнего по скуэлоским понятиям.
+
-
** Н к М – всегда очень сильно показывает ответ на экзамене, готовился ли человек к экзамену вообще, читал ли он лекции лектора, ходил ли он на лекции.
+
-
** Странные ответы: на двух концах внешние ключи. Куда ссылаются? На первичные ключи. А откуда н к м?
+
-
** Очень хороший пример – когда бригада милиционеров ловит банду бандитов.
+
-
** Как это делается: Если у нас два типа сущностей: милиционеры и бандиты, у них есть связь. Предположим, что есть уник ИД милиционера (МИД), уникальный идентификатор бандита (БИД). Заводится таблица, один столбец МИД, другой – БИД, и в ней выписываются все пары МИДов и БИДов, эта таблица называется таблицей связи, и лектор не слышал других способов. На самом деле, один парень смог придумать на экзамене страшно сложный механизм, неправильность которого лектор доказать не смог.
+
-
** На самом деле, в СКЛ с любой реализации, если в таблице опред возм ключ, то создается индекс, если внешний ключ – то индекс на внешнем ключе. В некоторых БД все индексы создавались явно. И если такие вещи не делаются, их надо проделать.
+
-
* Что нужно иметь по минимуму, чтобы было позднее связывание? ([[Базы Данных, 19 лекция (от 09 ноября)]])
+
-
** Отвечают, что нужен механизм вирт функций. Это соверш неправильно.
+
-
** А нужно в рантайме по ссылке на объект узнавать, какого он точно класса.
+
-
* Чем отличается OCL от языка исчисления кортежей. ([[Базы Данных, 20 лекция (от 16 ноября)]])
+
-
** Разница одна. Здесь (в OCL) есть фактически одна переменная. Что мы не можем сделать с помощью этого языка – мы не можем сделать соединение, можем сделать только полусоединение.
+
-
* Вопрос, как он добирается до таблицы SYSTABLES, чтобы узнать, где находится таблицы SYSTABLES. ([[Базы Данных, 22 лекция (от 23 ноября)]])
+
-
** Идея первого знакомства – любой приличный человек для того, чтобы познакомиться с человеком, должен иметь общего знакомого. Тут хороший знакомый – системные таблицы. И у них можно сделать предопр идентификатор: у SYSTABLES – 1, SYSCOLUMNS – 2, и т д.
+
-
* В систем Р для этого делали две динамических области. Как делать менеджер памяти? ([[Базы Данных, 22 лекция (от 23 ноября)]])
+
-
** Очень просто – с двух строн, одну сверху, другую снизу. Как только сошлись – память в блоке кончилась.
+
-
* Почему двухфазный протокол блокировки двухфазный? ([[Базы Данных, 25 лекция (от 07 декабря)]])
+
-
** <s>Одна фаза трабочая – от начала транзакции, до rollback-commit, на которой накапливаются блокировки. Выполняется операция коммит, и все блокировки освобождаются.</s> Ага, двухфазный, потому что две фазы. Думаем люди, неправильный ответ.
+
-
* Есть двухфазный протокол блокировки. Предположим, что выполняется не коммит, а роллбэк. У роллбэка две вещи – надо освободить все блокировки, и вернуть в исходное состояние. Можно ли сначала разблокировать, а потом делать откат. И вообще, когда можно снимать блокировки? ([[Базы Данных, 25 лекция (от 07 декабря)]])
+
-
** rollback – дополнительная транзакция, компенсирующая, и когда выполнится последняя операция отката, после этого выполняется неявня операция commit, и только после неё можно снять блокировку.
+
-
* Предположим, что в качестве механизма блокировок выбран двух фаз протокол, единица блокировки – строка, пример операции, которую нельзя выполнить. Лектор не знает, как при таком способе выполнить операцию уничтожения таблицы. Для этоог нужно сначала выкинуть данные, строка за строкой, и блокировать их. Когда последняя строка удалена, то можно её уничтожить. Но никто не мешает вставить другой кортеж в это время. Нужно блокировать таблицу целиком в режиме X. Если в качестве единицы блокировки теаблица целиком, то когда как удалить базу данных? А если блокировать БД целиком, то как тогда выполнять транзакции одновременно? ([[Базы Данных, 26 лекция (от 08 декабря)]])
+
-
** Нужно иметь транзакционные блокировки разных уровней. В System R это реализовывалось при помощи граниулированных синхрозационных блокировок.
+
-
* Почему в журнале нельзя ставить ссылки вперед? ([[Базы Данных, 27 лекция (от 14 декабря)]])
+
-
* для того, чтобы выполнить какую-либо операцию на уровне РСС, нужно, вообще говоря, выполнить следующие действия: поменять данные, установить блокировку, нужно поместить запись в журнал. В каком порядке их выполнять? ([[Базы Данных, 28 лекция (от 15 декабря)]])
+
-
** Cначала блокировка, потом запись в журнал, последнее – физические изменения.
+
-
 
+
-
=Что любит и что не любит лектор=
+
-
* Лектор не любит слово директория, вместо этого использовать слово каталог, справочник
+
-
* Лектор не любит, когда путают конъюнкцию и дизъюнкцию, и когда забывают их значки
+
-
* При рассмотрении реляционной модели про Microsoft говорить нельзя
+
-
* Лектор любит, когда определения говорят лаконично
+
-
* Не надо говорить, что схемы не пересекаются. Пересечь можно всё, но результат может быть пуст или нет
+
-
* Лектор не любит писать на доске, и рисовать картинки особенно противно
+
-
* Младшие поколения начинают называть consistency консистентностью, лектор это не любит
+
-
* Перевод слова deadlock как самоблокировка
+
-
 
+
-
=Замечания=
+
-
* Очень хорошим критерием, когда человек отвечает на экзамене — он не понимает, какой природы ключ.
+
-
* БД называть БД, СУБД называть СУБД
+
-
* На время рассказа про средства манипулирования данными забыть про неопределённые значения
+
-
* Б в В-деревьях <s>не</s> вообщем-то как раз от слова Байер (но не от слова Binary ни в коем случае).
+
-
* Сбалансированные деревья АВЛ не сбалансированы
+
-
 
+
-
=Прочая информация=
+
-
* Лектор родом из города Жуковский
+
-
* Всего в курсе три теоремы, одна лемма
+
-
* Лектор не читает лекцию, если на неё приходит менее 3 человек
+
-
* Очень хороший тест: когда спрашиваешь, это было на лекциях или не было.
+
-
 
+
-
{{Курс Базы Данных}}
+

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Шаблоны, использованные на этой странице:

Разделы