Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Добрый день. Проблема следующая: есть некая хранимая процедура время выполнения которой в Management Studio занимает 10-20 секунд (результат ~5000 записей), при вызове этой же хранимки в клиенте(C#) загрузка данных может занять до 5 минут, причём прогресс показывает, что данные грузятся порциями по 50-100 строк(приблизительно). Несущественные(в плане времени выполнения в Management Studio) манипуляции(удаление/создание) с индексами иногда оказывают положительное действие и время загрузки данных на клиенте начинает совпадать со временем выполнения хранимки в Management Studio, но через некоторое время всё снова повторяется. В таком поведении пока замечена только одна хранимка. Подскажите, пожалуйста, куда смотреть? Код: sql 1. Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) Aug 22 2017 17:04:49 Copyright (C) 2017 Microsoft Corporation Express Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: ) (Hypervisor) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 14:46 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Смотреть на планы выполнения. Патчить сервер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 14:48 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Greedy, статья "медленно в приложении быстро в ssms" - не ваш случай? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 16:00 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
В приложении могут срабатывать какие-то события на этом читающем датасете. Чудес не бывает. Серверу все равно, кто запустил тот же самый запрос. Планы выполнения не должны отличаться. Правда может оказать влияние способ подключения и нюансы безопасности. Я уже тут описывал случай, когда наблюдались дикие тормоза при падении резервного контроллера домена. Есть много топиков на эту тему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 16:10 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
CU последнее накачу вечерком(там и проверю результат). Бегло ознакомился со статьей "медленно в приложении быстро в ssms", если я правильно понял, то там упор делается на разность скорости выполнения запроса в приложении и в SSMS, а у меня проблема в скорости передачи данных. Может , конечно, это одно и то же, а я смотрю не под тем углом на проблему, но если данные "полились" на клиента, то почему так медленно? И сеть тут не причём - запуск приложения на сервере выполняется так же долго. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 16:46 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
>Greedy, сегодня, 14:46 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1308851&msg=21804403][21804403] >Проблема следующая: … <Засеки время выполнения подобной конструкции: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 16:58 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Greedy, имо это настройки коннектора, например, на постраничную выгрузку. Был как-то любопытный случай - ускорялась загрузка в приложении при шевелении мышью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 17:22 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Greedyтам упор делается на разность скорости выполнения запроса в приложении и в SSMS, а у меня проблема в скорости передачи данных.В исходном вопросе указано, что процедура выполняется в SSMS и приложении разное время. Факты таковы. А причина: "из за разного вроемени передачи данных" - это вы уже придумали. Конечно, если другое процедуры передают данные быстро, а эта медленно, то дело не в "скорости передачи данных". Greedyно если данные "полились" на клиента, то почему так медленно?Потому что данные на клиента отдаются до завершения запроса. Сервер выполняет запрос, и по мере получения результата, возвращает данные клиенту. GreedyИ сеть тут не причём - запуск приложения на сервере выполняется так же долго.Тем более. Ещё и от сети не зависит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 22:59 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Владислав КолосовGreedy, имо это настройки коннектора, например, на постраничную выгрузку. Был как-то любопытный случай - ускорялась загрузка в приложении при шевелении мышью.Всякое может быть, конечно, но для начала всегда смотрят планы, и вообще, что там в профайлере - одинаково выполняется запрос, или нет. Как и написали сразу, в первом же ответе. А потом уже смотрят экзотику, если всё одинаково. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2019, 23:00 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Накатывание CU проблему не решило. Более внимательно прочитал статью "Медленно в приложении, быстро в SSMS", в первой части нашёл описание симптомов моей проблемы(спасибо за наводку - интересная статья). Проблема временно решена добавлением параметра в хранимку, по которому отрубается выборка части данных, которые не нужны в этом вызове(одна процедура для нескольких потребителей данных) + обновление статистики. Всем спасибо, буду наблюдать насколько долго этого хватит))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2019, 21:17 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Поломанная или обновленная статистика будет одинаково влиять на оба способа получения результата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2019, 23:41 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
GreedyНакатывание CU проблему не решило. Более внимательно прочитал статью "Медленно в приложении, быстро в SSMS", в первой части нашёл описание симптомов моей проблемы(спасибо за наводку - интересная статья). Проблема временно решена добавлением параметра в хранимку, по которому отрубается выборка части данных, которые не нужны в этом вызове(одна процедура для нескольких потребителей данных) + обновление статистики. Всем спасибо, буду наблюдать насколько долго этого хватит)))правильно ли я понял, что в SSMS процедура вызывалась для одного результирующего набора данных, а в приложении - для другого, и эти наборы резко отличаются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2019, 08:06 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Параметры вызова были идентичны, как и возвращаемый набор данных, поэтому и возникло непонимание причин, так как в курсе про разные планы в зависимости от разных параметров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2019, 12:45 |
|
||
|
медленная отдача данных запроса на клиента
|
|||
|---|---|---|---|
|
#18+
Если сервер виртуальный, то не мешало бы оценить задачи, выполняемые на "соседних" серверах. Особенно их дисковые операции. Н-р, у нас падала почта, когда на соседнем сервере выполнялся очень трудоемкий SQL-запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2019, 21:36 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39771256&tid=1688321]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
135ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 291ms |
| total: | 529ms |

| 0 / 0 |
