- •Лекция 1 Глава 1 основные понятия баз данных
- •Лекция 2 проблемы обработки информации
- •Методы и средства обработки данных
- •Лекция 3 понятие базы данных
- •Лекция 4 реляционная модель базы данных
- •Лекция 5 инфологическое моделирование данных сущность-связь
- •Модель сущность-связь
- •Сущность
- •Атрибут
- •Лекция 6 связи между сущностями
- •Ключ, первичный ключ, внешний ключ
- •Имя роли
- •Лекция 7-8 реляционный подход
- •Основные понятия
- •Формальное определение
- •Связывание таблиц реляционных баз данных
- •Контроль целостности связей
- •Лекция 9 физическая организация данных в соответствии с реляционным подходом
- •Реляционная модель и модель сущность - связь
- •Языки запросов к реляционнам базам данных
- •Лекция 10-11 принципы организации хранения данных устройства хранения данных
- •Принципы хранения данных на вторичных устройствах
- •Неупорядоченные последовательные файлы
- •Упорядоченные последовательные файлы
- •Хешированные файлы
- •Лекция 12-13 открытая адресация
- •Несвязанная область переполнения
- •Связанная область переполнения
- •Многократное хеширование
- •Динамическое хеширование
- •Лекция 14 индексированные файлы
- •Индексно-последовательный файл
- •Вторичный индекс
- •Многоуровневые индексы
- •Лекция 15 деревья
- •Языки запросов к базе данных
- •Специальные реляционные операции (операции обработки данных)
- •Дополнительные операции
- •Операции изменения тела отношения
- •Правила записи выражений реляционной алгебры
- •Реляционное исчисление
Принципы хранения данных на вторичных устройствах
База данных во вторичном устройстве хранения организована в виде одного или нескольких файлов, каждый из которых состоит из одной или нескольких записей, а каждая запись — из одного или нескольких полей. Запись соответствует некой сущности, а поле — атрибуту.
Когда пользователь вводит запрос для извлечения данных из БД, СУБД отображает требуемые для обработки запроса логические записи на одну или несколько физических записей, а затем помещает эти физические записи в буфер СУБД в первичном устройстве хранения с помощью подпрограмм доступа к файлам операционной системы.
Физическая запись является единицей обмена данными между вторичным и первичным устройствами хранения. Обычно физическая запись состоит из нескольких логических записей, хотя иногда, в зависимости от размера, одна логическая запись может соответствовать одной физической записи. Более того, одна логическая запись может даже соответствовать нескольким физическим записям. Иногда вместо понятия "физическая запись" используется термин страница.
Порядок хранения записей в файле и доступа к ним зависит от структуры, или организации, файла.
Организация файла - физическое распределение данных файла по записям и страницам на вторичном устройстве хранения.
Существуют следующие основные типы организации файлов. 1. Последовательная неупорядоченная организация файла обозначает произвольное неупорядоченное размещение записей на диске. 2. Последовательная упорядоченная организация предполагает размещение записей в соответствии со значением указанного поля. 3. Хешированные записи хранятся в соответствии со значением некоторой хеш-функции.
Для каждого типа организации файлов используется соответствующий набор методов доступа.
Метод доступа - действия, выполняемые при сохранении или извлечении записей из файла.
Неупорядоченные последовательные файлы
Неупорядоченный последовательный файл (sequential file), куча (heap) способ хранения, при котором записи размещаются в файле в том порядке, в котором они в него добавляются. Каждая новая запись помещается на последнюю страницу файла, а если на последней странице для нее не хватает места, то в файл добавляется новая страница.
Преимущество. Эффективное выполнение операции добавления (вставки).
Недостатки. 1. Для доступа к записям необходимо выполнение линейного поиска, который заключается в последовательном считывании всех страниц файла до тех пор, пока не будет найдена нужная запись. 2. Для удаления записи сначала потребуется извлечь нужную страницу, потом удалить нужную запись, а после этого снова сохранить эту страницу на диске. Причем пространство удаленных записей повторно не используется. Это означает, что файлы типа "куча" требуют периодической реорганизации, с целью освобождения неиспользуемого пространства, образовавшегося на месте удаленных записей.
Последовательные файлы лучше всех остальных типов файлов подходят для выполнения загрузки большого объема данных.
Упорядоченные последовательные файлы
Записи в файле можно отсортировать по значениям одного или нескольких полей и таким образом образовать набор данных, упорядоченный по некоторому ключу. Поле (или набор полей), по которому сортируется файл, называется полем упорядочения.
Преимущество. Эффективный поиск (бинарный) по значениям полей сортировки. Выполняется с учетом разбиения логических полей по страницам. В общем случае бинарный поиск эффективнее линейного, однако этот метод чаще применяется для поиска данных в первичной, а не во вторичной памяти.
Недостаток. Операции вставки и удаления записей в упорядоченном файле усложняются необходимостью поддерживать установленный порядок записей Поскольку вставка записи в файл может оказаться очень длительной процедурой, часто используется временный неотсортированный файл, который называется файлом переполнения (overflow file). При этом все операции вставки выполняются в файле переполнения, содержимое которого периодически сливается с основным отсортированным файлом. при этом операции вставки выполняются более эффективно, но при усложняются операции извлечения данных.
