Смешивание данных на разных уровнях

Я отредактировал, чтобы перефразировать этот вопрос:

Мы хотим хранить торговые и субторговые данные. Итак, чтобы дать представление о данных, у нас есть такие входные данные:

Торговые данные (реляционное хранилище)

| TradeKey1 | TradeLevelMeasure1 |
| TradeKey2 | TradeLevelMeasure2 |

Субторговые данные

| TradeKey1 | SubTradeId1 | Measure2 | Measure3 |
| TradeKey1 | SubTradeId2 | Measure2 | Measure3 |    
| TradeKey2 | SubTradeId1 | Measure2 | Measure3 |    

Мы ищем лучшее решение для моделирования этого в AP.

Если мы используем реляционные хранилища для создания 2 хранилищ с таким же макетом, как указано выше (с хранилищем Sub-Trade, являющимся основным хранилищем ACTIVE_PIVOT) и присоединяем их на основе TradeKey, то мы в конечном итоге неправильно агрегируем показатели уровня торговли, поскольку сделка копируется в куб для каждой записи Sub-Trade. (Например, TradeLevelMeasure1 имеет двойное правильное значение, поскольку оно существует в кубе для обеих записей дополнительных сделок)

Решение, которое мы придумали, состоит в том, чтобы использовать один магазин и добавить новое измерение для указания уровня торговли (Trade или SubTrade). Итак, мы получаем что-то вроде этого:

| Trade    | TradeKey1 | TradeLevelMeasure1 |             |          |          |
| SubTrade | TradeKey1 |                    | SubTradeId1 | Measure2 | Measure3 |
| SubTrade | TradeKey1 |                    | SubTradeId2 | Measure2 | Measure3 |
| Trade    | TradeKey2 | TradeLevelMeasure2 |             |          |          |
| SubTrade | TradeKey2 |                    | SubTradeId1 | Measure2 | Measure3 |

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

Кажется ли это жизнеспособным решением, или есть лучший способ добиться этого?


person obrienk    schedule 10.04.2013    source источник


Ответы (1)


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

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

Распределенная архитектура ActivePivot предлагает элегантный способ объединения разнородных кубов на лету: полиморфное распределение ActivePivot.

Короче говоря, вы определите два простых куба, один на уровне торговли, с торговыми показателями, и один на уровне субторговли, который агрегирует только субторговые показатели. ActivePivot Polymorphic Distribution объединит их на лету в виртуальный куб, объединив общие измерения, а также сделав доступными уникальные меры в каждом кубе.

Вы найдете презентацию распределенной архитектуры ActivePivot от группы пользователей Quartet FS 2012 по адресу http://www.youtube.com/watch?v=VnZoelJulM4. Для получения документации вы можете начать с http://support.quartetfs.com/confluence/display/AP4/ActivePivot+Distributed+Architecture.

person Antoine CHAMBILLE    schedule 11.04.2013