powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Отключение расчета агрегаций между конкретными измерениями
14 сообщений из 14, страница 1 из 1
Отключение расчета агрегаций между конкретными измерениями
    #32626497
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть куб на 25+ измерений. Из-за большого числа этих самых измерений и, как следствие огромного пространства возможных агрегаций, storage design проходит очень долго. Да и опять же по причине большого числа измерений, агрегации большей частью расчитываются не те. Просто отключать расчет агрегаций на определенных измерениях не подходит, поскольку где-то они нужны.
Есть ли возможность, средствами MDX или как-то иначе отключать расчет агрегаций между конкретными измерениями? Т.е. если я точно знаю, что измерения Тип клиента и Номер склада друг против друга никогда рассматриваться не будут, то между ними агрегации не считать? Или может возможно наоборот, руками прописать эти агрегации после storage design, там где они нужны?
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32628219
Фотография Nik V. Polonski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно отключать агрегацию на более низких уровнях измерений - чаще анализ скорее будет проводится по верхним, остальное посчитается на лету. Можно делать lazy agregations. Можно непересекающиеся измерения загонять в одно с properties, на их основе делать виртуальные.
А вот от переагрегированного куба ничего хорошего ждать не придется, это точно.
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32628542
Road Runner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32629013
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Road RunnerКроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.

А вы проверяли?
Будет рассчитывать, еще как. Он тупой как двери. Он даже считает аггрегации между иерархиями одного измерения, что само по себе маразм.
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32629146
Вжик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В составе MS SSABI есть средство для управления агрегациями. Я ее не пользовал, так что ничего не гантирую.
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32629293
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nik V. PolonskiМожно непересекающиеся измерения загонять в одно с properties, на их основе делать виртуальные.
А вот от переагрегированного куба ничего хорошего ждать не придется, это точно.
- На этом форуме был вопрос, про то, как два измерения загнать в одно:
тут
Пока никто не ответил.
А по поводу "переагрегированного" куба, а как же UBO? Вроде как неплохо помогает и это тоже выход, вот только пользователи хотят получить сразу быстро работающий куб, а не тот, который нормально заработает через n-недель.

Road RunnerКроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.
- К сожалению почти во всех случаях измерения независимы.

ВжикВ составе MS SSABI есть средство для управления агрегациями. Я ее не пользовал, так что ничего не гантирую.
- Прошу извинить за возможно глупый вопрос: а что есть SSABI и как найти это средство?
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32629354
Road Runner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
backfire Road RunnerКроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.
А вы проверяли?
Будет рассчитывать, еще как. Он тупой как двери. Он даже считает аггрегации между иерархиями одного измерения, что само по себе маразм.
Нет, не проверял. Даже, честно говоря, сразу и не смогу придумать как это проверить. Но не должен. И уж про иерархии одного измерения нам вообще совершенно точно давали, что их пересечение не расчитывается. И если это не так, то это и правда маразм. А как это можно прверить?
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32629366
Road Runner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Roust_m Road RunnerКроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.
- К сожалению почти во всех случаях измерения независимы.

А они и не должны быть как-то особенно зависимы - просто в одном ставишь свойство, что оно зависит от другого (там выбираешь от какого). Насколько я понимаю, это просто средство сказать АСу, что эти измерения никогда не будут стоять на независимых осях и он, по идее, должен это учитывать при расчете агрегаций. Хотя вот BackFire утверждает, что он (АС) это никак не учитывает...
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32629566
Фотография Roust_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Road Runner Roust_m Road RunnerКроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.
- К сожалению почти во всех случаях измерения независимы.

А они и не должны быть как-то особенно зависимы - просто в одном ставишь свойство, что оно зависит от другого (там выбираешь от какого). Насколько я понимаю, это просто средство сказать АСу, что эти измерения никогда не будут стоять на независимых осях и он, по идее, должен это учитывать при расчете агрегаций. Хотя вот BackFire утверждает, что он (АС) это никак не учитывает...
- В любом случае при таком подходе агрегации не будут строиться по всему "зависимому" измерению. Это можно и так отключить: либо на все измерение либо на некоторые его уровни. А нужно примерно следующее: чтобы агрегации не строились между измерениями А и Б, но строились между А и В И Б и В.
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32630203
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Road Runner Нет, не проверял. Даже, честно говоря, сразу и не смогу придумать как это проверить. Но не должен. И уж про иерархии одного измерения нам вообще совершенно точно давали, что их пересечение не расчитывается. И если это не так, то это и правда маразм. А как это можно прверить?

В SSABI есть Aggregation Editor - глюкавый изрядно, но попользовать можно. Или на VBScript через DSO программулину написать, чтобы оные аггрегации поглядеть. Ни или если совсем лениво, то в таблице OlapObjects
посмотреть на предмет подобного

Код: plaintext
1.
2.
<AGGREGATION Name="111113111111121" Mode="0" DatasetName="111113111111121" SourceTable="+EIKI">
<CUSTOMPROPERTIES></CUSTOMPROPERTIES>
</AGGREGATION>
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32630228
Mosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
backfire Road RunnerКроме того, можно в сыойствах измерения (в Dimension Editor) в Advanced указать, что измерение depends on dimension ... и твое измерение. Насколько я понимаю, в этом случае агрегации не будут между ними расчитываться.

А вы проверяли?
Будет рассчитывать, еще как. Он тупой как двери. Он даже считает аггрегации между иерархиями одного измерения, что само по себе маразм.

Свойство измерения depends on dimension специально сделано чтобы не проэктировать аггрегация между этими двумя измерениями. Если backfire видел что это не всегда происходит, то либо он видел баг, либо он ошибается.
Расчет аггрегаций между иерархиями одного и того же измерения не всегда "маразм". Например, в измерении Время, можно иметь две иерархии - Год и Квартал. При этом key для Квартала не композитный. Аггрегация с гранулярностью Год и Квартал вполне нормальная.

Моша
----------------------------------------------------
This posting is provided "AS IS" with no warranties, and confers no rights
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32630313
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На сколько я понимаю в MS AS не существует нескольких иерархий в одном измерении, а OLEDB MD делает из нескольких измерений 1 с несколькими иерархиями если они названы определенным образом.

А на счет перекрестных аггрегаций между иерархиями - привожу пример из дефиниции куба и аггрегаций.



Код: 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.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
- <PARTITION Name="Budget" DataSource="FoodMart" JoinClause="("expense_fact"."store_id"="store"."store_id") AND ("expense_fact"."_DatumId"="dbo"."KalenderJahr"."_DatumId") AND ("expense_fact"."_DatumId"="dbo"."KalenderWoche"."_DatumId")" AggregationPrefix="Budget_Budget_">
  <CUSTOMPROPERTIES /> 
- <DIMENSIONS>
- <DIMENSION Name="Store">
  <CUSTOMPROPERTIES /> 
- <LEVELS>
- <LEVEL Name="(All)">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Store Country">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Store State">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Store City">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Store Name">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
  </LEVELS>
  </DIMENSION>
- <DIMENSION Name="Category">
  <CUSTOMPROPERTIES /> 
- <LEVELS>
- <LEVEL Name="(All)">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Category Description">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
  </LEVELS>
  </DIMENSION>
- <DIMENSION Name="Kalender.JahrMonatTag">
  <CUSTOMPROPERTIES /> 
- <LEVELS>
- <LEVEL Name="(All)">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Jahr">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Halbjahr">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Quartal">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Monat">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Tag">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
  </LEVELS>
  </DIMENSION>
- <DIMENSION Name="Kalender.JahrWocheTag">
  <CUSTOMPROPERTIES /> 
- <LEVELS>
- <LEVEL Name="(All)">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Jahr">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Woche">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
- <LEVEL Name="Tag">
  <CUSTOMPROPERTIES /> 
  </LEVEL>
  </LEVELS>
  </DIMENSION>
  </DIMENSIONS>
- <MEASURES>
- <MEASURE Name="Amount">
  <CUSTOMPROPERTIES /> 
  </MEASURE>
  </MEASURES>

поскипано

Код: 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.
- <AGGREGATION Name="1143" Mode="0" DatasetName="1143" SourceTable="+6L">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1144" Mode="0" DatasetName="1144" SourceTable="+6R">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1151" Mode="0" DatasetName="1151" SourceTable="+6A">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1152" Mode="0" DatasetName="1152" SourceTable="+6G">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1153" Mode="0" DatasetName="1153" SourceTable="+6M">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1154" Mode="0" DatasetName="1154" SourceTable="+6S">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1161" Mode="0" DatasetName="1161" SourceTable="+6B">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1162" Mode="0" DatasetName="1162" SourceTable="+6H">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>
- <AGGREGATION Name="1163" Mode="0" DatasetName="1163" SourceTable="+6N">
  <CUSTOMPROPERTIES /> 
  </AGGREGATION>


из ....AGGREGATION Name="1153".... следует, что рассчитываются аггрегации месяца и недели. Называть это можно как угодно, и как баг, и как маразм.
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32630410
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MoshaНапример, в измерении Время, можно иметь две иерархии - Год и Квартал. При этом key для Квартала не композитный. Аггрегация с гранулярностью Год и Квартал вполне нормальная.


Не могли бы вы прояснить подробнее.
Что вы подразумеваете под "композитный ключ"? Ключ, базирующийся на 2-х полях? Какое это имеет значание и как можно в AS2K добиться использования композитного ключа?
Какие аггрегации не должны рассчитываться, если речь идет об иерархиях одного измерения?
...
Рейтинг: 0 / 0
Отключение расчета агрегаций между конкретными измерениями
    #32632265
Mosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
backfireНа сколько я понимаю в MS AS не существует нескольких иерархий в одном измерении, а OLEDB MD делает из нескольких измерений 1 с несколькими иерархиями если они названы определенным образом.
Совершенно верно.

backfireА на счет перекрестных аггрегаций между иерархиями - привожу пример из дефиниции куба и аггрегаций.
...
из ....AGGREGATION Name="1153".... следует, что рассчитываются аггрегации месяца и недели. Называть это можно как угодно, и как баг, и как маразм

Я согласен, что аггрегация между месяцами и неделями не должна быть спроектирована. Я привел другой пример - между годами и кварталами, или между годами и месяцами, когда год находится в одной иерархии, а квартал/месяц в другой. Отчет, в котором года ставят на одну ось, а квартал/месяц полезен когда надо сравнить соответствующий квартал/месяц за прошлый год.

backfireЧто вы подразумеваете под "композитный ключ"? Ключ, базирующийся на 2-х полях? Какое это имеет значание и как можно в AS2K добиться использования композитного ключа?
Я говорил что ключ должен быть не композитный (Эффект композитного ключа в AS2K можно получить либо конкатенацией, либо введя суррогатный ключ и т.п.) Главное, чтобы кварталов было всегда 4 (а месяцов 12), а не 4*number_of_years.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Отключение расчета агрегаций между конкретными измерениями
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]