Классика баз данных - статьи

       

Выразимые, именованные и хранимые отношения


С банком данных связаны два набора отношений: множество именованных

и множество выразимых отношений. Множество именованных отношений составляют те отношения, которые сообщество пользователей может идентифицировать посредством простых имен (или идентификаторов). Отношение R входит во множество именованных отношений после его объявления пользователем, обладающим соответствующими правами; оно выходит из этого множества, когда этот пользователь отменяет объявление R.

Множество выразимых отношений включает все отношения, которые могут быть описаны выражениями языка данных. Такие выражения состоят из простых имен отношений из множества именованных отношений, имен поколений, ролей и доменов, логических связок, кванторов исчисления предикатов

и некоторых символов константных отношений, таких как > и =. Множество именованных отношений является подмножеством множества выразимых отношений, как правило, очень малым подмножеством.

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

Одна из основных проблем, с которыми сталкивается разработчик системы данных, обеспечивающей реляционную модель для своих пользователей, – определение класса внутренних представлений, которые должны поддерживаться. В идеале, разнообразие допустимых представлений данных должно быть достаточным, чтобы удовлетворить требования к производительности при каждой установке системы. Слишком большое разнообразие приведет к ненужным накладным расходам внешней памяти и непрерывному повторному толкованию описаний уже используемых структур.

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



Содержание раздела