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

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

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

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

Примеры автоматической навигации и навигации вручную Часть 1. Основные понятия Ответственность за то, как именно выполняется автоматическая навигация, несет очень важный компонент СУБД вЂ” оптимизатор (мы уже упоминалн о нем в главе 2). Другими словами, работа оптимизатора заключается в том, чтобы для каждого запроса пользователя выбрать самый эффективный способ выполнения этого запроса. Предположим, например, что пользователь сделал следующий запрос (снова воспользуемся языком Тц(ог!а! В). ЕЕЯБЬТ :- "( ЕМР МНЕКЕ ЕМР4 = 'Е4' ! ( БАБАЯХ ) ! Пояснение. Выражение в первых скобках (ЕМР МНЕКЕ ...) означает запрос выборки строк из переменной-отношения ЕМР, а именно — той строки, в которой значение столбца ЕМР$ равно 'Е4'.

Название столбца в фигурных скобках (ЯА1ЛЕХ) означает запрос выборки столбцов (иначе называемый проекцией) из результата, полученного после выборки строк, а именно — столбца БАБАЯХ. И наконец, оператор присвоения (: =) означает запрос присвоения результата выборки столбцов переменной-отношению НЕБИТ. Следовательно, после выполнения запроса переменная-отношение НЕБЕЖИТ будет содержать значение из одной строки и одного столбца, содержащего значение зарплаты служащего с номером 'Е4'. (Обратите внимание, что в данном случае в явном виде используется реляционное свойство замкнутости: мы написали вложенное выражение, в котором результат выборки строк — это входные данные для выборки столбцов.) Даже в этом простом примере существует по крайней мере два способа поиска необходимых данных.

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

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

В результате пользователи и пользовательские программы обретают независимость от применяемых стратегий доступа, что, конечно же, совершенно необходимо, если мы хотим достичь реальной независимости от физического представления данных. Более подробные сведения об оптимизаторе приводятся в главе ! 7. Глава 3. Введение в реляционные базы данных 1ОЗ З.б. Каталог Как отмечалось в главе 2, каждая СУБД должна поддерживать функцию каталога, или словаря. Каталог обычно размешается там, где сохраняются различные схемы (внешние, концептуальные, внутренние) и все, что относится к отображениям ("внешний — концептуальный", "концептуальный-внутренний"). Иначе говоря, в каталоге содержится детальная информация (иногда называемая метаданными), касаюшаяся различных объектов, которые имеют значение для самой системы.

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

В результате пользователь может обращаться к каталогу так же, как к своим данным. Например, в каталоге обычно содержатся системные переменные-отношения ТВЕРДЕЯ и СОВОММЯ, назначение которых — описание известных системе таблиц (т.е. переменных-отношений) и столбцов этих таблиц. (Мы говорим "обычно", потому что каталоги в различных системах разные, так как сушественная часть информации катало~а является специфической для конкретной системы.) Для базы данных отделов и служащих переменные-отношения ТЛВЬЕЯ и СОДОМИЯ могут схематически выглядеть так, как показано на рис. З.бз.

Замечание. Как упоминалось в главе 2, каталог должен описывать самого себя, т.е. он должен включать записи, описывающие переменные-отношения самого каталога. Тем не менее на рис. 3.6 такие записи не показаны. (Подробности приводятся в упр. 3.3.) Теперь предположим, что пользователю базы данных отделов и служаших понадобилось узнать, какие именно столбцы содержит переменная-отношение МЕРТ (конечно, предполагается, что по каким-то причинам пользователь не имеет этой информации). Тогда необходимое выражение будет выглядеть следующим образом, ( СО?ЛММБ ННЕМЕ ТВВНВМЕ = 'МЕРТ' ) ( СОЬММЕ ) Замечание. Если бы нам понадобилось сохранить результат в более постоянном виде,мы могли бы присвоить его другой переменной отношения, скажем, переменной НЕБОГАТ, как было показано в примере из предыдущего раздела„но в большинстве наших примеров мы будем опускать этот шаг присвоения (как в этой, так и в последуюших главах).

З Отметим, что исходя из наличия иа этом рисунке столбца ЕОИСООИ7можно сделать следующее заключение: выполнение в базе данных операций 1ИБЕЕТ и ОВЕЕТЕ в качестве побочного эффекта потребует обновления донных каталога. На практике столбец ЕОИСООИ7 обычно 'обновляется только по специальному запросу (наприыер, при запуске некоторой утилиты), поэтому значения этого столбца ие всегда будут актуальными.

104 Часть 1 Основные поня(пня Рис. 3.б. Катазог базы данных отделов и служащих (изображен схематически) Вот еше один пример. Пусть необходимо узнать, в каких переменных-отношениях есть столбец ЕИР(). ( СОН~ИМЯ МНЕНЕ СОЫАИЕ = 'ЕИР()' ) ( ТАВМАИЕ ) Упражнение для самопроверки.

Каким будет результат выполнения следующего выражения. ( ( ТАВТЕЯ 301М СОТЛИМЯ ) МНЕНЕ СОЬСООМТ с 5 ) ( ТАВНАМЕ, СОВМАИЕ ) 3.7. Базовые переменные-отношения и представления Мы уже видели, что на основе реляционных значений, присвоенных некоторому множеству переменных-отношений, подобных ОЕРТ и ЕИР, реляционные выражения позволяют получить множество других реляционных значений, например в результате соединения двух переменных-отношений. Пришло время ввести еше несколько новых терминов. Исходные (заданные) переменные-отношения называются базовыми переменными-отношениями, а присвоенные им значения называются базовыми отношениями.

Отношение, которое получено или может быть получено из базового отношения в результате выполнения каких-либо реляционных выражений, называется производным отношением. , Замечание. В [3.3) базовые переменные-отношения называются реальными переменными-отношениями. Реляционные системы, очевидно, должны предоставлять средства для создания, в первую очередь, базовых переменных-отношений.

В языке 9 >Ь, например, эта функция обеспечивается оператором СЕНАТЕ ТАВВЕ (здесь слово ТАВЕЕ используется в узком смысле, как базовая переменная-отношение). Базовые переменные-отношения, конечно же( должны быть именованными, как, например, показано ниже. СЕНАТЕ ТАВЬЕ ЕИР 105 Глава 3. Введение в реляиионные базы данных Однако реляционные системы обычно поддерживают еше один внд именованных переменных-отношений, называемых представлениями. В любой конкретный момент их значение является производным отношением (и поэтому упрощенно можно считать, что представление — это производная переменная-отношение). Значение данного представления в данное время является результатом вычисления определенного реляционного выражения в данный момент, а упомянутое реляционное выражение определяется в момент создания этого представления.

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

3.7 только в незатененных участках. И пользователь должен иметь возможность оперировать этим представлением точно так, как если бы оно являлось обычной базовой переменной-отношением. Замечание, Если, как мы уже отмечали, такие переменные-отношения, как ОЕРТ и ЕМР, можно считать реальными, то переменную-отношение ТОРЕМР следует понимать как виртуальную переменную-отношение.

Иначе говоря, как переменную-отношение, которая внешне сушествует как таковая, но на самом деле ее нет (значение этой переменной-отношения в любой данный момент зависит от значений некоторых других переменных-отношений). Рис. 3.7. Виртуальная переменная-отношение ТОРЕЯР (затененные участки) как пред- ставление базовой переменной-отношения ЕМР Однако будьте внимательны; отмечая, что значение переменной-отношения ТОРЕМР является отношением, которое было бы результатом, если бы определяюшее данное представление выражение было на самом деле вычислено, мы вовсе не хотим сказать, что сушествует отдельная копия этих данных. Иначе говоря, мы вовсе,не имеем в виду, что определяющее представление выражение на самом деле вычисляется.

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

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

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

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