- •Определение бд и БнД. Состав и структура БнД. Назначение основных компонентов БнД.
- •Понятие хорошо и слабо структурированных данных. Основные характеристики документальных и фактографических бд.
- •Понятие ключа и индекса. Прямая и инвертированная формы индекса. Примеры.
- •Характерные свойства и отличия линейных и нелинейных структур данных. Примеры.
- •Типология простых запросов. Примеры.
- •Сходство и отличие процессов обработки данных средствами файловой системы и субд.
- •Логические модели данных.
- •Реляционная модель данных
- •Операции реляционной алгебры. Определение операций соединения и пересечения через пять базовых операций.
- •Основные этапы эволюции систем обработки данных. Основные отличия в концепциях обработки данных разных этапов.
- •Назначение и особенности этапов проектирования бд.
- •Системный анализ предметной области. Методика сбора фактов. Методика интеграции представлений.
- •Концептуальные модели данных. Модель «сущность-связь». Сущности, атрибуты, связи. Сущность-связи и мощности связей. Примеры.
- •Номер брони*
- •Номер билета*
- •15. Получение реляционной схемы из er-диаграммы. Примеры.
- •16. Функциональная зависимость. Детерминант функциональной зависимости. Полная и частичная функциональная зависимость. Примеры.
- •17. Понятие функциональной, транзитивной и многозначной зависимости. Примеры.
- •18. Нормализация отношений. Первая, вторая, третья нормальные формы. Примеры.
- •19. Нормализация отношений. Нормальная форма Бойса-Кодда. Примеры.
- •20. Нормализация отношений. Четвертая и пятая нормальные формы. Примеры.
- •21. Нормализация отношений. Процедура нормализации. Примеры применения процедуры нормализации к универсальному отношению.
- •22. Языки определения данных и манипулирования данными. Назначение. Функциональные возможности (на примере sql).
- •23. Sql. Основные понятия и компоненты.
- •24. Sql. Ограничения целостности. Примеры.
- •25. Sql. Команда изменения структуры таблицы. Примеры.
- •1. Добавление столбца.
- •2. Модификация столбца.
- •3. Удаление столбца.
- •4. Добавление ограничений на уровне таблицы.
- •2. Изменение данных – команда update
- •Удаление данных – команда delete
- •27. Sql. Команда создания таблицы. Примеры.
- •28. Sql. Извлечение данных (команда select). Примеры.
- •29. Sql. Типы соединений таблиц в команде select.
- •30. Sql. Команда select с группировкой данных. Групповые операции. Примеры.
- •31. Представление операций реляционной алгебры с помощью sql.
- •32. Целостность бд. Понятие транзакции. Модели транзакций.
- •33. Виды конфликтов при параллельном выполнении транзакций. Сериализация транзакций. Захват и освобождение объекта.
- •34. Технологии обработки данных. Функции «типового» приложения обработки данных.
- •35. Архитектуры распределенной обработки данных.
- •36. Архитектуры обслуживания клиентских запросов. Достоинства и недостатки.
- •37. Хранилища данных. Основные отличия olap и oltp-систем.
- •38. Трехуровневая архитектура схем баз данных в субд.
- •39. Физические модели баз данных. Типы индексов.
- •40. Интеграция xml-документов и реляционных бд на примере Transact-sql.
Понятие ключа и индекса. Прямая и инвертированная формы индекса. Примеры.
Ключевая запись или ключ - значение (элемент данных), используемое для идентификации или определения адреса записи (логическое определение).
Ключ сцепленный (составной) – несколько элементов данных, которые в совокупности обеспечивают уникальность идентификации каждой записи набора данных.
Первичный ключ - идентифицирует запись единственным образом
Вторичный ключ – идентифицирует некоторую группу записей объединенных одним свойством
Индекс – физическая реализация ключа, обеспечивающая доступ к записям, соответствующим отдельным значениям ключа.
Логически индекс есть бинарное отношение I(v,a), где v – значение атрибута, а a – список адресов элементов хранения (записей, кортежей, документов), соответствующих данному значению атрибута. Для повышения эффективности поиска отдельных значений и слияния/пересечения списков значения v и адреса элементов в списке a хранятся в упорядоченном виде, что обеспечивает применение процедур быстрого поиска.
Индекс I(v,a) часто называют инвертированным индексом. Каждый элемент а инвертированного индекса называется инвертированным списком.
Прямая реализация индекса представляет собой расширение бинарного отношения до совокупности записей, состоящих из 2-ух полей – значения атрибута и адреса размещения одного элемента хранения. Отдельное значение атрибута повторяется в индексе столько раз, сколько оно встречается в файле данных, а длина индекса (в записях) совпадает с длиной файла данных.
В инвертированной форме:
В случае, когда списки а достаточно длинные, инвертированный индекс хранится в двух разных файлах, связанных указателями. Такая организация требует меньше памяти для хранения значений ключей и поиск в ней более эффективен.
Способы реализации указателя пересылок:
- Указанием ссылки на первый и последний адреса размещения элементов для отдельного ключевого значения;
- Заданием ссылки на адрес размещения первого элемента и длиной списка адресов.
Характерные свойства и отличия линейных и нелинейных структур данных. Примеры.
К линейным структурам относятся массивы и последовательности, таблицы. Порядок следования (и, соответственно, выборки) элементов таких структур имеет линейный характер и соответствует порядку расположения элементов в памяти: один за другим без каких-либо промежутков. Адрес элемента соответствует его положению и определяется индексом – порядковым номером элемента в последовательности размещения. К элементу имеется прямой доступ, если известен его индекс. Особенностью линейной структуры является то, что при последовательной организации (размещении) она допускает возможность прямого доступа к произвольному элементу, поскольку условие однородности (однотипности) предполагает, что все элементы занимают расположенные строго последовательно области одинакового размера, что и позволяет достаточно просто вычислять значение физического адреса элемента по значению его индекса.
Линейные — структуры данных, в которых переход от одного элемента данных к другому не зависит от каких-либо логических условий, т.е. в линейных структурах используются лишь безусловные связи элементов.
Массив – совокупность однотипных элементов, размер известен заранее
Последовательность – так же, как и массив, представляет собой совокупность однотипных элементов. Однако число элементов до размещения неизвестно.
Таблица – это последовательности, обычно представляемые строками – совокупностями разнотипных элементов. Или, иначе, таблица – это множество записей, каждая из которых представляет набор поименованных полей.
Нелинейные — структуры данных, в которых переход от одного элемента данных к другому может зависеть от выполнения некоторого логического условия, т.е. в нелинейных структурах могут использоваться условные связи элементов. В качестве примеров нелинейных структур рассмотрим списки, деревья и сети.
Списки – совокупность однотипных элементов. Каждый элемент имеет ссылку на следующий элемент.
Сети – каждый элемент связан с каждым.
