Ярлыки

четверг, 5 ноября 2015 г.

Webi долго работает

Столкнулся с проблемой. BEx отчет отрабатывает за 8 секунд, Webi на нем отрабатывает 140 секунд.

Решал следующим образом:
1. Поставил трейс в ST01 на SQL. Не увидел ничего криминального
2. Поставил трейс в RSTT. Увидел, что большинство времени тратится на два FM:
  • RSR_MDX_BXML_GET_INFO - получает информацию от bex
  • RSR_MDX_BXML_GZIP_DATA - упаковывает запрос и передает неоднократно на сервер  BObj
3. Зашел в STAD, увидел то же самое. Заметил, что Memory Used около 500 мб. Подумал, что наверно, большой объем данных передается из BEx в BO.
4. Обратил внимание, что в BEx отображается 1000 строк, а в сводке запроса Webi 14000 строк. Это означает, что настройка подавления нулей была проигнорирована стороной Webi, Query Designer предупреждал об этом
5. Создал несколько фильтров на стороне запроса Webi, скрывающий нулевые строки. В результате в отчет стало передаваться меньше данных.
6. Уменьшил количество фильтров до одного - спустил расчет фильтруемых значений в BEX - сократил в семь раз время выполнения.