Процедура конструирования
Эта процедура представляет собой средство получения канонической схемы; она начинается с сопоставления представлений различных конечных пользователей о данных. Такая процедура очень ценна для администратора базы данных или конструктора логической базы данных.
Мы уже обращали внимание на то, что в большинстве своем базы данных часто подвержены изменениям в связи с добавлением новых приложений и новых представлений о данных. Тем более ценно, если рассматриваемая процедура окажется тем средством, с помощью которого можно будет включать новую подсхему в существующую схему.
Каноническая форма данных, описанная в этой главе, не зависит от того, каким образом эти данные представлены: в виде иерархических, реляционных или каких-либо других структур. Для получения рабочей схемы требуется дополнительный этап преобразования канонической формы данных в такую структуру, которая обрабатывается используемым программным обеспечением. Этот дополнительный этап является достаточно простым.
На первом этапе получения канонической формы данных мы будем игнорировать вопросы машинной реализации. Редко используемые связи между данными будут обрабатываться точно так же, как и часто используемые. Полученная в результате минимальная структура данных затем исследуется снова с целью выявления частот, с которыми используются различные пути обращения к данным, а также для выделения путей обращения к данным в реальном времени. Вместе с тем нередко возникает необходимость преобразования полученной ранее минимальной структуры из-за различных ограничений, накладываемых используемым программным обеспечением.
Следует отметить, что в настоящее время не все пакеты прикладных программ поддерживают канонические структуры данных.
Если используемое программное обеспечение не позволяет обрабатывать канонические структуры, то это может помешать дальнейшему развитию базы данных. Возможность получения канонической структуры данных на основе анализа совокупности приложений может служить одним из критериев сравнения имеющихся пакетов прикладных программ.
Пути использования данных
Содержащая некоторую совокупность данных база данных может быть сконструирована независимо от того, как, эти данные будут, использоваться. В настоящее время структура баз данных с целью повышения производительности системы, как правило, разрабатывается с учетом требований приложений. В этой главе мы опишем, как это делается. Несмотря на то что структура данных конструируется с учетом использования данных, она обеспечивает независимость каждого конкретного приложения и представляет внутренние свойства данных. Получаемая в результате выполнения процедуры конструирования структура данных может удовлетворять требованиям возможных новых приложений, которые еще не определены.
В реляционной модели пути использоеания данных не определяются, т. е. если печатают, например, шапку заказа на закупку, то это не значит, что требуется печатать также детали заказа:
Сторонники реляционных моделей утверждают, что преимущество этих моделей по сравнению с другими моделями данных состоит в том, что в них из логической модели исключены пути использования данных, вследствие чего они могут удовлетворять любым вновь возникшим требованиям пользователей. Однако для того чтобы реализовать реляционную базу данных и достичь удовлетворительной производительности, необходима информация атом, какие пути используются для связи одного типа кортежа с другим.
Таким образом, существует две возможности: логическое представление данных может содержать информацию о путях использования групп элементов данных (сегментов, записей) или эта информация может быть не включена в логическое представление данных. В настоящее время программное обеспечение в большинстве случаев включает эту информацию, так как содержит средства обслуживания некоторых конкретных структур древовидных, сетевых, наборов и так далее. В том случае, если логическое представление данных исключает информацию о путях использования, как, например, в реляционной базе данных, то для обеспечения хорошей производительное. Эти системы такую информацию должно содержать физическое представление данных.