|  | 
| 
про SCOPE | |||
|---|---|---|---|
| #18+ Запнулся на SCOPE. Вопрос кубистам MD. Помогите советом. В разных магазинах в разные даты действует программа лояльности к клиентам. Время действия программы регистрируется датами в привязке к магазинам в Табл3. Как все же правильно составить SCOPE для периода времени, чтобы подсчитать в Табл1 выручку, которую получили только от магазинов из Табл3, т.е. в период действия программы лояльности? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 27.10.2021, 17:57 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ Nivatu, а связи между t1 и t4 нет вообще или она все-таки есть если есть почему бы не маркировать факт в t1 на этапе etl? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 27.10.2021, 18:11 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ ShIgor, Верно, связь между t1 и t4 есть. Но на нее нет надежды. Она даст широкий диапазон. Его еще отсеять надо. И в конце концов рулить в t1 при расчете искомой выручки будет самый узкий фильтр. Это, как я писал, магазины, в которых была лояльность в заданном периоде. В DAX за несколько шагов можно получить отфильтрованную Т2 и затем в простой формуле применить ее как табличный фильтр для расчета мер в Т1. В MDX вижу решение только через SCOPE. Хотя для меня это один из самых загадочных операторов MDX. Например, нигде не встречал объяснение когда используется знак * в его определении. Про ETL. Это для меня сейчас резервный вариант. Маркетологи постоянно запускают какие то активности. Их уже сотни. А потом думают как всю эту музыку математикой измерить. Постоянное редактирование ETL чревато появлением скрытых ошибок. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 28.10.2021, 06:37 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ Nivatu, одно из простейших решений: добавьте в факт Тбл3 еще одно поле со значением 1 для каждого факта. создайте в группе мер Тбл3 меру на основании этого поля с именем, скажем, [фактАкции]. в первой группе мер скопируйте любую необходимую меру, скажем [Мера1] -> [Мера1Акционная] укажите в ее свойствах MeasureExpression = Measures.[Мера1Акционная] * Measures.[фактАкции] повторите операции для всех необходимых мер из первой группы. все. минус - то что меры будут задублированы. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 29.10.2021, 11:20 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ ShIgor, Для поиска решения я ввел как раз такую меру в Тбл3. И спасибо за подсказку про "MeasureExpression". Не подумал про эту штуку. А вот дальше ... проблема. В Таб1 у меня есть уже 80(!) мер, в том числе тяжелых расчетных. Рука не поднимется множить эту бодягу примерно на 2. Итак то производительность не ахти. Попутно отыскал таки объяснение звездочке в определении SCOPE ))... Так, пустяки. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 29.10.2021, 11:36 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ Привязал свой пример к AdventureWorks. Может так кому то проще будет. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 29.10.2021, 12:36 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ Nivatu, тогда остается m2m mgrПродажи mgrАкцииdimДата keyДата keyДатаdimТТ keyТТ keyТТdimАкция m2m(mgrАкции) keyАкция это даст на уровне All Акций - все продажи, включая безакционные на уровне членов акций - разбивка по акциям но все безакционные в unknown member акций не попадут. чтобы они попали надо делать еще одну промежуточную группу мер. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 29.10.2021, 14:57 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ Nivatu Запнулся на SCOPE. Вопрос кубистам MD. Помогите советом. В разных магазинах в разные даты действует программа лояльности к клиентам. Время действия программы регистрируется датами в привязке к магазинам в Табл3. Как все же правильно составить SCOPE для периода времени, чтобы подсчитать в Табл1 выручку, которую получили только от магазинов из Табл3, т.е. в период действия программы лояльности? Мое мнение не надо развлекаться на уровне кубов. Сделайте таблицу фактов или вьюху над таблицей фактов, где все предварительно рассчитайте. Материализованная таблица фактов предпочтительнее. https://habr.com/ru/post/441538/ ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 08.11.2021, 19:42 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ a_voronin, для того чтобы произошел т.н. взрыв данных? если вьюхой еще можно обойтись без увеличения занятого пространства ненужными фактами, то со временем обработки такое не прокатит. а это надо кому? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 09.11.2021, 10:55 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ ShIgor a_voronin, для того чтобы произошел т.н. взрыв данных? если вьюхой еще можно обойтись без увеличения занятого пространства ненужными фактами, то со временем обработки такое не прокатит. а это надо кому? Ваш вопрос выводит нас на конфликт идеологий между Кимбаллом и Инмоном. Именно вопрос в том, материализовать факты или нет. Как раз решения без материализации фактов со временем приводят к росту времени обработки. А что касается занимаемого места, то колумсторы решают эту проблему и решают хорошо. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 09.11.2021, 13:18 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ a_voronin, Shlgor Пока отъехал на резервном варианте, т.е. через "взрыв данных". Если не переводить этот куб на DAX, чего пока по некоторым соображениям делать не хочется, то, с большой вероятностью, резервный станет основным. Не получается каменный цветок (с) ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 10.11.2021, 12:50 |  | ||
| 
про SCOPE | |||
|---|---|---|---|
| #18+ a_voronin Ваш вопрос выводит нас на конфликт идеологий между Кимбаллом и Инмоном. Именно вопрос в том, материализовать факты или нет. Тут скорее вопрос - материализовать ли синтетические факты или нет. Коль скоро они синтетические - возникает соблазн не материализовывать и генерить в момент обсчета. По своему опыту - соглашусь что колумстор жмет хорошо и проще/надежнее материализовывать. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 11.11.2021, 16:39 |  | ||
|  | 

| start [/forum/topic.php?fid=49&gotonew=1&tid=1857069]: | 0ms | 
| get settings: | 9ms | 
| get forum list: | 11ms | 
| check forum access: | 3ms | 
| check topic access: | 3ms | 
| track hit: | 40ms | 
| get topic data: | 11ms | 
| get first new msg: | 7ms | 
| get forum data: | 2ms | 
| get page messages: | 50ms | 
| get tp. blocked users: | 1ms | 
| others: | 12ms | 
| total: | 149ms | 

| 0 / 0 | 
