- •Раздел 1.
- •Основы построения баз данных
- •Самостоятельная работа №1 (6 часов)
- •Тема: Этапы развития баз данных. Языковые средства банка данных. Роль субд.
- •Основные этапы развития баз данных
- •Первый этап — базы данных на больших эвм
- •Второй этап - эпоха персональных компьютеров
- •Третий этап - распределенные базы данных
- •Четвертый этап - перспективы развития систем управления базами данных
- •Языковые средства банка данных
- •Пользователи банков данных
- •Контрольные вопросы
- •Самостоятельная работа №2 (8 часов)
- •Общий обзор средств для работы с базами данных
- •Как связаны друг с другом компоненты для работы с базами данных
- •Назначение bde Administrator
- •Создание псевдонима бд
- •Параметры баз данных типа standard
- •Установки параметров драйвера paradox
- •Установки параметров драйвера interbase
- •Контрольные вопросы
- •Самостоятельная работа №3 (8 часов)
- •Архитектура базы данных. Физическая и логическая независимость
- •Классификация субд
- •Способы разработки и выполнения приложений
- •Контрольные вопросы
- •Самостоятельная работа №4 (8 часов)
- •Классификация моделей данных
- •Основные особенности систем, основанных на инвертированных списках
- •Файловые структуры, используемые для хранения данных в бд
- •Этапы доступа к бд
- •Компоненты модели данных
- •Контрольные вопросы
- •Самостоятельная работа №5 (8 часов)
- •Методы хранения данных и доступа к ним
- •Последовательный метод
- •Прямой метод
- •Индексные методы
- •Индексно-последовательный метод
- •Индексно-произвольный метод
- •Инвертированные списки
- •Контрольные вопросы
- •Раздел 2. Проектирование и использование баз данных самостоятельная работа №6 (8 часов)
- •Этапы проектирования баз данных
- •Внешний уровень — подготовительный этап инфологического проектирования
- •Составные части инфологической модели
- •Требования и подходы к инфологическому проектированию
- •Контрольные вопросы
- •Самостоятельная работа №7 (8 часов)
- •1. Отсутствие кортежей-дубликатов
- •2. Отсутствие упорядоченности кортежей
- •3. Отсутствие упорядоченности атрибутов
- •4. Атомарность значений атрибутов
- •Нормализация - за и против
- •Контрольные вопросы
- •Самостоятельная работа №8 (8 часов)
- •Ссылочная целостность и каскадные воздействия
- •Контрольные вопросы
- •Раздел 3 Структурированный язык запросов sql самостоятельная работа №9 (12 часов)
- •Роль sql
- •Манипулирование реляционными данными
- •Контрольные вопросы
- •Самостоятельная работа №10 (12 часов)
- •Выбор данных с помощью команды select.
- •Объединение таблиц. Использование агрегатных функций
- •Реализация вложенных запросов
- •Модификация данных. Операторы insert, delete, update
- •Контрольные вопросы
- •Список рекомендуемой литературы
Основные особенности систем, основанных на инвертированных списках
К числу наиболее известных и типичных представителей таких систем относятся Datacom/DB компании Applied Data Research, Inc. (ADR), ориентированная на компьютеры фирмы IBM, и Adabas компании Software AG.
Организация доступа к данным на основе инвертированных списков используетсяпрактически во всех современных реляционных СУБД, но в этих системах пользователи не имеют непосредственного доступа к инвертированным спискам (индексам).
Структуры данных
База данных, организованная с помощью инвертированных списков, похожа на реляционную БД, но с тем отличием, что хранимые таблицы и пути доступа к ним видны пользователям. При этом:
строки таблиц упорядочены системой в некоторой физической последовательности;
физическая упорядоченность строк всех таблиц может определяться и для всей БД (так делается, например, в Datacom/DB).
для каждой таблицы можно определить произвольное число ключей поиска, для которых строятся индексы. Эти индексы автоматически поддерживаются системой, но явно видны пользователям.
Манипулирование данными
Поддерживаются два класса операторов:
1. Операторы, устанавливающие адрес записи, среди которых:
· прямые поисковые операторы (например, найти первую запись таблицы по некоторому пути доступа);
· операторы, находящие запись в терминах относительной позиции от предыдущей записи по некоторому пути доступа.
2. Операторы над адресуемыми записями
Примеры операторов:
· LOCATE FIRST - найти первую запись таблицы T в физическом порядке; возвращает адрес записи;
· LOCATE FIRST WITH SEARCH KEY EQUAL - найти первую запись таблицы T с заданным значением ключа поиска K; возвращает адрес записи;
· LOCATE NEXT - найти первую запись, следующую за записью с заданным адресом в заданном пути доступа; возвращает адрес записи;
· RETRIVE - выбрать запись с указанным адресом;
· UPDATE - обновить запись с указанным адресом;
· DELETE - удалить запись с указанным адресом;
· STORE - включить запись в указанную таблицу; операция генерирует адрес записи.
Ограничения целостности
Общие правила определения целостности БД отсутствуют. В некоторых системах поддерживаются ограничения уникальности значений некоторых полей, но в основном все возлагается на прикладную программу.
Типичным представителем (наиболее известным и распространенным) является Information Management System (IMS) фирмы IBM. Первая версия появилась в 1968 г.
Манипулирование данными
Примерами типичных операторов манипулирования иерархически организованными данными могут быть следующие:
· найти указанное дерево БД;
· перейти от одного дерева к другому;
· перейти от одной записи к другой внутри дерева (например, от группы - к первому студенту);
· перейти от одной записи к другой в порядке обхода иерархии;
· вставить новую запись в указанную позицию;
Как можно добавить новую запись к данным, уничтожить старые записи и при этом не нарушить системы адресации и поиска, а также сами структуры данных.
Укажем основные факторы, влияющие на физическую организацию данных для конкретных БД:
1. произвольная или последовательная обработка данных. Для определения вид обработки используют коэффициент активности файла (k)
k=z1/z , где z1 – число записей, считанных за 1 прогон; z - число записей, просмотренных за 1 прогон. Если k высок, то используют последовательную обработку, например при расчете заработной платы;
2. частота обращения к определенным записям;
3. время ответа (важно для систем реального времени);
4. способность к расширению (особенно, если добавляется записей больше, чем уничтожается);
5. возможность организации поиска по нескольким ключам.
Можно выделить следующие способы адресации (поиска нужной записи):
1. Последовательное сканирование файла с проверкой ключа каждой записи. Такой метод используется, если выбран последовательный метод обработки данных или используется файл последовательного доступа. Требует много времени.
2. Блочный поиск. Если записи упорядочены по ключу, то при сканировании не требуется чтение каждой записи. Считывается первая запись блока и ее ключ сравнивается с ключом искомой записи. А далее или просматриваются все записи данного блока или выбирается первая запись следующего блока.
3. Преобразование ключа в адрес - самая быстрая организация поиска. Сейчас применяется технология хеширования – технология быстрого доступа к хранимой записи на основе вычисления специальной функции от заданного значения некоторого поля. Это значение и является адресом для записи.
4. Поиск по индексу. Первичный индекс – индекс, использующий в качестве входной информации первичный ключ. В индексном файле запись состоит из индекса и указателя. Сначала проводится поиск в индексе, а потом по указателю обращаемся к основному файлу с записями. Эффективно, быстро, но требуется память для хранения индекса.
5. Бинарный (двоичный) поиск для записей, упорядоченных по ключу.
6. Поиск по В-дереву.
Исторически первыми системами хранения и доступа были файловые структуры и системы управления файлами (СУФ), которые фактически являлись частью операционных систем. СУБД создавала над этими файлами свою надстройку, которая позволяла организовать всю совокупность файлов таким образом, чтобы она работала как единое целое и получала централизованное управление от СУБД. При этом непосредственный доступ осуществлялся на уровне файловых команд, которые СУБД использовала при манипулировании файлами.
Однако механизмы буферизации и управления файловыми структурами не приспособлены для решения задач собственно СУБД, так как создавались для традиционной обработки файлов, и с ростом объемов хранимых данных они стали неэффективными для использования СУБД. Тогда постепенно произошел переход от базовых файловых структур к непосредственному управлению размещением данных на внешних носителях самой СУБД. При этом механизмы, применяемые в файловых системах, перешли во многом и в новые системы организации данных во внешней памяти, называемые чаще страничными системами хранения информации. Любое упорядоченное расположение данных на диске, называется структурой хранения. На рис. 2.5 приведена классификация структур хранения информации в БД.
Рисунок.
2.5 - Классификация структур хранения
информации в БД
