Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
27.10.2021, 17:57
|
|||
---|---|---|---|
|
|||
про SCOPE |
|||
#18+
Запнулся на SCOPE. Вопрос кубистам MD. Помогите советом. В разных магазинах в разные даты действует программа лояльности к клиентам. Время действия программы регистрируется датами в привязке к магазинам в Табл3. Как все же правильно составить SCOPE для периода времени, чтобы подсчитать в Табл1 выручку, которую получили только от магазинов из Табл3, т.е. в период действия программы лояльности? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.10.2021, 18:11
|
|||
---|---|---|---|
про SCOPE |
|||
#18+
Nivatu, а связи между t1 и t4 нет вообще или она все-таки есть если есть почему бы не маркировать факт в t1 на этапе etl? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
28.10.2021, 06:37
|
|||
---|---|---|---|
|
|||
про SCOPE |
|||
#18+
ShIgor, Верно, связь между t1 и t4 есть. Но на нее нет надежды. Она даст широкий диапазон. Его еще отсеять надо. И в конце концов рулить в t1 при расчете искомой выручки будет самый узкий фильтр. Это, как я писал, магазины, в которых была лояльность в заданном периоде. В DAX за несколько шагов можно получить отфильтрованную Т2 и затем в простой формуле применить ее как табличный фильтр для расчета мер в Т1. В MDX вижу решение только через SCOPE. Хотя для меня это один из самых загадочных операторов MDX. Например, нигде не встречал объяснение когда используется знак * в его определении. Про ETL. Это для меня сейчас резервный вариант. Маркетологи постоянно запускают какие то активности. Их уже сотни. А потом думают как всю эту музыку математикой измерить. Постоянное редактирование ETL чревато появлением скрытых ошибок. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.10.2021, 11:20
|
|||
---|---|---|---|
про SCOPE |
|||
#18+
Nivatu, одно из простейших решений: добавьте в факт Тбл3 еще одно поле со значением 1 для каждого факта. создайте в группе мер Тбл3 меру на основании этого поля с именем, скажем, [фактАкции]. в первой группе мер скопируйте любую необходимую меру, скажем [Мера1] -> [Мера1Акционная] укажите в ее свойствах MeasureExpression = Measures.[Мера1Акционная] * Measures.[фактАкции] повторите операции для всех необходимых мер из первой группы. все. минус - то что меры будут задублированы. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.10.2021, 11:36
|
|||
---|---|---|---|
|
|||
про SCOPE |
|||
#18+
ShIgor, Для поиска решения я ввел как раз такую меру в Тбл3. И спасибо за подсказку про "MeasureExpression". Не подумал про эту штуку. А вот дальше ... проблема. В Таб1 у меня есть уже 80(!) мер, в том числе тяжелых расчетных. Рука не поднимется множить эту бодягу примерно на 2. Итак то производительность не ахти. Попутно отыскал таки объяснение звездочке в определении SCOPE ))... Так, пустяки. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.10.2021, 12:36
|
|||
---|---|---|---|
|
|||
про SCOPE |
|||
#18+
Привязал свой пример к AdventureWorks. Может так кому то проще будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
29.10.2021, 14:57
|
|||
---|---|---|---|
про SCOPE |
|||
#18+
Nivatu, тогда остается m2m mgrПродажи mgrАкцииdimДата keyДата keyДатаdimТТ keyТТ keyТТdimАкция m2m(mgrАкции) keyАкция это даст на уровне All Акций - все продажи, включая безакционные на уровне членов акций - разбивка по акциям но все безакционные в unknown member акций не попадут. чтобы они попали надо делать еще одну промежуточную группу мер. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
08.11.2021, 19:42
|
|||
---|---|---|---|
про SCOPE |
|||
#18+
Nivatu Запнулся на SCOPE. Вопрос кубистам MD. Помогите советом. В разных магазинах в разные даты действует программа лояльности к клиентам. Время действия программы регистрируется датами в привязке к магазинам в Табл3. Как все же правильно составить SCOPE для периода времени, чтобы подсчитать в Табл1 выручку, которую получили только от магазинов из Табл3, т.е. в период действия программы лояльности? Мое мнение не надо развлекаться на уровне кубов. Сделайте таблицу фактов или вьюху над таблицей фактов, где все предварительно рассчитайте. Материализованная таблица фактов предпочтительнее. https://habr.com/ru/post/441538/ ... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.11.2021, 10:55
|
|||
---|---|---|---|
про SCOPE |
|||
#18+
a_voronin, для того чтобы произошел т.н. взрыв данных? если вьюхой еще можно обойтись без увеличения занятого пространства ненужными фактами, то со временем обработки такое не прокатит. а это надо кому? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
09.11.2021, 13:18
|
|||
---|---|---|---|
про SCOPE |
|||
#18+
ShIgor a_voronin, для того чтобы произошел т.н. взрыв данных? если вьюхой еще можно обойтись без увеличения занятого пространства ненужными фактами, то со временем обработки такое не прокатит. а это надо кому? Ваш вопрос выводит нас на конфликт идеологий между Кимбаллом и Инмоном. Именно вопрос в том, материализовать факты или нет. Как раз решения без материализации фактов со временем приводят к росту времени обработки. А что касается занимаемого места, то колумсторы решают эту проблему и решают хорошо. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.11.2021, 12:50
|
|||
---|---|---|---|
|
|||
про SCOPE |
|||
#18+
a_voronin, Shlgor Пока отъехал на резервном варианте, т.е. через "взрыв данных". Если не переводить этот куб на DAX, чего пока по некоторым соображениям делать не хочется, то, с большой вероятностью, резервный станет основным. Не получается каменный цветок (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
11.11.2021, 16:39
|
|||
---|---|---|---|
|
|||
про SCOPE |
|||
#18+
a_voronin Ваш вопрос выводит нас на конфликт идеологий между Кимбаллом и Инмоном. Именно вопрос в том, материализовать факты или нет. Тут скорее вопрос - материализовать ли синтетические факты или нет. Коль скоро они синтетические - возникает соблазн не материализовывать и генерить в момент обсчета. По своему опыту - соглашусь что колумстор жмет хорошо и проще/надежнее материализовывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=49&mobile=1&tid=1857069]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 241ms |
total: | 374ms |
0 / 0 |