Учебники

OBIEE — Пространственное Моделирование

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

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

Таблица размеров

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

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

пример

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

Пользовательский ИД название Пол доход образование религия
1 Брайан Эдж M 2 3 4
2 Фред Смит M 3 5 1
3 Салли Джонс F 1 7 3

Таблицы фактов

Таблица фактов содержит числовые значения, которые называются измерениями. Таблица фактов имеет два типа столбцов — факты и внешний ключ для таблиц измерений.

Меры в таблице фактов бывают трех типов —

  • Добавка — Меры, которые могут быть добавлены в любом измерении.

  • Non-Additive — Меры, которые нельзя добавить ни к одному измерению.

  • Полуаддитивный — меры, которые могут быть добавлены к некоторым измерениям.

Добавка — Меры, которые могут быть добавлены в любом измерении.

Non-Additive — Меры, которые нельзя добавить ни к одному измерению.

Полуаддитивный — меры, которые могут быть добавлены к некоторым измерениям.

пример

ID времени Код товара Пользовательский ИД Единица Продана
4 17 2 1
8 21 3 2
8 4 1 1

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

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

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

Теперь, если мы рассмотрим вышеупомянутую таблицу фактов и измерение Customer, тогда также будет измерение Product и time. Учитывая эту таблицу фактов и эти три таблицы измерений, мы можем задать такие вопросы, как: Сколько часов было продано покупателям-мужчинам в 2010 году?

Разница между измерением и таблицей фактов

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

Совокупная таблица

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

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

Общие агрегатные функции включают в себя —

  • Средний()
  • Count ()
  • Максимальное ()
  • Медиана ()
  • Минимальная ()
  • Режим()
  • Sum ()

Эти сводные таблицы используются для оптимизации производительности для выполнения сложных запросов в хранилище данных.

пример

Вы сохраняете таблицы с агрегированными данными, такими как годовой (1 строка), квартальный (4 строки), ежемесячный (12 строк), и теперь вам нужно сравнить данные, например, будет обрабатываться только 1 строка в год. Однако в неагрегированной таблице все строки будут обработаны.

MIN Возвращает наименьшее значение в данном столбце
МАКСИМУМ Возвращает наибольшее значение в данном столбце
SUM Возвращает сумму числовых значений в данном столбце
AVG Возвращает среднее значение данного столбца
COUNT Возвращает общее количество значений в данном столбце
COUNT (*) Возвращает количество строк в таблице

Выберите Avg (зарплата) от сотрудника, где title = ‘разработчик’. Это утверждение будет возвращать среднюю зарплату для всех сотрудников, чье звание равно «Разработчик».

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

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