
- •Перечислите набор общих процедур управления ресурсами.
- •Какова структура программы при использовании файловой системы управления информационными массивами.
- •В чем основное функциональное отличие использования файловой системы управления информационными массивами и технологии баз данных.
- •2. К разделу «База данных как модель предметной области»
- •Дайте определение следующим базовым понятиям: данные, элемент данных, атрибут, объект, предметная область.
- •Сформулируйте определение базы данных, исходя из понятия предметной области.
- •Дайте определения понятиям: проблема, проблемная ситуация, цель, проблемная среда.
- •Дайте общее определение понятию модели. В чем отличительная особенность модели от других видов систем. Перечислите системные свойства модели.
- •Сформулируйте определение базы данных как модели предметной области.
- •Сформулируйте понятие модели данных. Какие составляющие должны быть определены в модели, чтобы ее можно было рассматривать как модель данных.
- •3. К разделу «Понятие о банке данных»
- •Приведите схему общей структуры банка данных.
- •Приведите общую схему коллектива специалистов. Перечислите основные функции аналитиков, системных программистов, прикладных программистов.
- •Приведите схему уровней представления (абстракций) информационной системы.
- •Дайте понятие инфологической модели. В чем отличие инфологической модели от концептуальной.
- •4. К разделу «Вопросы проектирования баз данных»
- •Перечислите и охарактеризуйте основные этапы жизненного цикла информационной системы.
- •Приведите общую схему инфологического проектирования. Дайте понятие по- и пп-информации и поясните смысл их использовании для процесса проектирования.
- •3 Приведите общую схему концептуального проектирования.
- •5. Контрольные вопросы по разделу «Реляционная модель данных»
- •Дайте определение базовым понятиям реляционной модели: домен, кортеж, отношение, схема отношения, схема базы данных.
- •Каковы пользовательские представления понятия схемы отношения и экземпляра отношения.
- •Перечислите свойства отношений.
- •Сформулируйте понятие функциональной зависимости. Определите 1нф, 2нф и 3нф представления реляционной модели.
- •Дайте понятия целостности для сущностей и ссылок. Что такое внешний ключ.
- •В чем отличие в использовании аппарата реляционной алгебры и аппарата реляционного исчисления.
- •Опишите набор традиционных операций над множествами как операций реляционной алгебры.
- •Опишите набор специальных операций реляционной алгебры.
- •Перечислите достоинства и недостатки реляционных систем.
- •6. Контрольные вопросы по разделу «Система управления базой данных»
- •Перечислите основные функции субд.
- •Определите понятие транзакции. Назначение и суть механизма журнализации.
- •Какие основные аспекты сохранения целостности учитываются при функционировании субд.
- •Какие основные аспекты защиты данных должны учитываться при функционировании субд.
- •Сформулируйте понятия логической и физической независимости данных.
- •Приведите обобщенную схему субд.
- •Приведите упрощенную схему функционирования субд.
- •7. Контрольные вопросы по разделу «Основы физического проектирования»
- •Сформулируйте основные понятия физического уровня: хранимая запись, формат хранимой записи, метод доступа, механизм поиска.
- •Сформулируйте основные задачи этапа физического проектирования.(11 вопрос
- •Приведите общую классификацию методов доступа.
- •Опишите способы последовательной организации.
- •Опишите метод доступа – хеширование. В чем состоит проблема синонимов.
- •Опишите метод доступа с полным индексом и индексно-последовательный метод доступа. Сравните эти методы. В чем достоинства и недостатки каждого из них.
- •В чем суть инвертирования.
- •Что такое в-дерево.
- •Опишите механизмы использования битовых шкал.
- •В чем суть бесфайловой организации внешней памяти. Опишите общую структуру страницы.
- •Выделяют четыре типа страниц:
- •Вопросы управления внешней памятью при бесфайловой организации внешней памяти.
- •2.Опишите языковую компоненту субд.
- •8. Контрольные вопросы по разделу «Особенности объектно-ориентированных субд»
- •Перечислите побудительные мотивы к началу исследований по созданию оосубд.
- •Каковы особенности объектной модели данных.
- •Каковы достоинства и недостатки оосубд.
- •Поддержка сложных объектов,
- •Поддержка динамических изменений определений классов,
- •Полная интеграция с объектно-ориентированными системами программирования.
- •В чем основные отличия оосубд от орсубд.
- •Отображение классов на таблицы. Способы реализации наследования в орсубд.
- •9. Контрольные вопросы по разделу «Вопросы распределенных баз данных»
- •Перечислите основные стратегии распределения данных, их достоинства и недостатки.
- •Перечислите проблемы распределенных баз данных.
- •Перечислите свойства транзакций. Варианты завершения транзакции.
- •Сформулируйте понятие расписания. Приведите примеры рассогласования.
- •Управление блокированием. Перечислите основные методы синхронизации распределенных
Опишите набор специальных операций реляционной алгебры.
проекция, выборка, соединение, деление.
Выборка (сокращенное название операции - Θ (тета) - выборка):
S
WHERE XΘY,
где
Θ ={<, ≤, =, ≠, ≥,>}.
Θ - выборкой из отношения S по атрибутам X и Y называется отношение, имеющее тот же заголовок, что и отношение S, и тело, содержащее множество всех кортежей отношения S таких, для которых проверка условия «XΘY» дает значение «истина». Ясно,что атрибуты X и Y должны быть определены на одном и том же домене, а операция на этом домене должна иметь смысл.
На практике эта операция используется, как правило, в модификации, когда вместо X или Y указано скалярное значение, чаще всего в форме
S WHERE XΘC, где C - литеральная константа.
В результате выполнения этого оператора получается «горизонтальное» подмножество исходного отношения.
Пример 3. Пусть задано отношение S (поставщики)
S
Номер |
Фио |
Город |
S01 |
Иванов |
Томск |
S02 |
Петров |
Томск |
S03 |
Сидоров |
Кемерово |
S04 |
Кузнецов |
Барнаул |
S05 |
Быков |
Омск |
Результатом выполнения операции S WHERE Город = «Томск», будет отношение
Номер |
Фио |
Город |
S01 |
Иванов |
Томск |
S02 |
Петров |
Томск |
В указанной форме оператор выборки включает только простое сравнение. Однако, благодаря тождествам:
S WHERE Q1 AND Q2 ≡ (S WHERE Q1) INTERSECT (S WHERE Q2)
S WHERE Q1 OR Q2 ≡ (S WHERE Q1) UNION (S WHERE Q2)
S WHERE NOT Q ≡ S MINUS (S WHERE Q)
оператор выборки можно расширить до формы, в которой условие в выражении WHERE будет содержать произвольное число логических сочетаний простых сравнений.
2. Проекция. Проекцией отношения S по атрибутам X1, X2, …, Xn и обозначаемой как
S[X1, X2, …, Xn],
называется отношение с заголовком {X1, X2, …, Xn}и телом, содержащим множество всех кортежей {X1:x1, X2:x2, …, Xn:xn} таких, для которых в отношении S значение атрибута X1 равно x1, атрибута X2 равно x2, …, атрибута Xn равно xn.
Пример 4. Результатом выполнения операции S[Фио] для отношения S предыдущего примера будет отношение
Фио |
Иванов |
Петров |
Сидоров |
Кузнецов |
Быков |
Таким образом, операция проекции строит «вертикальное» подмножество искомого отношения, то есть, подмножество, получаемое исключением всех атрибутов, не указанных в операторе, с последующим удалением дублируемых кортежей.
Замечание. Некорректное применение операции проекции может привести к потере информации; для нашего примера такая ситуация могла бы возникнуть, если в отношении S хранились бы сведения о двух разных поставщиках с одинаковой фамилией.
3. Естественное (экви) соединение. Пусть отношения S и P имеют заголовки{X1, X2, …, Xm, Y1, Y2, … , Yn} и {Y1, Y2,… , Yn, Z1, Z2, … , Zp, соответственно, причем атрибуты {Y1, Y2, … , Yn}по именам и доменам в обоих отношениях совпадают.
Рассмотрим три совокупности {X1, X2, …, Xm}, {Y1, Y2, … , Yn} и { Z1, Z2, … , Zp} как три составных атрибута {X}, {Y} и {Z}. Тогда естественным соединением отношений S и P
S JOIN P
называется отношение с заголовком {X, Y, Z} и телом, содержащим множество всех кортежей {X:x, Y:y, Z:z} таких, для которых в отношении S значение атрибута X равно x, атрибута Y равно y, а в отношении P значение атрибута Y равно y, а атрибута Z равно z.
Замечание. При отсутствии общих атрибутов у исходных отношений S и P естественное соединение эквивалентно декартовому произведению.
Пример 5. Пусть заданы два отношения S (поставщики) и P (детали)
S
Ном_пост |
Фио |
Город |
S01 |
Иванов |
Томск |
S02 |
Петров |
Томск |
S03 |
Сидоров |
Кемерово |
S04 |
Кузнецов |
Барнаул |
S05 |
Быков |
Омск |
P
Ном_дет |
Назв_дет |
Цвет |
Вес |
Город |
P01 |
Вентиль |
Белый |
200 |
Томск |
P02 |
Колено |
Черный |
500 |
Томск |
P03 |
Втулка |
Желтый |
50 |
Кемерово |
P04 |
Кран |
Белый |
600 |
Барнаул |
P05 |
Смеситель |
Белый |
700 |
Барнаул |
P06 |
Труба |
Черный |
1000 |
Омск |
Результатом (S JOIN P) соединения этих двух отношений будет отношение
Ном_пост |
Фио |
Город |
Ном_дет |
Назв_дет |
Цвет |
Вес |
S01 |
Иванов |
Томск |
P01 |
Вентиль |
Белый |
200 |
S01 |
Иванов |
Томск |
P02 |
Колено |
Черный |
500 |
S02 |
Петров |
Томск |
P01 |
Вентиль |
Белый |
200 |
S02 |
Петров |
Томск |
P02 |
Колено |
Черный |
500 |
S03 |
Сидоров |
Кемерово |
P03 |
Втулка |
Желтый |
50 |
S04 |
Кузнецов |
Барнаул |
P04 |
Кран |
Белый |
600 |
S04 |
Кузнецов |
Барнаул |
P05 |
Смеситель |
Желтый |
700 |
S05 |
Быков |
Омск |
P06 |
Труба |
Черный |
1000 |
Очевидно, что соединение может производиться не по одному, а по нескольким атрибутам.
Пример 6. Пусть заданы два отношения
R1 R2
-
A
B
C
a1
b1
c1
a1
b2
c2
a2
b1
c1
a3
b2
c2
B |
C |
D |
b1 |
c1 |
d1 |
b1 |
c1 |
d2 |
b2 |
c2 |
d2 |
Результатом выполнения операции (R1 JOIN R2) будет являться отношение
A |
B |
C |
D |
a1 |
b1 |
c1 |
d1 |
a1 |
b1 |
c1 |
d2 |
a1 |
b2 |
c2 |
d2 |
a2 |
b1 |
c1 |
d1 |
a2 |
b1 |
c1 |
d2 |
a3 |
b2 |
c2 |
d2 |
Операция естественного соединения применяется к паре отношений R1 и R2, обладающих (возможно составным) общим атрибутом S (т.е. атрибутом с одним и тем же именем и определенным на одном и том же домене). Пусть AB обозначает объединение заголовков отношений R1 и R2. Тогда естественное соединение R1 и R2 - это спроецированный на AB результат эквисоедиения R1 и R2 по A.S и B.S. Если вспомнить определение внешнего ключа отношения, то должно стать понятно, что основной смысл операции естественного соединения - возможность восстановления сложной сущности, декомопозированной (расчлененной) по причине требования первой нормальной формы. Операция естественного соединения не включается прямо в состав набора операций реляционной алгебры, но имеет очень важное практическое значение.
4. Θ-соединение (условное соединение). Это операция соединения двух отношений на основе некоторых условий, отличных от эквивалентности.
Пусть отношения S и P не имеют общих имен атрибутов и условие Θ определяется аналогично операции выборки. Тогда Θ-соединением отношения S по атрибуту X с отношением P по атрибуту Y называется результат вычисления выражения
(S TIMES P) WHERE XΘY,
то есть, результирующее отношение строится путем выполнения операции выборки по условию для декартова произведения исходных отношений.
Очевидно, что атрибуты X и Y должны быть определены на одном и том же домене и операция Θ должна иметь на этом домене смысл.
Пример 7. Пусть имеются два отношения S (потоки студенческих групп) и P (аудитории).
Ном_ауд |
Вмест_ауд |
302 |
140 |
128 |
50 |
336 |
20 |
432 |
110 |
-
Ном_потока
Кол_студ
001
100
002
30
P
Результатом выполнения операции Θ-соединения отношений S и P по условию
ВМЕСТ_АУД > КОЛ_СТУД
(вместимость аудитории должна быть больше количества студентов в потоке) будет отношение
Ном_потока |
Кол_студ |
Ном_ауд |
Вмест_ауд |
001 |
100 |
302 |
140 |
001 |
100 |
432 |
110 |
002 |
30 |
302 |
140 |
002 |
30 |
128 |
50 |
002 |
30 |
432 |
110 |
5. Деление. Пусть заголовки отношений S (делимое) и P (делитель) имеют вид{X1, X2, …, Xm, Y1, Y2, … , Yn}и {Y1, Y2, … , Yn},соответственно, причем атрибуты {Y1, Y2, … , Yn}в обоих отношениях представлены одинаковыми именами и определены на одних и тех же доменах. Будем рассматривать выражения{X1, X2, …, Xm} и {Y1, Y2, … , Yn}как два составных атрибута {X} и {Y}. Тогда результатом деления отношения S на отношение P, обозначаемое как
S DEVIDEBY P,
называется отношение с заголовком {X} и телом, содержащим множество всех кортежей{X:x} таких, что для каждого xЄX существует множество кортежей {X:x, Y:y} отношения S таких, у которых множество составляющих {Y:y} включает все кортежи {Y:y} отношения P. Или нестрого: результат содержит такие X-значения из отношения S, для которых соответствующие Y-значения включают все Y-значения из отношения P.