Опубликован: 20.12.2010 | Доступ: свободный | Студентов: 2382 / 140 | Оценка: 4.27 / 3.91 | Длительность: 39:39:00
ISBN: 978-5-9963-0353-3
Лекция 19:

Проектирование кубов данных

Проектирование кубов данных с использованием CASE-инструментов

Рассмотрим методику проектирования кубов данных для OLAP-хранилищ данных с использованием CASE PowerDesigner компании Sybase. Отметим также, что при изложении материала мы будем опускать многие детали, оставив их для самостоятельного изучения в конкретной инструментальной среде CASE-средств. Нашей задачей является иллюстрация основных моментов методики проектирования и возможностей CASE-инструментов для проектирования многомерных схем данных.

Многомерные диаграммы

Многомерная диаграмма (multidimensional diagram) представляет собой модель хозяйственной деятельности организации в терминах кубов данных и измерений. На этой диаграмме данные о хозяйственной деятельности организации представляются в одной из двух категорий. Числовые данные или метрики, такие как количество продаж, являются фактами хозяйственной деятельности. Представление хозяйственной деятельности в терминах географии, товаров и времени является измерениями.

Многомерная диаграмма служит основным инструментом проектировщика OLAP-хранилищ данных.

OLAP-хранилища заполняются данными из ХД или киосков данных. Такая передача данных осуществляется посредством отображения реляционного представления в многомерное представление данных. Таким образом, ХД выступают как источник данных для OLAP-хранилищ.

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

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

На рис. 26.8 приведен пример многомерной диаграммы. Как видно из рисунка, данные о продажах (Sales) имеют измерения "Товар" (product), "Регион" (region), "Покупатель" (customer) и "Магазин" (store). Факты, например, итоговый объем продаж (sales totals), рассматриваются с точки зрения этих определенных пользователем измерений. Когда аналитик делает выборку об итоговых объемах продаж (sales total) по конкретному товару для конкретного региона, он изучает данные о продажах с точки зрения измерений "Товар" и "Регион". Наиболее часто применяемым измерением является время, поскольку основная цель выполнения аналитических запросов — нахождение трендов в данных.

Пример многомерной диаграммы

увеличить изображение
Рис. 26.8. Пример многомерной диаграммы

Основными элементами многомерной диаграммы являются:

  • кубы данных (cube). Содержат набор метрик, которые связаны с различными аспектами хозяйственной деятельности организации и используются для информационной поддержки принятия решений;
  • измерения (Dimension). Являются своеобразными осями – аспектами исследования данных в кубе;
  • атрибуты (Attribute). Используются для квалификации измерения ;
  • факты (Fact). Группируют метрики, применяемые кубом данных ;
  • метрики (Measure). Переменные, как правило, числовые, связываемые с фактом ;
  • иерархии (Hierarchy). Представляют организационную структуру, которая описывает модель доступа к кубу данных через измерение ;
  • ассоциации (Association). Устанавливают связь между кубом данных и измерением.

Только кубы данных, измерения и ассоциации представлены на палитре инструментов CASE.

Многомерная диаграмма создается следующим образом. Выбрать в меню File->New Model (на рабочем пространстве появится диалоговое окно "New Model", рис. 26.9). В этом окне нужно выбрать тип модели "физическая модель данных", в качестве СУБД мы выберем MS SQL Server из выпадающего списка СУБД, укажем многомерную диаграмму как класс физической модели, присвоим имя многомерной модели ( PhysicalDataModel_1 ) и нажжем кнопку "ОК".

Таким образом, многомерная модель создана, рабочее пространство и палитра инструментов доступны ( рис. 26.10).

Диалоговое окно "Новая модель"

Рис. 26.9. Диалоговое окно "Новая модель"
Рабочее пространство и палитра инструментов многомерной модели

увеличить изображение
Рис. 26.10. Рабочее пространство и палитра инструментов многомерной модели

Проектировщик ХД может установить свойства модели в пункте меню Tools.

Рассмотрим построение элементов модели более подробно.

Кубы данных

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

Как правило, кубы данных связаны с фактами, которые позволяют определить метрики для куба. На многомерной диаграмме кубы данных представляют OLAP-кубы.

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

Далее двойным щелчком мыши на кубе данных откроем диалоговое окно для определения свойств куба данных ( рис. 26.11).

Диалоговое окно свойств куба данных

Рис. 26.11. Диалоговое окно свойств куба данных

Для куба данных можно определить следующие свойства.

  • Имя (Name) определяет имя куба данных, желательно в терминах, понятных пользователям.
  • Код (Code) определяет техническое имя куба данных, которое будет использовано при генерировании скрипта.
  • Комментарий (Comment) определяет дополнительное описание куба данных.
  • Факт (Fact) определяет факт, используемый в кубе данных.

Дополнительными свойствами куба данных являются:

  • запросы (Queries) – SQL-команда, необходимая для генерации текстового файла куба данных, который будет использоваться для заполнения OLAP-куба;
  • метрики факта (Fact Measures) – метрики, связанные с фактом куба данных ;
  • заметки (Notes) — описание, связанное с кубом данных ;
  • правила (Rules) – бизнес-правила, связанные с кубом данных ;
  • внешние зависимости (Extended Dependencies) — определенные пользователем семантические связи между объектами модели;
  • зависимости (Dependencies) – отношения между двумя моделируемыми элементами, которые показывают изменения в зависимом элементе после воздействия на независимый элемент.

Присвоим кубу данных имя "Продажа" (Sale). На рис. 26.12 показан результат выполнения построения куба данных многомерной модели.

Куб данных в многомерной диаграмме

Рис. 26.12. Куб данных в многомерной диаграмме

Измерения

Измерения являются осями для анализа данных в многомерной структуре данных.

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

Измерения могут быть отображены на таблицы и представления, что позволяет передавать данные в них из БД оперативных систем.

Измерения могут иметь несколько иерархий на множестве своих атрибутов.

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

Далее двойным щелчком мыши на измерении откроем диалоговое окно для определения свойств измерения ( рис. 26.13).

Присвоим измерению имя "Время" (Time).

Диалоговое окно свойств измерения

Рис. 26.13. Диалоговое окно свойств измерения

Для измерения можно определить следующие свойства.

  • Имя (Name) определяет имя измерения как элемента многомерной диаграммы, которое должно быть понятно пользователю.
  • Код (Code) определяет техническое имя измерения, которое будет использовано при генерировании скрипта.
  • Комментарий (Comment) определяет описание измерения.
  • Иерархия по умолчанию (Default Hierarchy) определяет иерархию измерения по умолчанию для консолидации вычислений, выполняемых на кубе данных. Иерархия, используемая кубом данных, определяется через ассоциацию между кубом и измерением.

Определение измерения также включает следующие дополнительные свойства.

  • Атрибуты (Attributes) – список атрибутов, которые определяют измерение.
  • Иерархии (Hierarchies) – список иерархий, которые используются для группировки атрибутов.
  • Отображение (Mapping) определяет отображение между измерением и таблицей или представлением в источнике данных.
  • Заметки (Notes) — описание, связанное с измерением.
  • Правила (Rules) – бизнес-правила, связанные с измерением.
  • Внешние зависимости (Extended Dependencies) — определенные пользователем семантические связи между объектами модели.
  • Зависимости (Dependencies) – отношения между двумя моделируемыми элементами, которые показывают изменения в зависимом элементе после воздействия на независимый элемент.
Пример измерения

Рис. 26.14. Пример измерения

Атрибуты

Атрибуты являются квалификаторами измерений в запросах. Например, измерение "Время" (Time) может содержать атрибуты "Год", "Квартал", "Месяц", "Неделя". Атрибуты могут быть организованы в иерархии.

Атрибуты измерения имеют следующие свойства.

  • Имя (Name) определяет имя атрибута в терминах пользователя.
  • Код (Code) определяет техническое имя атрибута, используемое при генерировании скрипта.
  • Комментарий (Comment) определяет дополнительное описание атрибута
  • Измерение (Dimension) определяет измерение для атрибута.

Дополнительными свойствами атрибутов являются:

  • заметки (Notes) — описание, связанное с измерением ;
  • правила (Rules) – бизнес-правила, связанные с измерением ;
  • зависимости (Dependencies) — определенные пользователем семантические связи между объектами модели.

Для создания атрибутов измерения можно использовать диалоговое окно свойств измерения. Например, для измерения "Время" определим следующие атрибуты: "Год" (Year), "Квартал" (Quarter), "Месяц" (Month) и "Неделя" (Week) – как показано на рис. 26.15.

Определение атрибутов измерения

Рис. 26.15. Определение атрибутов измерения

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

Например, в измерении "Покупатель" (Customer) атрибуты "Имя покупателя" (Cust_Name) и "Адрес покупателя" (Cust_Address) могут быть использованы для детализации атрибута "Идентификатор покупателя" (Cust_ID) ( рис. 26.16).

Для этого нужно в диалоговом окне свойств измерения выбрать список атрибутов, в списке атрибутов выбрать атрибут Cust_ID, открыть для него диалоговое окно свойств атрибута, на нем выбрать вкладку "Detail Attributes" и занести на нее атрибуты Cust_Name и Cust_Address, как показано на рис. 26.17.

Измерение "Покупатель"

Рис. 26.16. Измерение "Покупатель"
Уточнение определения атрибута

Рис. 26.17. Уточнение определения атрибута

Факты

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

Факт добавляется в многомерную диаграмму следующим образом. Выберите пункт меню Model-> Facts и добавьте его в список в появившемся диалоговом окне "Список фактов " ( List of Facts ), как показано на рис. 26.18 и на рис. 26.19.

Добавление факта в многомерную диаграмму

Рис. 26.18. Добавление факта в многомерную диаграмму
Факт на кубе данных

Рис. 26.19. Факт на кубе данных

Факт имеет следующие свойства.

  • Имя (Name) определяет имя факта в терминах пользователя.
  • Код (Code) определяет техническое имя факта, используемое при генерировании скрипта.
  • Комментарий (Comment) определяет описание факта.

Дополнительными свойствами факта являются:

  • метрики (Measures) — список метрик куба данных ;
  • отображение (Mapping) определяет отображение между фактом и таблицей или представлением в источнике данных;
  • заметки (Notes) — описание, связанное с фактом ;
  • правила (Rules) – бизнес-правила, связанные с фактом ;
  • внешние зависимости (Extended Dependencies) — определенные пользователем семантические связи между объектами модели;
  • зависимости (Dependencies) – отношения между двумя моделируемыми элементами, которые показывают изменения в зависимом элементе после воздействия на независимый элемент.

Метрики

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

Метрика имеет следующие свойства.

  • Имя (Name) определяет имя метрики в терминах пользователя.
  • Код (Code) определяет техническое имя, которое используется при генерировании скрипта.
  • Комментарий (Comment) определяет описание метрики.
  • Факт (Fact) определяет факт, которому принадлежит метрика.
  • Формула (Formula) определяет выражение, посредством которого метрика вычисляется.

Дополнительными свойствами метрики являются:

  • заметки (Notes) — описание, связанное с метрикой ;
  • правила (Rules) – бизнес-правила, связанные с метрикой.

Для создания метрики можно из главного меню Model->Facts в диалоговом окне "Список фактов " ( List of Facts ) выбрать факт (в нашем случае Sale) и вызвать диалоговое окно "Свойства факта " ( Fact Properties ), в котором на вкладке " Метрика " ( Measure ) добавить необходимые метрики. В нашем пример добавим следующие метрики: "Итог" (Total), "Промежуточный итог" (Sudtotal) и "Еженедельный итог" (Weekly) – как показано на рис. 26.20.

Добавление метрик к факту

Рис. 26.20. Добавление метрик к факту

Теперь куб данных нашего примера выглядит, как на рис. 26.21.

Куб данных с метриками

Рис. 26.21. Куб данных с метриками
Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Лариса Парфенова
Лариса Парфенова

1) Можно ли экстерном получить второе высшее образование "Программная инженерия" ?

2) Трудоустраиваете ли Вы выпускников?

3) Можно ли с Вашим дипломом поступить в аспирантуру?