Я пытаюсь создать измерение для организации (называемое DimOrganisation ), но я не уверен, что использовать в качестве ключа.
Вот схема организации таблиц ...
Предприятия - это верхняя родительская таблица. Все данные, относящиеся к акциям, хранятся с помощью LocationID (это называется иерархией акций), а все данные, относящиеся к продажам, сохраняются с помощью RevenueCentreID (это называется иерархией доходов). На данный момент кубы требуются только для отображения данных по ProfitCentreID (мы бы сгруппировали измерение по ProfitCentreID в представлении перед загрузкой куба).
Вот несколько решений, которые я рассматривал:
- Создание составного ключа (RevenueCentreLocationKey). Вы никогда не захотите видеть такие данные, но я бы связал таблицу фактов с правильным ключом при построении кубов (например, ProfitCentreKey)
- Идите только до ProfitCentreID, потому что это все, что нам нужно. Исходные данные хранятся в хранилище данных (вместе с таблицами фактов и измерений), поэтому мы можем перейти к более подробным данным позже.
- Создание отдельного измерения RevenueCentre и Location в базе данных. Однако в кубе вы увидите только измерение, идущее к ProfitCentreKey
Я знаю, что это весьма субъективно, но я хотел бы получить любой совет или идеи, которые, по вашему мнению, могут быть полезны. Спасибо.
Я использую SQL Server 2008 (как для базы данных хранилища данных, так и для кубов служб Analysis Services)