Волгоградский государственный университет
Опубликован: 15.03.2010 | Доступ: свободный | Студентов: 2369 / 231 | Оценка: 4.39 / 4.28 | Длительность: 18:09:00
Самостоятельная работа 6:

Определение связей между измерениями и группами мер

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

Теоретическое введение

Связи измерений

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

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

Связи обычного измерения

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

При определении нового измерения куба или новой группы мер, службы SSAS попытаются определить, существует ли обычная связь, и установить настройку использования измерения в значение Regular. Связь обычного измерения можно просмотреть или отредактировать на вкладке "Использование измерения" конструктора кубов.

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

Например, может быть необходимо установить атрибут гранулярности для измерения "Время" равным атрибуту "Месяц", а не атрибуту "День", если используется группа мер "Квота на продажу" или "Бюджет".

При указании того, что атрибут гранулярности не является ключевым атрибутом, необходимо гарантировать, что все остальные атрибуты в измерении непосредственно или косвенно связаны с этим другим атрибутом через связи атрибутов. Если это не так, службы SSAS не смогут корректно выполнить статистическую обработку данных.

Связи ссылочного измерения

Связь ссылочного измерения между измерением куба и группой мер существует в том случае, когда ключевой столбец измерения косвенно соединен с таблицей фактов по ключу в другой таблице измерения, как показано на рисунок 10.1.

 Схема соединения ссылочного измерения с таблицей мер

Рис. 10.1. Схема соединения ссылочного измерения с таблицей мер

Связь ссылочного измерения представляет связь между таблицами измерений и таблицей фактов в структуре схемы "снежинка". Когда таблицы измерений связаны по схеме "снежинка", можно определить либо одно измерение с использованием столбцов из нескольких таблиц, либо определить отдельные измерения на основе отдельных таблиц измерений, а затем задать связь между ними при помощи параметров связи ссылочного измерения.

На рисунок 10.2 показана одна таблица фактов "InternetSales" и две таблицы измерений " Customer " и " Geography ", связанные по схеме "снежинка".

 Пример связи ссылочного измерения с таблицей мер

Рис. 10.2. Пример связи ссылочного измерения с таблицей мер

Можно создать измерение с таблицей " Customer " в качестве главной таблицы и таблицей " Geography ", включенной в качестве связанной. После этого определяется обычная связь между измерением и группой мер " InternetSales ".

Другой вариант - создать два измерения, связанные с группой мер " InternetSales ": измерение, основанное на таблице " Customer " и измерение, основанное на таблице " Geography ". После этого можно связать измерение " Geography " с группой мер " InternetSales ", используя связь ссылочного измерения, в которую входит измерение " Customer ". В этом случае, когда факты в группе мер " InternetSales " измеряются измерением " Geography ", факты измеряются по заказчикам и по географии. Если куб содержит вторую группу мер " ResellerSales ", то измерить факты в группе мер " ResellerSales " по таблице Geography невозможно, поскольку связи между группой мер " ResellerSales " и " Geography " не существует.

Ограничения на количество ссылочных измерений, которые могут быть соединены друг с другом, нет (рисунок 10.3).

 Два ссылочных измерения

Рис. 10.3. Два ссылочных измерения

Связь ссылочного измерения определяется на вкладке "Использование измерения" конструктора кубов. Связь ссылочного измерения определяется путем указания следующих параметров:

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

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

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

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

Связи измерения фактов

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

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

Например, на рисунок 10.4 приведена таблица фактов FactResellerSales из образца базы данных Adventure Works DW.

 Пример таблицы фактов с измерениями фактов

Рис. 10.4. Пример таблицы фактов с измерениями фактов

Эта таблица содержит данные об атрибутах не только для каждой строки заказа, оформленного посредником, но и для самого заказа. Атрибуты, обведенные на рисунок 10.4 идентифицируют данные в таблице " FactResellerSales ", которые можно использовать в качестве атрибутов в измерении. В этом случае два дополнительных элемента данных - сопроводительный номер перевозчика и номер заказа на покупку, оформленного посредником, представлены столбцами атрибутов " CarrierTrackingNumber " и " CustomerPONumber ". Это весьма полезные сведения. Например, пользователи определенно будут заинтересованы в просмотре статистических сведений (например, суммарной стоимости продуктов) для всех заказов, поставляемых по одному сопроводительному номеру. Однако без измерения данные по этим двум атрибутам не могут быть ни организованы, ни статистически обработаны.

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

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

При определении измерения фактов можно задать связь между этим измерением и группой мер как связь фактов. К связям фактов применяются следующие ограничения:

  • атрибут гранулярности должен быть ключевым столбцом для измерения, что образует связь "один к одному" между измерением и фактами в таблице фактов;
  • измерение может иметь связь фактов только с одной группой мер.
Связи измерений "многие ко многим"

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

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

Для обеспечения поддержки связи измерений "многие ко многим" в представлении источника данных должна быть установлена связь по внешнему ключу между всеми участвующими таблицами, как показано на рисунок 10.5 В противном случае будет невозможно выбрать верную промежуточную группу мер при установке связи на вкладке "Использование измерения конструктора кубов".

 Логическая схема измерения "Многие ко многим"

Рис. 10.5. Логическая схема измерения "Многие ко многим"

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

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

Ксения Кожанова
Ксения Кожанова

Здравствуйте! Я прошла 1 лекцию и 1 самостоятельную работу. В конце контрольные вопросы, их надо для как-то ответить или куда-то отослать?

Андрей Павлов
Андрей Павлов