Главная » Просмотр файлов » Введение в системы БД

Введение в системы БД (542480), страница 181

Файл №542480 Введение в системы БД (Введение в системы БД) 181 страницаВведение в системы БД (542480) страница 1812015-08-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 181)

Помимо всего прочего, в стат~е предлигиются версии "возможного" сз-соединения, 9- выборки, операторы деления 1см. упр. !В.4), а также "внешние" версии соединения, пересечения, вычитания, В-соединения и естественного соединения Ром. раздел 1В.5). 699 Глава 18. Отсутствующая информация Теперь, исходя из этого расширенного определения кортежей-дубликатов, можно сохранить прежнее определение операции проекции в неизменном виде. Объединение также подразумевает исключение избыточных кортежей-дубликатов, и для этой операции также может быть применено приведенное выше определение. Таким образом, объединение отношений г1 и г2 одного и того же типа можно определить как отношение г того же типа, включающее все возможные кортежи С, такие, что кортеж С является дубликатом некоторого кортежа в отношении г1 или в отношении г2 (или в них обоих одновременно).

И наконец, операция вычитания определяется аналогично (хотя она и ие требует исключения кортежей-дубликатов). Иначе говоря, кортеж С попадает в результат операции г1 М1НУЯ г2 тогда и только тогда, когда этот кортеж является дубликатом какого-либо кортежа в отношении г1, но не является дубликатом ни одного из кортежей в отношении г2.

(Для полноты картины отметим, что операция пересечения определяется аналогично: кортеж С попадает в результат операции г1 1НТЕКЯЕСТ г2 тогда и только тогда, когда этот кортеж является дубликатом какого-либо кортежа в отношении г1 и одновременно дубликатом какого-либо кортежа в отношении г2.) Операции обновления Здесь следует упомянуть два основных момента. !. Если атрибут А отношения К может содержать величину ННК и если вставляемый в отношение К кортеж не содержит значения для атрибуза А, то система автоматически поместит величину ННК на место опущенного значения. Если атрибут А в отношении К не допускает присутствия величины ННК, то попытка создать кортеж (с помощью операции 1НЯЕКТ или БРНАТЕ), в котором в атрибут А помещено значение ННК, приведет к ошибке.

2. Попытка создать в отношении К кортеж-дубликат (с помощью операции 1НЯЕКТ или ЯРйАТЕ) обычно является ошибкой. В данном случае определение кортежей- дубликатов взято из предыдущего подраздела. Ограничения целостности Как указывалось в главе 8, ограничение целостности задается в виде логического выражения, результат вычисления которого не должен быть равен значениюуа6е. Следовательно, ограничение целостности не будет нарушено, если результат его вычисления будет равен значению ипА (на самом деле это неявно предполагалось в наших замечаниях, приведенных выше в настоящем разделе в отношении ограничений типов).

Конечно, в этом случае ~очнее было бы сказать, что нам ничего неизвестно о том, будет ли нарушено данное ограничение целостности. Но с известной долей приближения вполне можно утверждать, что если в предложении ННЕКЕ значение инА рассматривается как~а!зе, то в ограничениях целостности оно рассматривается как ггие. 18.3. Некоторые следствия изложенной схемы Использование подхода с трехзначной логикой, описанной в предыдущем разделе, имеет ряд логических следствий, причем некоторые из них совсем не очевидны.

В данном разделе обсуждаются эти следствия и их значения. 7ОО Часть р. дополнительные аспекты Преобразование выражений Прежде всего отметим, что выражения, которые в двухзначной логике всегда возврашают значение ггие, в трехзначной логике необязательно всегда будут давать тот же результат. Ниже приведено несколько примеров с комментариями, но следует иметь в виду, что этот список далеко не полон. ° Сравнение х = х не обязательно в результате даст Ггце. В двухзначной логике любая переменная х всегда равна самой себе. В трехзначной логике переменная х не равна самой себе, если она содержит величину ОИ)(. ° Логическое выражение р ОИ ИОТ(р) не обязательно в результате даст Птэе. Здесь р — это некоторое логическое выражение. В двухзначной логике выражение р Ой ИОТ(р) всегда имеет значение ггие (т.е.

истинно), независимо от значения р. Однако в трехзначной логике, если р равно ин(г, общее выражение сводится к ол(г 08 ВОТ( ол)г), т.е. к выражению эгн)г Ой ин(г, что, в свою очередь, упрошается до значения инй, а не ггие. Этот частный пример демонстрирует одно интересное свойство трехзначной логики, которое можно описать так. Если выполнить два запроса, "Получить сведения обо всех поставщиках из Лондона" и "Получить сведения обо всех поставшиках не из Лондона", а затем объединить результаты обоих запросов, то не обязательно будут получены сведения обо всех поставшиках. Чтобы получить список всех поставщиков, к двум запросам нужно добавить еше один: "Получить сведения обо всех поставшиках, которые, возможно (шау Ье), находятся в Лондоне"з.

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

В рассматриваемом здесь примере это следуюшие состояния: "место нахождения известно, и это Лондон", "место нахождения известно, и это не Лондон", "место нахождения неизвестно". Более того, как показано в (18.6), очевидно, что систему базы данных нельзя опрашивать о состоянии реального мира, ей можно задавать вопросы только о тех знаниях о реальном мире, которые представлены в базе данных в виде значений.

Такое "противоестественное" свойство, приведенное в примере, порождено тем, что пользователь мыслит в терминах реального мира, а система функционирует, опираясь исключительно на свои знания об этом реальном мире. Замечание. Тем не менее автор данной книги подозревает, что описанное несоответствие между предметными областями — это всего лишь ловушка, в которую очень легко попасть. Заметьте, что каждый отдельный запрос, описанный в предыдуших главах (в примерах, упражнениях и т.п.), был сформулирован в терминах "реального мира", а не в терминах "знаний о реальном мире'*, И в этом смысле данная книга вовсе не является каким-то исключением. З Как следует из этих рассухгдений, выражением, которое в трехзначной логике всегда буденэ дават~ в результате Ггае (т.е, будет аналогом выражения р ОИ ИОТ(р) в двухзначной логике), является р ОИ ИОТ(р) ОВ ИАУВЕ(р).

701 Глава 18. Отсутствующая инфаргиаг(ия ° Вычисление логического выражения х ТОЙ г не обязательно в результате даст г. В двухзначной логике естественное соединение отношения г с самим собой всегда дает в результате исходное отношение х (т.е. операция естественного соединения является идемпотентной). Однако в трехзначной логике кортеж, содержащий величину 0МК в любой из позиций, не будет соединен сам с собой, поскольку операция соединения, в отличие от операции объединения, предусматривает проверку наличия равенства, а не исключение дублируюшихся кортежей. ° Операция 1ЕТЕЕЯЕСТ больше не является частным случае и операции ТОТВ.

Это заключение является следствием того факта, что, опять же, операция соединения предусматривает проверку наличия равенства, тогда как операция пересечения, подобно операции объединения, предусматривает отбор кортежей- дубликатов. ° Изравенства А = В АКР В = Свовсе не обязительно следует равенствоА = С. Развернутая иллюстрация этого следствия приведена в следующем разделе. Таким образом, эквивалентности, корректные в двухзначной логике, не являются эквивалентностями в трехзначной логике.

Одно из наиболее серьезных следствий подобных несоответствий таково. Как правило, в основе различных законов преобразования, которые используются для преобразования запросов в более эффективную форму, лежит простая эквивалентность вида х 1018 х ы г (см. главу 17). Более того, эти законы используются не только системой (в процессе оптимизации), но и пользователями (когда они пытаются отыскать "наилучший" способ записи конкретного запроса).

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

Предположим, что имеется простая база данных отделов и сотрудников, показанная на рис. 18.1. МР ТЗЕРТ Рис. 18.1. База данных отделов и сотрудников Рассмотрим следующее условие„которое может являться частью некоторого запроса. 0ЕРх.ВЕРР$ = ЕМР.ВЕРХ(( АМ0 ЕМР.ВЕРТ$ = 0ЕРх$ ( г01' ) 702 Часть 1'. Дополнительные аспекты Здесь ПЕРТ и ЕИР являются переменными диапазона. Для всех кортежей в базе данных приведенное условие сводится к выражению ипА АМП ипА, т.е.

просто к значению ипlс. Тем не менее "хороший" оптимизатор, исходя из того, что если А = В и В = С, то А = С, добавит к исходному условию дополнительную выборку А = С (как описано в главе ) 7А). В результате получаса следующее выражение. ПЕРТ.ПЕРТ$ = ЕИР,ПЕРТ$ АМП ЕМР.ПЕРТ$ = ПЕРТ$ ( 'П1' ) АМП ПЕРТ.ПЕРТ$ -" ПЕРТ$ ( 'П1' ) Это измененное выражение теперь сведется к выражению ипА АМП ипА АМП 7аЬе или просто к значению ~аЬе (для двух рассматриваемых кортежей в базе данных). В этом свете рассмотрим следующее выражение.

ЕИР.ЕМР$ МНЕНЕ ЕХ1ЯТЯ ПЕРТ ( МОТ ( ПЕРТ.ПЕРТ$ = ЕИР.ПЕРТ$ АМП ЕМР.ПЕРТ$ = ПЕРТ$ ( 'П1' ) ) ) В результате его вычисления будет возвращен код сотрудника 'Е1 ', если это выражение "оптиинзировать" в иззоженнои сиысзе, и не будет возвращено ничего, если его не "оптимизировать". Безусловно, это означает, что проведенная "оптимизация" некорректна. Таким образом, показано, что приемы оптимизации, которые были корректны (и удобны) в обычной двухзначной логике, являются некорректными в трехзначной логике. Попробуем оценить влияние сказанного выше на способы расширения систем с двухзначной логикой в отношении поддержки трехзначной логики. В лучшем случае подобное расширение потребует некоторой переработки существующей системы, так как отдельные фрагменты кода оптимизатора будут работать некорректно, причем в худшем случае оптимизатор будет вносить явные ошибки в результаты запросов.

Характеристики

Тип файла
DJVU-файл
Размер
10,05 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6551
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее