- •Определение базы данных, отличие бд от других информац. Систем
- •Категории бд, физич и логический уровни
- •Ограничение целостности на данные
- •Неизбыточность и непротиворечивость данных
- •Защита от программных и аппаратных сбоев
- •Принцип независимых данных. Технологическая основа его реализации.
- •Системы управления базой данных субд и её структура
- •Последовательность обработки данных в субд при выполнении запроса
- •Языковые средства работы с бд
- •Элементы данных. Определение свойства и примеры
- •Характеристика типов связей. Избыточная связь. Правила склейки
- •Древовидные модели данных, определение и примеры
- •Зависимость данных от структуры
- •Сетевые модели данных. Преобразование сложных сетевых моделей к простым сетевым и древовидным
- •Общие данные, данные пересечения, изолированные данные
- •Определение реляционной модели данных
- •Преобразование древовидной и сетевой схемы бд к реляционному виду. Преимущество реляционных бд .
- •Бинарные базисные операции реляционной алгебры и их эквиваленты в sql
- •Унарные базисные операции ра и их эквиваленты в sql
- •Дополнительный набор операций ра и их выражение через базисный набор.
- •Свойства операций ра и формальная оптимизация запросов.
- •Аномалии представления данных
- •Определение функциональной зависимости (фз) и её свойства
- •Правила для фз. Замыкание множества (фз). Первичный ключ
- •Декомпозиция отношений и свойства декомпозиций.
- •Вторая нормальная форма. Правила построения и преимущества.
- •Третья нормальная форма. Правила и построения преимущества.
- •Синтез схемы бд. Проблемы обобщенного ключа
- •Факторы, влияющие на выбор физической организации бд
- •Классификация методов доступа
- •Структура данных в индексно-последовательный метод доступа. Преимущества и недостатки при операциях.
- •Отведенное свободное пространство и область переполнения
- •Методы хеширования.
- •Обработка переполнений в методах хеширования.
- •Определение и структура в-дерева. Поиск и в-дереве
- •Дополнение записи в в-дерево.
- •Удаление записи в в-дереве.
- •Мультисписок: структура и поиск записи.
- •Инвертированный файл: структура и поиск записей.
-
Последовательность обработки данных в субд при выполнении запроса
-
Прикладная программа формирует запрос с указанием имени внешней схемы и пароля;
-
СУБД находит описание внешней схемы по имени, проверка пароля, заполнение шаблона запроса (перенос описания схемы в буфер);
-
СУБД в соответствии с поступившим запросом выполняет их формальную оптимизацию – т.е. СУБД просматривает схему БД и выделяет отношения и связи, необходимые для реализации запроса;
-
СУБД на основе физ. описания данных формирует условия для выборки порции данных из БД – выполняется физическая оптимизация запроса.
-
СУБД передает последовательность команд на чтение блоков операционной системе и передает ей управление. Либо формирует новые блоки.
-
ОС считывает блоки данных и записывает их в системные буфера. Затем передает управление СУБД.
-
СУБД преобразует данные в системных буферах в соответствии с описанием внешних схем.
Пункты 4–7 выполняются циклически. Лучше оптимизация запроса меньше циклов.
-
После завершения формирования данных запроса в системных буферах, СУБД передает их в рабочую область прикладной программы и передает ей управление.
При выполнении записи последовательность действий аналогичная, только поток данных направляется в обратную сторону.
-
Языковые средства работы с бд
Средств традиционных языков программирования недостаточно для реализации принципа независимости данных.
Язык Описания Данных – предназначен для формирования внешних схем, схем бд, и физ. описания БД. ЯОД физического уровня предназначен для формирования способов адресации и выбора методов доступа.
Язык Манипулирования Данными – предназначен для формирования запроса к БД, реализует стандартные операции – поиск, модификацию, удаление, дополнение.
С их помощью формируются команды для создания, описания и взаимодействия с БД.
Можно реализовать как часть языка программирования, либо как часть СУБД.
-
Расширение традиционного языка программирования
-
средствами библиотечных программ реализуется по CALL-интерфейсу (VISTA)
-
традиционный язык программирования дополняется синтаксически правильными конструкциями, реализующими ЯОД и ЯМД (ADABAS IBM-370 PL/1)
-
внутри текста программы оформляются независимые блоки на специализированном языке, которые предварительно обрабатывается предтранслятором
-
расширение СУБД средствами ЯОД и ЯМД - требуется специализированные языки расширить средствами традиционного языка программирования.
-
реализация независимых ЯОД и ЯМД. Требуется стандарт SQL, QBE
-
Элементы данных. Определение свойства и примеры
Элемент данных -- поименованное неизменяемое атомарное данное, не допускающие декомпозиции, с определенным типом и наименованием. Причем наименование должно однозначно определять семантику элемента данных без какого-либо контекста. Элемент данных должен иметь свойства:
-
не может содержать в себе другие элементы;
-
должен является первичной информацией;
-
не должен быть получаемым в БД в результате вычислений;
-
не должен быть изменяемым.