Измерения без какой-либо связи с таблицей фактов

В настоящее время я разрабатываю размерную модель, в которой есть такие размеры, как

заказы, товар, отгрузка, возврат, товар.

Моя цель — рассчитать показатели на дневном уровне и заполнить таблицу фактов.

Показателями являются количество заказов в день, общий валовой объем продаж в день, общий объем чистых продаж в день.

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

Но меня беспокоит то, будет ли нормально, если я оставлю измерения изолированными без подключения к таблице фактов?

Пожалуйста, сообщите мне об этом. Любая помощь будет оценена по достоинству. Спасибо.


person Teja    schedule 07.04.2017    source источник
comment
Я не уверен, что понимаю. Что будут делать измерения, если они не связаны с таблицами фактов? Если бы вы могли добавить свой дизайн таблицы и, возможно, несколько образцов записей, это поможет нам ответить на ваш вопрос.   -  person David Rushton    schedule 07.04.2017
comment
Это не таблица фактов, это просто (простой) отчет. Это результат того, что вы запросили вашу таблицу фактов без фильтрации по продукту, отгрузке, возвращаемому товару и выбора измерения времени по дате. Отсутствие связи с измерением означало бы, что вы можете сделать только ЭТОТ отчет, и это действительно было бы очень плохой dwh.   -  person momobo    schedule 07.04.2017
comment
Если вы имеете в виду «нужно ли мне определить отношение внешнего ключа», то нет, вы этого не сделаете, хотя многие все еще предпочитают.   -  person Rich    schedule 09.04.2017
comment
Вам не нужны внешние ключи в хранилище данных. Ссылочная целостность может обрабатываться вашим ETL. Это также позволяет осуществлять горячую замену размеров   -  person Neil McGuigan    schedule 12.04.2017
comment
Я думаю, @Teja задается вопросом, как я могу сообщить о новом покупателе, который ничего не заказывал (и, следовательно, не имеет записей о заказах в таблице фактов), но существует в таблице измерений?? Это так?   -  person Marcus D    schedule 20.04.2017


Ответы (1)


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

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

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

person Siddharth Shukla    schedule 07.04.2017