|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Hello world! В нашем приложении используется режим импорта данных. То есть когда нажимаем кнопку Refresh, данные закачиваются в файл powerBI. Файл весит 0,6 гБ. Когда пользователь подключается к отчету, он грузится около минуты. Потом начинает менять параметры (Год). Каждый раз при его смене нужно ждать около минуты. Когда пользователь вернет настройку срезов, к значениям, которые ранее задавались, то перерисовка проходит мгновенно. Можно ли автоматически прогревать отчет? Или как-то уменьшить время отрисовки отчета? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2022, 14:23 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
куб сделайте ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2022, 17:40 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Критик, OLAP-куб в конторе есть. Но его скоторсть не устраивает пользователей. Сейчас тестируем PowerBI. Собственно, в связи с этим и возник данный вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2022, 21:21 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3 Критик, OLAP-куб в конторе есть. Но его скоторсть не устраивает пользователей. Сейчас тестируем PowerBI. Собственно, в связи с этим и возник данный вопрос. Нанять специалиста не пробовали? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2022, 21:43 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3 Критик, OLAP-куб в конторе есть. Но его скоторсть не устраивает пользователей. Сейчас тестируем PowerBI. Собственно, в связи с этим и возник данный вопрос. Смысл такого тестирования от меня ускользает. Потому что по сути и то и то построена на одной и той же технологии. И если у вас куб тормозит, то pbi будет тормозить еще сильнее. Вы сейчас пытаетесь костылями решить проблему, причем скорее всего потратите на реализацию костылей ресурсов больше, чем на оптимизацию. Ps перезапуск вашего отчета сбрасывает кэш? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2022, 22:57 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Критик Потому что по сути и то и то построена на одной и той же технологии. И если у вас куб тормозит, то pbi будет тормозить еще сильнее. а можно подробней, откуда такая легенда и если байка правдива, то чего вдруг pbi уступит удаленному олап серверу ? 0.6гб крошечный объем для типичного десктопа, с m2 накопителем и заметно более частотными ядрами относительно серверных, почему pbi должен проиграть (раз уж технология та же)? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2022, 15:15 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Критик Критик, Ps перезапуск вашего отчета сбрасывает кэш? Подскажите как это проверить? Критик И если у вас куб тормозит, то pbi будет тормозить еще сильнее. Критик Вы сейчас пытаетесь костылями решить проблему, причем скорее всего потратите на реализацию костылей ресурсов больше, чем на оптимизацию. Пользователь всегда хочет быстрее и как можно развернутей. Ну и железо у нас не первой свежести. Куб тормозит когда делают детализацию до листьев по нескольким измерениям и накидывают кучу некулючевых атрибутов. То есть выгружают широкую простынь. Как извесно, время построения отчета, это время выполнение MDX-скрипта и отрисовка в EXCEL-е. Мною подмечено, на широких простынях "отрисовка в EXCEL-е" занимает больше времени чем "выполнение MDX-скрипта". То есть время построения отчета зависит от ресурсов на клиенте. Также если у пользователя стоит 32-х разрядный excel, то 2 Гб оперативной памяти может и не хватить. Если памяти хватило, то для того чтобы построить второй мега отчета на ПК пользователя должно быть достаточно оперативной памяти. Во время отрисовки сводной, отъедается память, а по окончанию EXCEL-файл ее не освобождает. Пользователь должет переоткрыть файл с отчетом. Иначе виснет винда. То есть сервер передал данные excel-ю. Затем он начинает подготавливать их к отрисовке. Память на клиенте начинает пухнуть. Потом появляется сводная. Файл еле ворочается, так как мало свододной оперативки. И приходится переоткрывать этот файл, чтоб память освободилась. А с PowerBI отчеты находятся на сервере и такой момент исключается. Отдельно хотел сказать про визуальные элемент matrix. Он абсолютно уступает Excelю с его pivotTable. И это, его самый жырный плюс. Визуальный элемент matrix в PowerBI это отличный способ отучить пользователей использовать простыни. Сначала они взвоют, а потом либо начнут строить нормальные отчеты, либо будут умолять вернуть куб с EXCEL-м. По поводу оптимизации OLAP-Куба. Партиции со слайсерами, ключи целочисленные, все что можно - хранится физически. Есть большие измерения (400000+ Элементов. Например номенклатура) но от них ни куда не денешся. Если что - то упускаю, советуйте, буду только рад! Ну и еще не хотелось, чтоб топик уносило в сторону от заданные в первом посте вопросов: 1. Можно ли автоматически прогревать отчет? 2. Как уменьшить время отрисовки отчета? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2022, 22:26 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
[quot yagrus3#22430337] Критик Критик, То есть время построения отчета зависит от ресурсов на клиенте. Также если у пользователя стоит 32-х разрядный excel , то 2 Гб оперативной памяти может и не хватить. Если памяти хватило, то для того чтобы построить второй мега отчета на ПК пользователя должно быть достаточно оперативной памяти. Во время отрисовки сводной, отъедается память, а по окончанию EXCEL-файл ее не освобождает. Пользователь должет переоткрыть файл с отчетом. Иначе виснет винда. То есть сервер передал данные excel-ю. Затем он начинает подготавливать их к отрисовке. Память на клиенте начинает пухнуть. Потом появляется сводная. Файл еле ворочается, так как мало свододной оперативки. И приходится переоткрывать этот файл, чтоб память освободилась. А с PowerBI отчеты находятся на сервере и такой момент исключается. Отдельно хотел сказать про визуальные элемент matrix. Он абсолютно уступает Excelю с его pivotTable. И это, его самый жырный плюс. Визуальный элемент matrix в PowerBI это отличный способ отучить пользователей использовать простыни. Сначала они взвоют, а потом либо начнут строить нормальные отчеты , либо будут умолять вернуть куб с EXCEL-м. Во первых, почитайте про терминальный сервер. Очень хорошо решает и проблемы с "32-х разрядный excel" и с "Файл еле ворочается, так как мало свододной оперативки". Во вторых - а почему вы думаете, что пользователи строят ненормальные отчеты? Я думаю, им как раз простыни и нужны... Мои от меня регулярно простыни требуют. И я даже понимаю, зачем они им. И для простыней я им думаю приспособить Power Pivot / Power Query прямо в екселе. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2022, 02:22 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3, >Когда пользователь вернет настройку срезов, к значениям, которые ранее задавались, то перерисовка проходит мгновенно. используется кеш >Можно ли автоматически прогревать отчет? мне о таких возможностях неизвестно. Думаю, что нет. >Или как-то уменьшить время отрисовки отчета? нужно разбираться, что у вас происходит. >В нашем приложении используется режим импорта данных Что вы назваете "наше приложение"? "режим импорта данных" - вы имеете ввиду, что речь о Import Mode, а не о Direct Query? >когда нажимаем кнопку Refresh Вы же про обновление данных датасета опубликованного на сервисе отчета? >Когда пользователь подключается к отчету, он грузится около минуты. Вся модель грузится в память. Если модель большая, то да - ожидание может быть долгим, особенно, если ПК слабоват. >Потом начинает менять параметры (Год). Каждый раз при его смене нужно ждать около минуты. У вас же Import mode, так? Что значит менять параметры? Параметры есть у датасета. Вы наверно имеете ввиду фильтрацию, накладываение фильтров. Так? Если так, то ожидание "около минуты" это ненормально. Нужен контекст. У вас на странице много вижуалов? Тормозит какой-то конкретный? Нужно понять что именно тормозит. Воспользуйтесь Performance Analyzer: https://docs.microsoft.com/en-us/power-bi/create-reports/desktop-performance-analyzer Найдите вижуалы, которые тормозят. Нужно оптимизировать их DAX код. Возможно, нужно уменьшить кол-во вижуалов на странице. Сколько строк в таблице, по которой работает запрос, который тормозит? Если десятки миллионов, то может есть смысл сделать преагрегаты. В модель вы залили только нужные данные? Если есть неиспользуемые столбцы - удалите лишнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2022, 03:53 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Вакшуль Сергей >В нашем приложении используется режим импорта данных Что вы назваете "наше приложение"? "режим импорта данных" - вы имеете ввиду, что речь о Import Mode, а не о Direct Query? Вакшуль Сергей >когда нажимаем кнопку Refresh Вы же про обновление данных датасета опубликованного на сервисе отчета? Вакшуль Сергей >Потом начинает менять параметры (Год). Каждый раз при его смене нужно ждать около минуты. У вас же Import mode, так? Что значит менять параметры? Параметры есть у датасета. Вы наверно имеете ввиду фильтрацию, накладываение фильтров. Так? Вакшуль Сергей Если так, то ожидание "около минуты" это ненормально. Нужен контекст. У вас на странице много вижуалов? Тормозит какой-то конкретный? Нужно понять что именно тормозит. Воспользуйтесь Performance Analyzer: https://docs.microsoft.com/en-us/power-bi/create-reports/desktop-performance-analyzer Найдите вижуалы, которые тормозят. Нужно оптимизировать их DAX код. Возможно, нужно уменьшить кол-во вижуалов на странице. Вакшуль Сергей Сколько строк в таблице, по которой работает запрос, который тормозит? Если десятки миллионов, то может есть смысл сделать преагрегаты. В модель вы залили только нужные данные? Если есть неиспользуемые столбцы - удалите лишнее. Агрегаты - не подойдут, так как нужна универсальность. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2022, 09:32 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3, Скажите, а сколько времени у вас занимает обновление датасета с таблицей в 100 000 000 строк? Сколько времени длится его обновление в Power BI desktop и сколько на Power BI service? В десктопе ограничений по времени нет, но десктоп это для разработки. Интересно, что происходит с таким обновлением на Power BI service. В таймаут не упираетесь? Я раньше с таким объемом не работал. Стало интересно, скорость работы базовых калькуляций (SUM, COUNT и пр). Нагенерировал данных. Две таблицы. Таблица Groups (10 записей): Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Таблица Table_Fact (100 000 000 записей): Код: c# 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.
Таблицы связал по полю GroupId Сделал две страницы. На первой - слайсер и таблица Гранулярность таблицы (уровень детализации) - GroupId. Т.е. калькуляции выполняются только для 10 записей. При смене фильтра в слайсере таблица пересчитывается за 1 секунду. Тут все ОК. На второй - слайсер и пара таблиц. Гранулярность таблицы (уровень детализации) - Id. Т.е. калькуляции выполняются для 100 000 000 записей (в вижуале выводится первые 500 строк, следующие 500 строк - доп.ожидание). В таблице одна простейшая measure - сумма по полю Так вот, при смене фильтра таблицы пересчитывается за 6-8 секунд. Т.е. через 8 секунд на Power BI service можно продолжать работать. Это была самая простейшая measure. Чуть сложнее и будет затык. Если обязательно нужно опуститься до уровня одной записи этой мега таблицы, то этот момент нужно продумывать. Например, не показывать ничего если не наложены фильтры. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2022, 21:05 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3 Hello world! В нашем приложении используется режим импорта данных. То есть когда нажимаем кнопку Refresh, данные закачиваются в файл powerBI. Файл весит 0,6 гБ. Когда пользователь подключается к отчету, он грузится около минуты. Потом начинает менять параметры (Год). Каждый раз при его смене нужно ждать около минуты. Когда пользователь вернет настройку срезов, к значениям, которые ранее задавались, то перерисовка проходит мгновенно. Можно ли автоматически прогревать отчет? Или как-то уменьшить время отрисовки отчета? 1. Прогревать кеш можно, но в вашем случае он навряд ли поможет, т.к. довольно специфичен. 2. Нужно иметь ввиду, что инфа о размере файла 0,6 Гбт дает только понимание того, что в памяти сервера он займет места не меньше. На практике это могут быть от 0,6 до нескольких Гбт. 3. У вас вся модель данных отчета загружается в память сервера. В правильной модели все запросы и отрисовка обычно должны обрабатываться быстро. Если это не так, то неэффективности могут быть на уровне модели, в том числе в формулах, а также в железе не первой свежести. Тут уже про это писали. В любом случае от кубов вы не ушли. Ваш пользователь, впереди всех загружая утром отчет в Power BI, невольно разворачивает куб в памяти сервера. И на это у вас требуется время. Второй зашедший в этот отчет юзер ничего не разворачивает. Он сразу получает данные, которые уже в ОЗУ. Модель данных держится в памяти некоторое время. Если за отведенное сервером интервал никто не пользовался моделью данных(кубом), то она из памяти вытирается. И условно "после обеда" зашедшему в отчет юзеру приходится все "разворачивать" снова. И ждать около минуты. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2022, 10:09 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Простой рецепт: 1. Выкинуть PowerBI 2. Взять QlikView 3. (profit) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2022, 12:21 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
L_argo Простой рецепт: 1. Выкинуть PowerBI 2. Взять QlikView 3. (profit) Или 1. Ничего не выкидывать 2. Добавить TABULAR SSAS 3. Сдобрить опытным специалистом ... вполне себе рабочая связка с большими возможностями. Размер загружаемого отчета при этом будет не больше 100 Кбт ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2022, 13:59 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Nivatu Ваш пользователь, впереди всех загружая утром отчет в Power BI, невольно разворачивает куб в памяти сервера. И на это у вас требуется время. Второй зашедший в этот отчет юзер ничего не разворачивает. Он сразу получает данные, которые уже в ОЗУ. Модель данных держится в памяти некоторое время. Если за отведенное сервером интервал никто не пользовался моделью данных(кубом), то она из памяти вытирается. И условно "после обеда" зашедшему в отчет юзеру приходится все "разворачивать" снова. И ждать около минуты. Открываю новую вкладку браузера. Копирую туда ссылку отчета. Нажимаю энтэр. Начинает расходоваться оперативка. Хотя ранее я просматривал в desktop-e данный отчет. Меняю значения в срезе. Оперативка - примерно такая же. Загружается процессор. Отчет строится порядка 15 сек. Если ранее значения среза уже выбирались, то все летает. Повторяю действия: Открываю новую вкладку браузера. Копирую туда ссылку отчета. Нажимаю энтэр. Начинает расходоваться оперативка. И так далее, один в один. То есть у меня куб разворачивается для каждой сессии. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2022, 18:31 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Nivatu, Данные в powerBI тянутся из реляционного DWH. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2022, 18:33 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Большинство BI, в отличие от традиционных СУБД, работают в оперативной памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2022, 21:49 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3, автор>Когда пользователь вернет настройку срезов, к значениям, которые ранее задавались, то перерисовка проходит мгновенно. используется кеш >Можно ли автоматически прогревать отчет? мне о таких возможностях неизвестно. Думаю, что нет. Еще раз, чуть подробней. MDX queries используют как FE, SE кеш. DAX queries используют только SE кеш. Power BI генерирует DAX queries. Соответственно используется только SE кеш. На том стенде, о котором я писал (100 000 000 строк в таблице) использование SE кеша сокращает выполнение запроса ~ в два раза. Т.е. с 6-и секунд до 3-х. Это мониторится через DAX Studio. А вот тот эффект, о котором пишите вы, когда "перерисовка проходит мгновенно" - это уже не кеш движка. Это кеш визуальной части Power BI. Вы работаете с отчетом, накладываете фильтры и получаете результат. Когда вы возвращаетесь к использованным ранее фильтрам, то Power BI помнит, что он уже посылал движку такие запросы и он помнит результат их выполнения. А раз он он знает ответ на запрос, то он тогда вообще не посылает запросов к движку. Используется кеш визуальной части. Поэтому, как вы говорите, "перерисовка проходит мгновенно". И она действительно мгновенна. То, что при повторых кликах по слайсеру движок не получает запросов, можно убедится включив трассировку запросов в DAX Studio (All Queries). Там тишина, запросов нет. Но если применить новые фильтры, которые вы раньше не использовали, то тогда к движку опять пойдут запросы. Обратная сторона медали такого поведения в том, что если у вас обновился датасет, а вы, работая в отчете, все кликаете одни и те же комбинации фильтров и не делаете рефреш страницы, то происходит рассогласование визуальной части с данными датасета. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 02:32 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3 Nivatu, Данные в powerBI тянутся из реляционного DWH. У всех разные источники. Только, если вы работаете с PowerBI Report Server, то вы работаете c продуктом 2 в 1. Web-сервер + встроенный табулярный движок куба. Данные для дашбордов берутся из куба. Точно ответить на ваши вопросы это сыграть в угадайку. А направления поиска вам уже тут написали. Я бы копал модель данных. Кстати, сколько памяти сервера займет ваша модель (отчет) можно узнать через DAX Studio, вкладка View Metrics. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 08:20 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Nivatu У всех разные источники. Только, если вы работаете с PowerBI Report Server, то вы работаете c продуктом 2 в 1. Web-сервер + встроенный табулярный движок куба. Данные для дашбордов берутся из куба. разве фраза "используется режим импорта данных" не отменяет всю легаси с кубами !? там же in-memry columnar сторидж от VertiPaq, а не кубы. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 10:31 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
H5N1 Nivatu У всех разные источники. Только, если вы работаете с PowerBI Report Server, то вы работаете c продуктом 2 в 1. Web-сервер + встроенный табулярный движок куба. Данные для дашбордов берутся из куба. разве фраза "используется режим импорта данных" не отменяет всю легаси с кубами !? там же in-memry columnar сторидж от VertiPaq, а не кубы. Про легаси вопрос из теории , а не практики. В этой ветке форума не об этом. Сторидж VertiPaq лишь часть от Storage engine куба. Tabular Куб включает в себя гораздо больше и использует в качестве языков запросов как DAX, так и MDX. Поэтому корректнее говорить куб, а не сторидж от VertiPaq ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 14:23 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Nivatu Про легаси вопрос из теории , а не практики. В этой ветке форума не об этом. Сторидж VertiPaq лишь часть от Storage engine куба. Tabular Куб включает в себя гораздо больше и использует в качестве языков запросов как DAX, так и MDX. Поэтому корректнее говорить куб, а не сторидж от VertiPaq так VertiPaq это же совершенно плоская структура. DAX просто язык запросов. вот MDX да, наверно только в связке с кубами имеет смысл, но тут то "используется режим импорта данных". разве это не четкая противоположность кубам во всем ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 14:35 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
Вакшуль Сергей Скажите, а сколько времени у вас занимает обновление датасета с таблицей в 100 000 000 строк? Вакшуль Сергей Сколько времени длится его обновление в Power BI desktop и сколько на Power BI service? Вакшуль Сергей В десктопе ограничений по времени нет, но десктоп это для разработки. Интересно, что происходит с таким обновлением на Power BI service. В таймаут не упираетесь? С помощью Performance analyser получил такие результаты(на вкладке два визуальных элемента Slicer и Matrix): 1 Меняю значение среза на значение которое еще не задавалось Slicer 71Matrix 10954DAX query 9570Visual display 943Other 441 2. Меняю значение среза на такое, которое ранее задавалось Slicer 55Matrix 781Visual display 627Other 154 В общем получается, в PowerBI не предусмотрено за ранее кешировать DAX запросы. Единственный вариант это оптимизация DAX запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 14:37 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3, >Загрузка из SQL в модель powerBI длится примерно 16 мин Спасибо. Одной проблемой меньше. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2022, 15:53 |
|
PowerBI. Время построения отчета.
|
|||
---|---|---|---|
#18+
yagrus3, yagrus3Можно ли автоматически прогревать отчет? и еще в тему. Если положите датасет в Premium workspace, то получите некий выиграш от кеша: https://docs.microsoft.com/en-us/power-bi/connect-data/power-bi-query-caching Заведите триальную PPU лицензию (обычная - 20$). Под ней создайте Premium workspace. Опубликуйте. Попробуйте поработать. Оцените. По идее, если повезет, то время выполнения может сократится раза в два. Но это именно кеш, а не тот эффект, о котором писали вы: yagrus3>Когда пользователь вернет настройку срезов, к значениям, которые ранее задавались, то перерисовка проходит мгновенно. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2022, 23:01 |
|
|
Start [/forum/topic.php?fid=49&msg=40131947&tid=1857036]: |
0ms |
get settings: |
3ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
45ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
410ms |
get tp. blocked users: |
0ms |
others: | 43ms |
total: | 512ms |
0 / 0 |