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

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

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

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

Как мы уже видели в главе 17, оптимизаторы запросов обычно пытаются избежать вычисления декартова произведения [17.541, [17.551. Однако в данном случае формирование, в первую очередь, декартова произведения таблиц значительно меньшей размерности, а затем использование результата для просмотра таблицы фактов очень больших размеров с помощью индексов почти всегда эффективнее любой другой стратегии. Поэтому для эффективной обработки запросов в схеме типа "звезда*' традиционные оптимизаторы нуждаются в переработке. 834 Часть р. дополнительные аспекты У читателя может возникнуть вопрос, в чем же отличие схемы типа "звезда" от схемы, которую можно было считать настоящим реляционным проектом. Действительно, простая схема типа "звезда", подобная рассмотренной выше, может показаться очень похожей на настоящий реляционный проект (и даже идентичной ему).

Однако, к сожалению, в общем случае при использовании схем типа "звезда" возникает целый ряд проблем. 1. Прежде всего, эта схема — произвольная, поскольку она основывается на интуиции, а не на принципах. Из-за недостатка строгости возникают сложности, когда схему требуется надлежащим образом изменить, например, чтобы добавить в базу новые типы данных или изменить зависимости. На практике схемы типа "звезда" часто конструируются посредством простого редактирования предыдущего проекта, а предыдущий проект, в свою очередь, конструировался методом проб и ошибок. 2. Схемы типа "звезда" в действительности физические, а не логические, хотя о них и говорят как о логических.

Проблема заключается в том, что при данном подходе отсутствует концепция логического проектирования, отдельного от физического. 3. Подход с использованием схем типа "звезда" не всегда позволяет получить в результате правильный физический проект (т.е. проект, который сохраняет всю информацию корректного реляционного логического проекта). Этот недостаток становится все более очевидным по мере усложнения схемы. 4. Поскольку отсутствует строгий подход, проектировщики часто включают в одну таблицу фактов несколько различных типов фактов. Вследствие этого строки и столбцы таблицы фактов обычно не имеют единой интерпретации. Более того, определенные столбцы часто применяются только к определенным типам фактов. При этом подразумевается, что рассматриваемые столбцы должны разрешать 1~ИЗ).).-значения.

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

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

должны будут допускать Х(Ш.- значения. Кроме того, возможно, потребуется также столбец флажка, указывающего тип соответствующего периода времени. Глава 21. Поддержка принятия решений 835 б. Таблицы размерностей часто не полностью нормализованы''. Желание избежать использования операций соединения часто приводит проектировщиков к решению объединить разные данные в одной таблице, хотя лучше было бы сохранять их отдельно. В самом крайнем случае столбцы, к которым лишь иногда осуществляется совместное обращение, также содержатся все вместе в одной и той же таблице размерностей. Должно быть ясно, что следование таким крайностям и отсутствие реляционной строгости почти наверняка приведут к неконтролируемой [а может быть, даже к такой, которую невозможно контролировать) избыточности.

И наконец отметим, что одним из вариантов схемы типа "звезда'* является схема типа "снежинка", которая предусматривает нормализацию таблицы размерности. Название схемы также произошло от ее изображения в виде диаграммы "сущность!связь". Изредка можно услышать термины схема типа "созвездие" и скача типа "метель" с очевидным (?) смыслом. 21.6. Оперативная аналитическая обработка Термин оперативная аналитическая обработка (О).АР— оп1ше апа!уйса1 ргосезз!пя) впервые был упомянут в докладе для корпорации АгЬог Бойхцаге Согр, в 1993 году [21.10), хотя концепция, как и в случае с хранилищами данных, появилась значительно позже. Это понятие может быть определено как "интерактивный процесс создания, обслуживания и анализа ланных и выдачи отчетов'*.

Кроме того, обычно добавляют, что рассматриваемые данные должны восприниматься и обрабатываться так, как будто они сохранены в "многомерном массиве". Но, прежде чем приступить к обсуждению непосредственно многомерного представления, давайте рассмотрим соответствующие идеи в терминах традиционных Я~!.-таблиц. Первая особенность состоит в том, что при аналитической обработке непременно требуется некоторое обобщение данных, обычно выполняемое сразу по многим различным критериям группирования.

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

Например, рассмотрим последовательность запросов, выполняемых в нашей базе данных поставщиков и деталей. 1. Определить общее количество поставок. 2. Определить общее количество поставок по поставщикам. 3. Определить общее количество поставок по деталям. Н Приведем совет из книги по «ранашига» данныв ТОтказкитесь~ от норхимизации .. Попытки нормализовать любую из таблиц в.»ногомерноя базе данных исключительно ради сохранения дискооого пространства — напраслин трата врвчени.

Табищы размерности не оолжны бьипь нормализованы... Вор чае изованные таблицы разчерноспш разрушают воз»ожноспш просмотра" (гй2зЗ 836 Часть !г дополнительные аспекты 4. Определить общее количество поставок по поставщикам и деталям. Замечание. "Общее" количество для данного поставщика и для данной детали— это, конечно, просто фактическое количество для данного поставщика и данной детали, Пример был бы более реалистичным, если бы использовалась база данных поставщиков, деталей и проектов. Но, чтобы не усложнять его, мы все же остановились на обычной базе поставщиков и деталей. Предположим, что есть только две детали, с номерами 'Р1' и 'Р2', а таблица поставок выглядит так.

БР Тогда формулировки на языке БО(.ы для четырех указанных выше запросов и соответствующие результаты их выполнения будут следующими. 1. ЯЕЕЕСТ Я()М(чеТУ) АЯ ТОТчвТУ 2. БЕЕЕСТ Б№ УКОМ ЯР Я()М(йТУ) АЯ ТОЩТУ ОКО()Р ВУ О: УКОМ БР ОКО()Р ВУ (Б№): 3. БЕЕЕСТ Р№ 4. ЯЕЕЕСТ Я№, Р№ Я()МЯТУ) АЯ ТОТЯТз( Б()МЯТУ) АБ ТОТЯТУ УКОМ БР УКОМ ЯР ОКО()Р ВУ (Р№) ' ОКО()Р Вч( (Б№,Р№) ' Возможно, следовало сказать "езормулировки на языке псевлоВД(.", поскольку по стаи- дарту ВД(.'92 не доп>икается, чтобы операнды предлоги ения ОВООР ВУ были заключены в скобки или чтобы предложение ОВООР ВУ было вовсе бвз операндов (хотя отсутствие предлолсения ОВООР ВУлогичвски равносильно предзожению ОВООР ВУбвз операндов). 837 Глава 21.

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

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

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

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

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

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

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