Excel Power Query (он же Get и Transform) в 10 раз медленнее после обновления - PullRequest
0 голосов
/ 14 ноября 2018

Я уже некоторое время использую Excel Data Get and Transform (например, Power Query) для запроса данных с нашего сервера Excel BI хранилища данных с помощью мастера SSAS.

Ряд таких запросов, которые извлекли более 500 000 записей (до 3 или 4 миллионов строк), начали не завершаться примерно к 1 августа 2018 года.

После создания минимального тестового запроса (QueryTest), настроенного так, чтобы едва возвращать 450 тыс. Записей в течение примерно часа в «режиме сбоя», мы имеем одну основную гипотезу: кажется, что причиной является обновление версии Office / Excel.

Если мы используем более ранние версии MS Office 365 (например, около 1705, сборка 8201.2200, нажмите для запуска), тогда QueryTest вернет все 450 тыс. Записей примерно за 6 минут. Если мы используем текущие, обновленные версии Excel (v 1803, сборка 9126.2295), тестовые прогоны иногда не завершаются до истечения времени ожидания через час или занимают значительно больше, чем 1/2 часа. (См. Таблицу номинальных 6 минутных пробегов.)

В быстрых, более ранних версиях Excel на вкладке «Данные» на ленте Excel предусмотрены отдельные пункты меню «Показать запросы» и «Показать подключения», и каждая команда открывает отдельную панель.

В «сломанных» более поздних версиях есть только один элемент для «Показать запросы и соединения», и на открывшейся панели имеется вкладка «Запросы и соединения».

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

Мы также используем Excel в Citrix, где проблема не существует, но, похоже, наша версия Citrix Excel является одной из «старых» версий с разделенными меню «Запросы и соединения».

Мы протестировали с удаленной TrendMicro (нашей антивирусной программой) без изменения относительной разницы в производительности.

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

Итак, кто-нибудь знает, что могло произойти в обновлениях, которые могут быть причиной этого, и, что более важно, как настроить запрос сервера и / клиента для восстановления скорости?

Результаты теста:

Test Name       Records Seconds Records/Sec Complete
Old version 1    454,781    140  3,248.44   yes
Old version 2    454,781    137  3,319.57   yes
Old version 3    454,781    141  3,225.40   yes
New version 1    101,284    360  281.34     No
New version 2    94,836     360  263.43     No
New version 3    107,236    360  297.88     No
...