Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
MS SQL2000 + MS AS 2000. П4-2.4 + 1Гб рам. Виртуальный куб План-Факт. 3 реальных измерения(Дата, товар, ТипКлиента) +3 виртуальных от товара (Производитель, Подкатегория, Бренд) + Данные "Количество" и "сумма". Исходные кубы агрегированы со 100% perfomance, номенклатура ок 400 поз, время-2года. В кубах детализация до уровня День. Одна из основных и частых задач - сведения о выполнии плана НАРАСТАЮЩИМ итогом с НАЧАЛА МЕСЯЦА. Проблема - долгий (до 5мин) расчет к концу месяца развернутого отчета, т.е. при выбранной дате по подкатегории, бренд, товар - отображение плана нараст итогом, факта нар итогом, отклонения абсолютного и в % (все сделано CM). Расчет идет на сервере. В MDX выражениях перепробовал разные варианты функций PeriodsToDate([Месяц],[Дата].CurrentMember), Mtd([Дата].CurrentMember) [Дата].CurrentMember.Parent.FirstChild:[Дата].CurrentMember Но результат примерно одинаковый. Прошу помощи спецов. Как можно убыстрить/оптимизировать сию модель в рамках имеющегося ПО и железа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 12:43 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Vi bi pokazali ponii MDX zapros, a inache trudno sudit gde u vas provlemi. Kakie u vas parametri soedineniya ADOMD? Chto ispolzuetsya v kachestve Client? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 15:35 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
V chem zaklyuchaetsya vashe virazhenie? ORРасчет идет на сервере ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 15:36 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Для "ФактТ нарастающим с начала месяца" : iif([Дата].CurrentMember.Level.Name = "День", sum(MTD(), Measures.[ФактТ]), Measures.[ФактТ]) Клиент: MS ExcelXP Provider=MSOLAP.2;Integrated Security=SSPI;Persist Security Info=False;Data Source=SQLSRV;Initial Catalog=РРР;Client Cache Size=25;Auto Synch Period=10000;Execution Location=3;Large Level Threshold=100; "Расчет на сервере" - имелось в виду, что Execution Location=3 в парам соединения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 16:01 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Poprobuite prosto Provider=MSOLAP.2;Integrated Security=SSPI;Persist Security Info=False;Data Source=SQLSRV;Initial Catalog=РРР; A eto vikinut. Client Cache Size=25;Auto Synch Period=10000;Execution Location=3;Large Level Threshold=100; Pamyati butet zhrat bolshe, no bistrodeistvie budet luchshe, esli pamyati na kliente havataet. Po moemu opitu - natavlyat Olap Client/Server s pom opcii connection string - tolko uhudshat proizvoditelnost :-). A ne prosche li vam objyavit Calculated member ne v Measures, a v Time Dimension. Ya delayu imenno tak i na proizvoditelnost ne zhaluyus. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 18:29 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
А пробовали сделать вирт. измерения не виртуальными? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2004, 07:07 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
to Quark: Делал, не помогает. Они, в принципе, маленькие, 2-10 листьев, так что особо не повлияли. to backfire: Часть строки выкинул, выполняться стало на клиенте, ~10% быстрее. Но дело в том, что при расчете СМ в основном грузится проц, а на клиенте в основном стоят Cel. Так что выигрыша не получится особого :( А можно немного подробнее про объявление СМ в TimeDimension? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2004, 10:03 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
U menya MDX generitsya moim klientom, tochnee serverom prilochenii, no po optnoscheniyu k AS eto vse ravno klient. Vot naprimer, 1-ya kolonka den, 2-ya den nakopleniem s nachala mesyaca, 3-ya mecyac, 4-ya mesyac nakopleniem s nachala goda. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2004, 11:35 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Na skiolko bistro eto rabotaet? Fact Table okolo 6,000,000 zapisei. v BD 3 goda. Izmerenii okolo 25. Mer okolo 50 Krupneischie izmereniya: Tovar - okolo 100000 kategorii Klient okolo 20000 kategorii. Otcheti tipa visheprivedennogo vipolnyayutsya za 2-3 sec. Zhelezo 2x1GHz P3 + 4Gb Ram (server prilozhenii krutitsya na toi zhe mashine chto i OLAP server. (Pamyati mnogo ne bivayet) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2004, 11:57 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
korrektirovochka vmesto Код: plaintext 1. nado Код: plaintext 1. chtobi ne zashkalivalo.:-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2004, 12:00 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
спасибо, щас попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.02.2004, 12:28 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Это типовая проблема в неотимальности формулы нарастающего итога. Стоит уйти от PeriodsToDate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2004, 19:10 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
А не подскажите как? У меня в отличие от автора PIII 700 256RAM. 140000 в измерении товаров, 600 в измерении поставщков. И вот при попытке в crossjoin'e поставщиков,товаров и времени. в детализации до дней в одном месяце. при попытке открыть группу товаров в 6000 наименований и отфильтровать Null значения все тормозит примерно минуту. Или это нормально при таких параметрах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2004, 19:32 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
to backfire: К сожалению, использование СМ в TimeDimension не принесло кардинальных улучшений (запускал по нескольку раз MDX запросы к прилинкованному OLAP серверу через Query Analyzer на самом сервере). По видимому, проблема все таки в функции PeriodsToDate (как писал В.Иванов) и ее аналогах, где бы они не использовались, везде выбираются все листья и только потом суммируются. Вопрос В.Иванову: Чем все таки обойти эту проблему? Чем заменить использование Mtd() для расчета нараст итога с нач месяца? Хотя бы в каком направлении копать и возможно ли решение данного вопроса в рамках MDX и средств MS AS? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 14:51 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
To OR: Чем все таки обойти эту проблему? Чем заменить использование Mtd() для расчета нараст итога с нач месяца? Хотя бы в каком направлении копать и возможно ли решение данного вопроса в рамках MDX и средств MS AS? Насколько я помню, этот вопрос неоднократно обсуждался, и его оптимальное решение с использованием инструментария MS AS не было оглашено. Это ноу-хау г-на Иванова, и стоит оно столько, сколько стоит его тренинг (кстати не так дорого, долларов 500 всего лишь, если цены с тех пор не поднялись :) Если же Вы хотите дойти до этого решения сами - скажу, что Вам надо найти, как использовать агрегаты уровня Года, Квартала и Месяца, а не производить вычисления над дневными агрегатами. P.S. В ближайшие дни я буду в Киеве. Если у украинских любителей и профессионалов по OLAP будет желание обменяться опытом - пишите мне на адрес cognos@narod.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 15:17 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
To Jurii: В форуме я перечитал все что говорилось по этому поводу. Еще раз обращаю внимание, что нужен нарастающий итог С НАЧАЛА МЕСЯЦА ДО Текущей (или выбранной даты месяца). Как же тут использовать агрегаты Год, Квартал, Месяц и НЕ использовать агрегаты по дням текущего месяца? Или я где то торможу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 15:53 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
To OR: Еще раз обращаю внимание, что нужен нарастающий итог С НАЧАЛА МЕСЯЦА ДО Текущей (или выбранной даты месяца). Как же тут использовать агрегаты Год, Квартал, Месяц и НЕ использовать агрегаты по дням текущего месяца? Или я где то торможу? Да нет, Вы не тормозите. Я просто дал более общий ответ на Ваш частный вопрос. Мой ответ более актуален для ситуации, когда расчет идет не с начала месяца, а за произвольный период времни, когда задаются и начальная, и конечная дата. В Вашем случае я бы попробовал сделать уровень иерархии недели или декады, чтобы например для вычисления показателя на 25 число месяца серверу не надо было производить 25 операций, а всего лишь не более 7-8. Странно конечно, что у Вас при такой маленькой номенклатуре - такие тормоза... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 16:30 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
To Jurii: Фух, а то я уже рвал на себе волосы :) Я понимал, что СОВСЕМ без агрегатов по дням не обойтись. Для общего случая решение использовать укрупненные агрегаты было известно. Не хотелось бы неделю вводить, но попробую. Жаль, что чудес на свете не бывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 16:42 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
To OR: Жаль, что чудес на свете не бывает. Все относительно... Чтобы снизить время расчета при генерации Вашего отчета с 5 минут до стандартного времени отклика для OLAP-продуктов (от нескольких мгновений до нескольких секунд), нужно либо оптимально писать MDX, либо использовать более дружественные OLAP-продукты, где MDX генерится визуальными средствами... Или на худой конец - компромиссный вариант, когда в MS AS делаются простые кубы, а сложные отчеты делаются с помощью хорошего OLAP-клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 16:58 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Это понятно. Но в данном конкретном случае, наверное, MDX запрос сильно не прооптимизируешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 17:07 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
Но в данном конкретном случае, наверное, MDX запрос сильно не прооптимизируешь. Тогда остается совместно оптимизировать структуру куба и MDX... Вообще-то интересно, почему такая разница в производительности между PowerPlay (где нарастающий итог по справочникам с десятками тысяч товаров считается без тормозов) и Вашим небольшим кубиком в MS AS. Может быть разница в OLAP-клиенте - типа MS Excel сразу качает на себя все данные из куба и поэтому имеет место много вычислений, а PowerPlay качает на клиентскую машину данные порциями, и вычисления проводятся только для отрисовки текущего отчета... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 17:24 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
а PowerPlay качает на клиентскую машину данные порциями, и вычисления проводятся только для отрисовки текущего отчета... Если это так, то PowerPlay работает как OWC, там действительно расчитывается "кусками" для отображения на экране, в отличие от Excel XP, кот считает сразу по всем развернутым листьям. Я пробовал запускать мой запрос через IE, все достаточно чудненько и быстренько считается - неск сек, но только для отображаемых листьев, как только PageDown или копировать в эксел - уходит в более долгий расчет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 17:46 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
JuriЕсли же Вы хотите дойти до этого решения сами - скажу, что Вам надо найти, как использовать агрегаты уровня Года, Квартала и Месяца, а не производить вычисления над дневными агрегатами. Ne nado sovetovat to chto sami ne probovali, tem bolee ne yavlyayas specom po MS AS. Proverenno na praktike, chto HalfYear1 + Quartal3 + Month10 schitaetsya gorazdo medlennee chem PeriodsToDate(Month10). Pochemu voprosi k razrabotchikam MS AS, no eto fakt. ORК сожалению, использование СМ в TimeDimension не принесло кардинальных улучшений (запускал по нескольку раз MDX запросы к прилинкованному OLAP серверу через Query Analyzer на самом сервере). Vi bi esche cherez SOAP - clienta testirovali proizvoditelnos. Ne zabivaite pro HEAD, TOP* etc., chtobi ogranichit ob'em viborki. Esli u vas 10000 klientov, zachem oni vam vse srazu? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 18:12 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
To Backfire: Ne nado sovetovat to chto sami ne probovali, tem bolee ne yavlyayas specom po MS AS. Я давал эту рекомендацию исходя из функциональности Cognos PowerPlay (типа если разработчик MS AS напишет MDX оптимально, он достигнет производительности PowerPlay, если не оптимально - то MS AS будет работать медленнее). Там при расчете нарастающего итога берутся все предыдущие годы, кварталы текущего года, месяцы текущего квартала, недели текущего месяца и дни текущей недели - в итоге получается минимизация вычислительных операций, приводящая к превосходной производительности. Также я принимал во внимания подобные рекомендации г-на Иванова. Proverenno na praktike, chto HalfYear1 + Quartal3 + Month10 schitaetsya gorazdo medlennee chem PeriodsToDate(Month10). Pochemu voprosi k razrabotchikam MS AS, no eto fakt. Тогда непонятно, кто прав а кто не прав - Вы или г-н Иванов?... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 18:30 |
|
||
|
Еще раз про нарастающий итог и быстродействие.
|
|||
|---|---|---|---|
|
#18+
to backfire: Я по клиентам вообще измерение не делал, толлько признак внешний/внутренний, а по продукту Head, Top - не проходит, надо все сразу, причем сразу в виде Тип/Категория/Товар (короче говоря, нужна сводка план-факт по товарам и типам клиентов в кол и сумме с нараст итогом с нач месяца). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2004, 18:51 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32399962&tid=1872722]: |
0ms |
get settings: |
10ms |
get forum list: |
21ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
83ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 263ms |
| total: | 486ms |

| 0 / 0 |
