Автор: Пользователь скрыл имя, 13 Февраля 2011 в 15:14, реферат
Существующие недедуктивные системы форматированных данных предоставляют пользователям файлы с древовидной структурой или немного более общие сетевые модели данных. В разд. 1 обсуждаются недостатки таких моделей. Вводятся модель, основанная на n-арных отношениях, нормальная форма отношений базы данных и универсальный подъязык данных. В разд. 2 обсуждаются некоторые операции над отношениями (отличные от операций логического вывода), а затем эти операции применяются к проблемам избыточности и согласованности пользовательской модели.
1. Реляционная модель и нормальная форма
1.1. Введение
1.2. Зависимости данных в существующих системах
1.3. Реляционное представление данных
1.4. Нормальная форма
1.5. Некоторые лингвистические аспекты
1.6. Выразимые, именованные и хранимые отношения
2. Избыточность и согласованность
2.1. Операции над отношениями.
2.2. Избыточность
2.3. Согласованность
2.4. Заключение
Литература
2.1.5. Ограничение. Подмножество отношения является отношением. Один из способов воздействия отношения S на отношение R для получения подмножества R заключается в применении операции ограничения отношения R по отношению S. Эта операция является обобщением ограничения функции на подмножество ее области определения и определяется следующим образом.
Пусть L, M – списки индексных значений одинаковой длины такие, что L = i1, i2,..., ik, M = j1, j2, ..., jk, где k≤ степень R и k≤ степень S. Тогда L,M-ограничение R по S, обозначаемое как RL|MS, есть максимальное подмножество R' множества R, такое, что
πL(R') = πM (S).
Эта операция определена только в том случае, если применима операция равенства между элементами πih( R), с одной стороны и pjh(S), с другой, для всех h=1,2,...k.
Три отношения R, S, R', приведенные на рис.13, удовлетворяют соотношению R'=R(2,3)|(1,2)S.
R ( s р j ) | S( р j ) | R"( s р j ) |
1 a A | a A | 1 a A |
2 a A | c B | 2 a A |
2 a B | b B | 2 b B |
2 b A | ||
2 b B |
Рисунок 13. Пример ограничения
Теперь мы готовы рассмотреть различные применения этих операций над отношениями.
2.2. Избыточность
Необходимо различать избыточность во множестве именованных отношений и избыточность в хранимом множестве представлений. Здесь мы будем касаться в основном первого вида избыточности. Для начала нам необходимо точное понятие порождаемости для отношений.
Предположим, что θ – это набор операций над отношениями, и каждая операция обладает тем свойством, что вырабатывает единственное отношение из своих операндов (т.е. естественное соединение допустимо, а соединение нет). Отношение R является θ-выводимым из множества отношений S, если существует последовательность операций из набора θ, которая "в любой момент времени" производит R из элементов S. Фраза "в любой момент времени" присутствует потому, что мы рассматриваем изменяющиеся во времени отношения, и для нас представляет интерес свойство порождаемости, сохраняющееся в течение длительного периода времени. Для набора именованных связей в системах без логического вывода достаточный набор θ1 содержит следующие операции: проекция, естественное соединение, связывание и ограничение. Перестановка неуместна, а естественную композицию включать не требуется, т.к. ее можно получить путем естественного соединения с последующей проекцией. Для хранимого множества представлений достаточный набор θ2 должен включать перестановку и дополнительные операции, связанные с получением подмножеств и слиянием отношений, упорядочиванием и связыванием их элементов.
2.2.1. Сильная избыточность. Множество отношений является сильно избыточным, если оно содержит по меньшей мере одно отношение, некоторая проекция которого может быть порождена из других проекций отношений этого множества. Следующие два примера приведены для того, чтобы объяснить, почему сильная избыточность определяется таким образом, а также для демонстрации ее практического использования. В первом примере набор отношений состоит из одного следующего отношения:
служащий (номер, имя, номер_менеджера, имя_менеджера)
где номер является первичным ключом, и номер_менеджера является внешним ключом. Обозначим активный домен через Δt и предположим, что
Δt (номер_менеджера) ⊂ Δt (номер)
и
Δt (имя_менеджера) ⊂ Δt (имя)
в любой момент времени t. В этом случае избыточность очевидна: домен имя_менеджера не является необходимым. Чтобы убедиться в том, что эта избыточность является сильной избыточностью в соответствии с приведенным выше определением, заметим, что
π34 (служащий) = π12 (служащий)1|1π3(служащий).
Во втором примере набор отношений включает описывающее поставщиков отношение S с первичным ключом s#, описывающее отделы отношение D с первичным ключом d# и описывающее проекты отношение J с первичным ключом j#, а также следующие отношения:
P(s#, d#,...), Q(s#, j#,...), R(d#, j#,...),
где в каждом случае многоточие означает домены, отличающиеся от s#, d#, j#. Предположим, что удовлетворяется следующее не зависящее от времени условие C: поставщик s обслуживает отдел d (отношение P) тогда и только тогда, когда поставщик s обслуживает некоторый проект j# (отношение Q), который выполняется отделом d# (отношение R). Тогда мы можем записать соотношение
π12(P) = π12 (Q) · π21 (R)
и таким образом показать наличие сильной избыточности.
Важная причина существования сильной избыточности в множестве именованных связей заключается в удобстве для пользователя. Частным случаем ее применения является сохранение во множестве именованных связей полуустаревших связей для того, чтобы старые программы, ссылающиеся на них по имени, могли правильно выполняться. Наличие знаний о существовании сильной избыточности во множестве именованных отношений предоставляет администратору системы или базы данных большую свободу в выборе внутреннего представления для более эффективного управления текущей нагрузкой. Если сильная избыточность во множестве именованных отношений непосредственно отражается в сильной избыточности во множестве хранимых представлений (или если во множество хранимых представлений внесена дополнительная сильная избыточность), то, вообще говоря, могут потребоваться дополнительные внешняя память и время для выполнения операций обновления, с возможным замедлением выполнения некоторых запросов и увеличением нагрузки на центральный процессор.
2.2.2. Слабая избыточность. Может существовать другой тип избыточности. В отличие от сильной избыточности она не описывается каким-либо соотношением. Набор отношений является слабо избыточным, если в него входит отношение, которое содержит проекцию, не порождаемую из других отношений набора, но в любой момент времени совпадающую с проекцией некоторого соединения проекций отношений из этого набора.
Мы можем проиллюстрировать слабую избыточность, рассмотрев второй пример сильной избыточности (из приведенных выше) и предположив, что условие C в некоторые моменты времени не выполняется. Отношения π12(P), π12(Q), π12(R) являются сложными 10) отношениями с возможным существованием точек неоднозначности, появляющихся иногда в потенциальных соединениях каких-либо двух отношений. При этих условиях ни одно из них не порождается из двух других. Однако между ними существует зависимость, поскольку каждое из них является проекцией некоторого циклического соединения трех отношений. Один из видов слабой избыточности может быть охарактеризован следующим утверждением: в любой момент времени π12(P) является некоторой композицией π12(Q) и π21(R). Эта композиция может быть естественной при одних обстоятельствах и может не являться таковой при других.
Вообще говоря, слабые избыточности являются неотъемлемой частью логических потребностей сообщества пользователей. Они не могут быть устранены администратором системы или базы данных. Если они все-таки возникают, они возникают и во множестве именованных отношений, и во множестве хранимых представлений.
2.3. Согласованность
В
каком бы смысле не являлось избыточным
множество именованных
Для данного набора C изменяемых во времени отношений, ассоциированного с ним множества Z ограничительных утверждений и значения V набора C в какой-либо момент времени мы будем называть состояние (C, Z, V) согласованным или несогласованным в зависимости от того, удовлетворяет ли V набору условий Z или нет. Например, для набора хранимых отношений R,S,T вместе с ограничительным утверждением "π12(T) является композицией π12 (R) и π12 (S)" мы можем периодически проверять, что значения, хранящиеся в R,S,T, удовлетворяют этому условию. Алгоритм осуществления такой проверки должен просматривать первые два столбца каждого из отношений R,S,T (вне зависимости от способа их представления в системе) и определять, выполняются ли следующие условия
Существуют практические проблемы (которые мы не будем здесь обсуждать) получения моментального снимка набора отношений, некоторые из которых могут быть очень большими и сильно изменчивыми.
Важно отметить, что согласованность в том виде, как она определена выше, является свойством состояния банка данных в какой-либо момент времени и не зависит от того, как это состояние было достигнуто. Это означает, в частности, что невозможно отличить несогласованное состояние, возникшее в результате оплошности пользователя, от состояния, порожденного преднамеренными действиями. Рассмотрение простого примера показывает обоснованность такого (возможно, нешаблонного) подхода к согласованности.
Предположим,
что множество именованных
Информация о работе Реляционная модель данных для больших совместно используемых банков данных