- •Реляционные базы данных
- •Табличное представление
- •Реляционные базы данных
- •Первые разработки
- •Повторяющиеся группы
- •Древовидные структуры
- •Добавления в нормализованной схеме
- •Размещение (номер-здания, номер-отдела)
- •Сетевые структуры
- •Процедура конструирования
- •Пути использования данных
- •Каноническая структура записей (сегментов)
- •Комбинированные овал-диаграммы
- •Устранение избыточности
- •Ключи и атрибуты
- •Вторичные ключи
- •Транзитивные зависимости
- •Отношения между ключами
- •Последовательность записей
- •Три уровня автоматизации
- •Недостатки
- •Заключение. Преимущества реляционной базы
Недостатки
Недостаток реляционных баз данных, на который часто указывают, - неэффективное использование ЭВМ. Выполнение операций соединения на современной аппаратуре, по-видимому, требует значительного времени. Если для небольших отношений эта проблема решается, то для коммерческих файлов, содержащих иногда сотни миллионов байт, она очень сложна.
Для решения проблемы эффективности важно уяснить, что отношения и операции над ними (такие, как СОЕДИНЕНИЕ) относятся к логическому представлению данных. Трудно себе представить, чтобы в диалоговых системах операция СОЕДИНЕННЕЕ реализовалась на физическом уровне. Аналогичные результаты здесь получаются с помощью указателей или индексов. В системах пакетной обработки данных физическая реализация операции СОЕДИНЕНИЕ допустима и может рассматриваться как аналог операции слияния для магнитных лент.
Способы физического размещения данных в реляционных системах следует выбирать так, чтобы наиболее эффективно исполнялись наиболее часто используемые операции, в то время как редко используемые операции могут быть менее эффективны (как это и делается в других типах систем управления базами данных).
Часто считают, что разработка реляционной базы может осуществляться независимо от представления данных ее пользователей. Неожиданно возникшее новое представление пользователя данных может быть легко обработано в реляционной базе, если требуемые для него данные уже в ней хранятся. Хотя это верно для логической структуры данных, на самом деле новое представление пользователя о структуре данных может обрабатываться на ЭВМ довольно неэффективно, поскольку физическая структура данных разрабатывалась с целью наилучшего обеспечения потребностей наиболее общих и важных приложений. Физическая структура во многом определяется задачами пользователя, если даже логическая структура данных и не зависит от них.
Эффективность системы управления реляционной базой данных будет очень сильно зависеть от используемых методов физической организации данных. Если эти методы хорошо подобраны и настроены на определенный режим использования, то эффективность рассматриваемой системы должна быть сравнима с другими системами управления базами данных.
Заключение. Преимущества реляционной базы
Перечислим преимущества реляционной базы, в частности базы. заданной в третьей нормальной форме (гл. 14)
1. Простота. Использование двумерных таблиц для представления большинства структур данных - самый простой способ работы с базами данных для неподготовленного или не очень опытного пользователя ·
2. Гибкость. Операции ПРОЕЦИРОВАНИЯ и СОЕДИНЕНИЯ позволяют разрезать и склеивать отношения; таким образом прикладные программисты могут получать разнообразные файлы в нужной им форме.
3. Точность. Направленные связи, ставшие обычным явлением в базах, могут быть опущены (фиг. 13.6). Отношения по своей природе обладают более точным смыслом и поддаются математически точным методам манипулирования с использованием таких средств, как алгебра отношений и исчисление отношений.
4. Секретность. Контроль секретности упрощается. Для каждого отношения задается правомерность доступа. Специфические в смысле секретности показатели (такие, как ЗАРПЛАТА в файле СЛУЖАЩИЙ) можно выделить в отдельные отношения с требованием проверки прав доступа: если право доступа не нарушено, показатель ЗАРПЛАТА может быть с помощью оператора соединения добавлен к другим атрибутам файла служащих [6).
5. Связность. Реляционное представление дает ясную картину взаимосвязей атрибутов из различных отношений и файлов.
6. Простота ведения. Как мы увидим в части 11 книги, физическое размещение двумерных файлов может оказаться намного проще, чем размещение древовидных и сетевых структур. С изобретением новых средств физической организации памяти, таких, как иерархическая система памяти (гл. 33) и ассоциативная память (гл. 36), использование нормализации сулит еще большие выгоды. Исключение сложных указателей связи в файле снижает требования к аппаратуре, разрабатываемой с ориентацией на ускоренный поиск.
7. Независимость данных. Как правило, структура базы должна допускать возможность ее роста, т. е. добавления новых атрибутов и отношений. Методы использования данных также изменчивы. Могут добавляться новые кортежи и удаляться старые. То же самое касается л элементов данных. При организации базы данных в нормализованной форме с независимым программным обеспечением реструктуризация данных не потребует изменения прикладных программ. Это особенно важно, если учесть, что стоимость разработки и ведения прикладных программ и файлов с ростом базы данных сильно возрастает; с ростом числа прикладных программ затраты на их ведение могут оказаться слишком большими. Независимость данных проще обеспечить в нормализованной базе, чем в случае древовидных и сетевых структур,
8. Язык манипулироеания данными. С помощью алгебры отношений или исчисления отношений можно построить простой и гибкий язык манипулирования данными. Для данных в виде неплоских структур язык манипулирования либо получается необоснованно сложным для пользователя, либо ограничен по своим возможностям.
9. Ясность. Логическая схема базы данных при изображении связей с помощью стрелок (выглядит ясной, пока количество стрелок невелико. В то же время конечной целью развития базы данных является включение в нее всех атрибутов, характеризующих, например, деятельность организации. На рис. 13.12 показан упрощенный пример файла, относящегося к работе фирмы. Рост базы данных приводит к такому увеличению числа связей, что их невозможно достаточно четко отразить на схеме с направленными связали. В то же время использование нормализованных структур данных удовлетворяет всем требованиям к возможности роста и модификации базы. Поэтому реляционная модель и тут является наилучшим решением.
Есть надежда, что программное обеспечение для систем управления базами данных будет в основном разрабатываться для нормализованных структур. Системы управления базами данных, изображенные на рис. 7.1-7.5, могли бы прекрасно работать со схемами, заданными в нормализованной форме. Для внедрения нормализованных баз может быть использовано большинство существующих вариантов программного обеспечения.