|
|
|
ssas проброс агрегации с учётом унарных операторов за иерархию родитель-потомок
|
|||
|---|---|---|---|
|
#18+
Всем доброго дня! столкнулись с одним интересным сценарием использования, который пока не удалось реализовать эффективно с точки зрения производительности: есть измерение с несколькими обычными иерархиями и ниже них иерархией родитель-потомок на уровне ключевого атрибута. то есть, другими словами, корневые уровни иерархии родитель потомок висят на ветвях других иерархий. в иерархии родитель-потомок для правильного расчёта используется unary operator. когда в контексте запроса мы явно обращаемся к parent-child иерархии, то значения корректно агрегируются с учётом нужного знака. в противном случае всё агрегируется простым суммированием. нам требуется, чтобы значения, рассчитанные с учётом unary operator отображались выше по иерархии. сейчас это удалось сделать только благодаря такого рода перекладке: Код: sql 1. 2. 3. (т.е. через меру, в которую мы засунули идентификаторы соответствующих корней parent-child и собрали их агрегатом max. это корректно, поскольку в контексте необходимой нам перекладки там в каждом случае код только одного из корней) проблема в том, что холодный запрос с такой перекладкой выполняется от 500мс, и это время линейно растёт в зависимости от количества строк отчёта. когда строк становится больше сотни это занимает неприлично много времени. без этой перекладки parent-child с unary operator выполняется не так грустно. может быть кто-то уже решал подобную задачу и сможет направить нас в направлении более элегантного и производительного решения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2020, 07:07 |
|
||
|
ssas проброс агрегации с учётом унарных операторов за иерархию родитель-потомок
|
|||
|---|---|---|---|
|
#18+
спасибо всем неравнодушным! всё оказалось достаточно банально... Код: sql 1. 2. 3. однако, полезно периодически обращаться к классике . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2020, 00:54 |
|
||
|
ssas проброс агрегации с учётом унарных операторов за иерархию родитель-потомок
|
|||
|---|---|---|---|
|
#18+
flame_brk, я читал сей документ не однократно и даже юзал его для простых случаев mdm но до таких высот не добирался перечитав его Код: sql 1. все равно не понял как отработате сей оператор не ясно что значит минус между 2-мя мемберами если не сложно - пояснли плз по русски т.е я понимаю логику что в одном случае надо взять плюс в другом минус но вот ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2020, 10:45 |
|
||
|
|

start [/forum/topic.php?fid=49&fpage=8&tid=1857322]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 130ms |

| 0 / 0 |
