|
|
|
SSAS: Логич. плюха в комбинации [Related Dim.Usage] и автоматич. UNKNOWN_MEMBER
|
|||
|---|---|---|---|
|
#18+
Привет! Наткнулся на IMHO логическую плюху в комбинации опосредованного соединения измерения с фактами (Related Dimension Usage) и автоматической привязке "оборванных" ключей к UNKNOWN_MEMBER. Для того, чтобы материализовать опосредованное соединение, SSAS шлет к таблице фактов запрос, в котором он выполняет INNER JOIN c промежуточными таблицами измерений, дабы получить ключ, ссылающийся на опосредованное измерение. И в итоге получаем, что все факты, которые "оборваны" (т.е., к примеру содержат NULL в полях, ссылающихся на промежуточные таблицы измерений) будут потеряны. При этом, если снять галочку с флага материализации indirect ссылки, то факты не теряются (SSAS тогда не шлет запроса с INNER JOIN-ами). В итоге получаем, что эта галочка влияет не только на скорость и размер OLAP базы, но и на значения агрегаций! Приходится одно из двух: 1. еще на этапе ETL заменять все оборванные ссылки на ссылки с искусственными UNKNOWN элементами или 2. вместо прямых ссылок на таблицы фактов ссылаться на VIEW (или named query), которые сами через OUTER JOIN-ы "подгоняют" ссылки на опосредованные измерения, и соединять эти измерения уже с фактами напрямую. При этом процессинг OLAP базы существенно замедляется. Вот никогда не задумывался об этом, а тут напоролся и сильно "озадачился" :-S ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2012, 19:04:58 |
|
||
|
SSAS: Логич. плюха в комбинации [Related Dim.Usage] и автоматич. UNKNOWN_MEMBER
|
|||
|---|---|---|---|
|
#18+
Yuri Abele, Ну да, есть такая баго-фича. Я вот тоже наткнулся на нее ранее и недоуменно вопрошал общественность - "Ну почему, мы так не договоривались!" :-). Нарушения ссылочной целостности при связи измерений через referenced relationship. . Получается, что правильный способ, - отруливать на этапе ETL. Или - снимать галочки с флага материализации, - хотя пишут, что плохая практика, я не заметил существенных проседаний в производительности MDX запросов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2012, 10:27:51 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=39546834&tid=1858044]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
446ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 219ms |
| total: | 765ms |

| 0 / 0 |
