Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Уважаемые знатоки MSOLAP Есть необходимость создания иерархических измерений, по которым должна происходить агрегация. Только проблема в том что исходные данные не являются, строго говоря, деревьями, а являются направленным графом, который можно представить как множество деревьев с общими ветвями Как ни бился над проблемой никак создать такое измрение в AS2000 не получается Может все-таки есть какой способ? И как я понял, такой возможности нет и в AS2005 Или я все же ошибаюсь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2005, 14:12 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Новый2Уважаемые знатоки MSOLAP Есть необходимость создания иерархических измерений, по которым должна происходить агрегация. Только проблема в том что исходные данные не являются, строго говоря, деревьями, а являются направленным графом, который можно представить как множество деревьев с общими ветвями Как ни бился над проблемой никак создать такое измрение в AS2000 не получается Может все-таки есть какой способ? И как я понял, такой возможности нет и в AS2005 Или я все же ошибаюсь? Наверное вот так в лоб в общем виде и не провернешь, но наверняка, множество решаемых вами задач можно свести к более конкретному случаю, который можно изоложить в терминах возможностей AS2K(5). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2005, 14:46 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
А разбить граф на несколько измерений (возможно виртуальных) не подходит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2005, 14:58 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Если подскажете как - буду очень благодарен Как конкретный пример: есть справочник территорий ОКАТО И есть справочник вхождений территорий {parent,child}. А способов териториального деления существует несколько (Административное деление, Экономическое) Получается корней несколько, а листья и ветви из которых они собираются одни и те же. Вот и непонятно как это реализовать в AS2000 или хотя бы в AS2005 :(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2005, 15:06 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
to AAron Про разбиение на несколько измерений уже думали, но: 1. это уже не то что хотелось бы (нужно будет постоянно манипулировать разными изменениями с одинаковым смыслом). Неудобно - это пол беды 2. как я понял, придется разбивать не только измерение, но и куб - а это еще большие проблемы (Хотелось бы ошибаться в данном вопросе) 3. структура графа может меняться (это справочник), это означает, что нужно постоянно переразбивать граф, убивать и создавать измерения и кубы - это выглядит практически нереальным Вот и вопрос возник, может есть какое решение и стоит ли надеяться на AS2005 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.08.2005, 15:16 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
это вот такая связь что ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2005, 10:55 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Такая "раскрутка" устроит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2005, 11:23 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
То что предлагает Юрий Абель, легко релизуется одним измерением с несколькими иерархиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2005, 13:04 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
backfireТо что предлагает Юрий Абель, легко релизуется одним измерением с несколькими иерархиями. Parent-Child измерением, если быть точным. Просто хотел сначала убедится, что автора топика это устроит, а потом показывать решение. ;) P.S. /Off-Topic/ Моя фамилия не склоняется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2005, 13:26 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Кстати это та же самая ситуация, когда (у нас а проекте так) есть список видов расходов. Они могут собираться в дерево (к примеру "кифир" входит в группу "молочные продукты"). Но, для каких-то аналитических нужд существуют несколько моделей этих деревьев. Т.е., один и тот же вид расхода может оказаться в нескольких деревьях и, тем самым, иметь несколько родителей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2005, 13:40 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
На самом деле требуется с несколькими вершинами (как на рис) Но, наверное, это одно и тоже? Непонятно, как можно можно в одно измерение поместить 4 раза узел F и заставить его собираться по разным веткам Поделитесь пожалуйста решением ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2005, 10:15 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Новый2Если подскажете как - буду очень благодарен Как конкретный пример: есть справочник территорий ОКАТО И есть справочник вхождений территорий {parent,child}. А способов териториального деления существует несколько (Административное деление, Экономическое) Получается корней несколько, а листья и ветви из которых они собираются одни и те же. Вот и непонятно как это реализовать в AS2000 или хотя бы в AS2005 :(( Административное деление, Экономическое - Это все объясняет. Если эл. Административное деление точно такие же как и эл. Экономическое деление, то это два разных измерения иначе вы задвоите данные. Либо надо четко задать последовательность уровней что сначала идеть деление на Административные а потом на эконом. но это может сильно усложнить измерение. Точнее просто соберет эконом. группы в нутри админист. групп. Вообщем это коопиративные измерения и жить в одном уровне иерархии могут только на бумаге. Это все справидливо если я правильно Вас понял. Корень Уровень 1 Уровень 2 Элементы -- Так моно -\\- Админ. Эконом. -\\- Корень Уровень 1 --\-- Админ, Эконом Элементы - Так будеть задвоение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2005, 14:35 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
to OLAPMASTER Я немного другое имел ввиду Ситуация примерно как на предыдущей картинке А "Административное и Экономическое деление" - это уже интерпретация нескольких корней, которые собираются из общих листьев и ветвей Т.е я хотел сказать, что понятно что это Parent-Child измерение, но как именно это реализовать - БОЛЬШОЙ вопров to Yuri Abele авторТакая "раскрутка" устроит? Устроит!!! Пожалуйста расскажите как вы этого добились от AS2000 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2005, 14:46 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Новый2to OLAPMASTER Я немного другое имел ввиду Ситуация примерно как на предыдущей картинке А "Административное и Экономическое деление" - это уже интерпретация нескольких корней, которые собираются из общих листьев и ветвей Т.е я хотел сказать, что понятно что это Parent-Child измерение, но как именно это реализовать - БОЛЬШОЙ вопров to Yuri Abele авторТакая "раскрутка" устроит? Устроит!!! Пожалуйста расскажите как вы этого добились от AS2000 Тогда последний вопрос, скажите листья однозначно принадлежат корню? Есть возможность вхождения одного листа в два корня? или принадлежность одно листа к двум членам одного уровня? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2005, 14:50 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
OLAPMASTERТогда последний вопрос, скажите листья однозначно принадлежат корню? Листья принадлежат одному или нескольким корням OLAPMASTERЕсть возможность вхождения одного листа в два корня? Есть возможность вхождения одного листа в два корня (это и есть основная проблема). Они могут входить в 2,3 и т.д. корней. Я потому и написал, что это не дерево, а направленный граф OLAPMASTER или принадлежность одно листа к двум членам одного уровня? На понял этого вопроса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2005, 15:41 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Yuri AbeleТакая "раскрутка" устроит? Расскажите пожалуйста, как вы это сделали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 15:43 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Новый2 авторТакая "раскрутка" устроит? Устроит!!! Пожалуйста расскажите как вы этого добились от AS2000 Виноват, что молчал - на выходных был. Рассказываю: Проблема наша где? - в Analisysis Services, т.к. ему необходимы как уникальные ID детей, так и только по одному родителю у ребенка. Тогда поступаем так: Для каждой уникальной комбинации Paren-Child строится таблица переводов. Для упомянутой моей картинки (см. ниже): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Табличку можно конечно и каждый раз перегенерить, но проще в режиме дополнения появившимися новыми комбинациями. Вот так: Код: plaintext 1. 2. 3. 4. Для упрощения понимания я оставлю только наш проблемный узел F с его родителями: Код: plaintext 1. 2. 3. Теперь для каждого уникального идентификатора ребенка найдем соотв. ему идентификатор родителя. Здесь получится дублирование: Код: plaintext 1. 2. 3. 4. Повторяющиеся родители нас (точнее Analisys Services) не устраивают, поэтому генерим еще один уникальный ID: Код: plaintext 1. 2. 3. 4. Из это уже таблицы строим таблицу описывающую Parent-Child Hierarchie: Код: plaintext 1. 2. 3. 4. Все, эту уже табличку подставляем в OLAP для построения иерархии. Связь же с таблицей фактов по полям Child и Parent. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 15:54 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Большое спасибо за отклик ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 18:35 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Похоже, что я на последнем шаге что-то не то нарисовал - по памяти рассказывал. Может все и правильно - ща переварю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 19:07 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Исправлено: Проблема наша где? - в Analisysis Services, т.к. ему необходимы как уникальные ID детей, так и только по одному родителю у ребенка. Тогда поступаем так: 1. Для каждой уникальной комбинации Paren-Child строится таблица переводов (translate). Для упомянутой моей картинки (см. ниже): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Где ID - искусственно генерящийся (обыкновенный IDENTITY(1,1) ) уникальный ключ. Табличку можно конечно и каждый раз перегенерить, но проще в режиме дополнения появившимися новыми комбинациями. Вот так: Код: plaintext 1. 2. 3. 4. Для упрощения понимания я выделю наш проблемный узел F с его родителями: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 2. Теперь для каждого уникального идентификатора ребенка найдем соотв. ему идентификатор родителя. Здесь получится дублирование в первом столбце: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 3. Дублирование нас (и Analisys Services) не устраивает, поэтому генерим еще один уникальный ID ( ID2 ): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 4. Идя по цепочке ID2 -> PID1 -> ID1 -> ID2 находим новый PID2 . (см. в конце второе домашнее задание) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 5. Старые ID, PID и Parent (ID1, PID1 и Parent) в новом результате не нужны и их можно опустить: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Все, эту уже табличку подставляем в OLAP для построения иерархии. Связь же с таблицей фактов по полю Child . Я расписал все в пять шагов, но это для понятности. Некоторые соседние шаги можно слить в один. Но это, так сказать, домашнее задание ;) Еще одно домашнее задание - похоже, что старый PID1 и новый PID2 одинаковы. Возможно и так - проверять не охота. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2005, 00:11 |
|
||
|
MSOLAP Неправильные иерархические измерения
|
|||
|---|---|---|---|
|
#18+
Спасибо Yuri Abele!!! Я создал таблицную функцию Похоже, что все работает как надо!!! Только у меня получись, что пункты 3,4,5 нужно повторять до тех пор, пока не исчезнут задвоения ID Вот функция (если кому интересно): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2005, 13:13 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=33231937&tid=1871135]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
126ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 421ms |

| 0 / 0 |
