Как построить измерение из двух отдельных иерархий в исходных данных - PullRequest
0 голосов
/ 23 ноября 2010

Я пытаюсь создать измерение для организации (называемое DimOrganisation ), но я не уверен, что использовать в качестве ключа.

Вот схема организации таблиц ...

alt text

Предприятия - это верхняя родительская таблица. Все данные, относящиеся к акциям, хранятся с помощью LocationID (это называется иерархией акций), а все данные, относящиеся к продажам, сохраняются с помощью RevenueCentreID (это называется иерархией доходов). На данный момент кубы требуются только для отображения данных по ProfitCentreID (мы бы сгруппировали измерение по ProfitCentreID в представлении перед загрузкой куба).

Вот несколько решений, которые я рассматривал:

  1. Создание составного ключа (RevenueCentreLocationKey). Вы никогда не захотите видеть такие данные, но я бы связал таблицу фактов с правильным ключом при построении кубов (например, ProfitCentreKey)
  2. Идите только до ProfitCentreID, потому что это все, что нам нужно. Исходные данные хранятся в хранилище данных (вместе с таблицами фактов и измерений), поэтому мы можем перейти к более подробным данным позже.
  3. Создание отдельного измерения RevenueCentre и Location в базе данных. Однако в кубе вы увидите только измерение, идущее к ProfitCentreKey

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

Я использую SQL Server 2008 (как для базы данных хранилища данных, так и для кубов служб Analysis Services)

1 Ответ

0 голосов
/ 23 ноября 2010

Я бы пошел с решением 3.

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

Являются ли ваши CostCentres и RevenueCentres реальными сущностями или они являются просто логическими механизмами, помогающими в бухгалтерии?

Существует ли CostCentre для каждого Доход-центра?

...