Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kolokvium / MARTIN3.DOC
Скачиваний:
43
Добавлен:
19.04.2013
Размер:
92.67 Кб
Скачать

Последовательность записей

Для некоторых представлений пользователя о данных очень важ­ной является та последовательность, в которой представляются дан­ные для прикладной программы или воспроизводятся на терминале. Однако каноническая схема не указывает последовательность, соглас­но которой записи запоминаются.

В общем случае устанавливать последовательность записей в кано­нической схеме нежелательно, так как различным приложениям могут потребоваться записи в разной последовательности.

Например, в базе данных названий книг одному приложению ну­жен логический файл названий в алфавитном порядке, другому - упорядоченность по фамилиям авторов, третьему - по индексу биб­лиотеки конгресса. Упорядочивание по различным признакам может определяться вторичными ключами (блоками, снабженными двойной связью с элементом НАЗВАНИЕ-КНИГИ).

При преобразовании канонической схемы в физическое представ­ление данных необходимо устанавливать последовательность записей. Средство определения последовательности должно быть частью фи­зического, а не логического описания данных. В некоторых языках описания логических данных существуют операторы, определяющие порядок расположения записей. Эта информация должна добавляться при преобразовании канонической схемы в логическую, поддерживае­мую программным обеспечением. Сторонники реляционных баз дан­ных утверждают, что последовательность кортежей не должна быть частью описания логических данных.

Три уровня автоматизации

Можно выделить три уровня автоматизации, применяемые в языках пользователя базой данных:

1. Исчисление - Высший уровень автоматизации. Пользователь не­посредственно обращается к машине, и машина его понимает.

2. Алгебра. Пользователь вводит набор операций высокого уровня над отношениями (или другими группами данных).

3. Кортеж. Низший уровень. Программист работает с записями или кортежами.

В последнее время стал популярным термин «в сопровождении программиста». Под этим понимается процесс оперативного нахожде­ния в базе нужной записи или сегмента, когда пользователь, не снабженный аппаратом исчисления или алгебры (или другим средством манипулирования высокого уровня), может добиться успеха только с помощью программиста. Программист необходим в такой системе в качестве посредника между запросом пользователя и машиной для формирования отдельных шагов работы.

Использование исчисления можно сравнить с возможностью сесть в такси и сказать водителю: «Отвезите меня в гостиницу Плаца». Сопровождение программиста означает, что в машину пришлось бы посадить еще одного человека, который бы говорил водителю: «Нале­во ... через три квартала - направо...»

Автоматическое сопровождение (например, с применением средств исчисления) является требованием времени. Заметим при этом, что использование операторов высокого уровня или автосопровождение существенно сложнее в базах с древовидной или сетевой структурой

(или с повторяющимися группами), чем в реляционной базе данных. Поэтому сторонники нормализация видят в ней ключ к дальнейшему повышению уровня автоматизации в программном обеспечении систем баз данных будущего.

Соседние файлы в папке Kolokvium