Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
приветствую вопрос больше к DBA есть некий "тяжелый" запрос который согласно оценке завершиться дней через 30...) там чудо-курсор делающий merge в таблицу 20гб данных + 45гб индексов переписать ничего нельзя собсна, блокировок нет, паралельно ничего не выполняется, фрагментации нет, статистика обновлена, план выполнения ок. Код: plaintext 1. 32гб ram 16 cores целевая БД хранится на диске HP LOGICAL VOLUME SCSI Maximum server memory 16295MB подскажите какие показатели/счетчики сервера стоит глянуть ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 14:53 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_human, в курсоре там позаписная обработка что ли? ну посмотрите общие ОС типа цпу, памяти, очереди к дискам, в сиквеле динамику PLE, к примеру , latency , динамику чекпойтов , кол-во батчей в секунду в errorlog гляньте на предмет delayed IO вот у товарища Глена Берри неплохая подборка диагностических скриптов https://www.sqlskills.com/blogs/glenn/category/dmv-queries/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 15:46 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komrad, komradв курсоре там позаписная обработка что ли? кусками размером от 20-50'000 Queue length в основном до 2-5-и когда пишет в 1-н файл БД, но бывает и до 20-50-и когда читает/пишет в 2-а о самом storage device инфы нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 21:27 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_humanподскажите какие показатели/счетчики сервера стоит глянуть ?Ну вот, Queue length большая, дисковая система является узким местом. А вообще, если "переписать ничего нельзя", следует обращаться к производителю, вряд ли выполнение процедуры за 30 дней - это нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 21:30 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
alexeyvg, сейчас создаются индексы активная запись в файл БД и лог. очередь до 2000 Response time прыгает 500-600 ms насколько эти показатели вписываются в нормальные показатели ? есть подозрение что оптимизированный код не даст прироста в производительности ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 22:03 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_human, Если оптимизированный код уберет ваши узкие места, то почему бы и нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 22:53 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_humankomrad, komradв курсоре там позаписная обработка что ли? кусками размером от 20-50'000 Queue length в основном до 2-5-и когда пишет в 1-н файл БД, но бывает и до 20-50-и когда читает/пишет в 2-а о самом storage device инфы нет + посмотрите какие waits у вас набегают в процессе работы запроса/сессии https://www.mssqltips.com/sqlservertip/4078/getting-per-session-wait-statistics-in-sql-server-2016/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 23:06 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_humanсейчас создаются индексы активная запись в файл БД и лог. очередь до 2000 Response time прыгает 500-600 ms насколько эти показатели вписываются в нормальные показатели ?Во время построения инедксов нормально, как я думаю. _humanесть подозрение что оптимизированный код не даст прироста в производительностиМожет даст, может нет, это только вы можете сказать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2019, 23:28 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komrad, Код: plaintext 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. alexeyvg, единственное наколенное решение это ручками переместить весь этот обьем ручками - партиционирование, благо версия позволяет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2019, 11:30 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_humanесть подозрение что оптимизированный код не даст прироста в производительности Действительно. Если 60 Гб да на 30 дней... Значится 2 Гб в день... 83 мб в час... 1 мб в минуту... _human32гб ram 16 cores У вас там сервер картошку не чистит параллельно с перекурами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2019, 21:05 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_humankomrad, SELECT OS.* , S.Session_Id , S.waiting_tasks_count , S.wait_time_ms , S.max_wait_time_ms , S.signal_wait_time_ms FROM sys.dm_os_wait_stats OS INNER JOIN sys.dm_exec_session_wait_stats S ON OS.wait_type = S.wait_type WHERE S.session_id = 71 Код: plaintext 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. судя по данным, у вас сессия сканирует что-то большое (таблица/индекс), которое находится полностью в буфере к подобному может приводить неоптимальный план запроса (nested loops vs hash/merge joins) из-за устаревшей статистики, например ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 12:01 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komrad, Так и есть, Только там статистика актуальная А код кривой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 14:19 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
_humankomrad, Так и есть, Только там статистика актуальная А код кривой попробуйте ради интереса тот же самый запрос выполнить с хинтом Код: sql 1. шанс невелик, но может и быстрее сработать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 14:43 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komrad, komradвыполнить с хинтом 1-е что попробовал :D 30+ дней там веб дев sql код написал.. case closed ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 15:27 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komradкоторое находится полностью в буфереНаоборот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 15:38 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
invmkomradкоторое находится полностью в буфереНаоборот. почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 15:43 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komradпочему?Там полно PAGEIOLATCH_* и IO_COMPLETION. Гораздо больше, чем PAGELATCH_ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 15:47 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
invmkomradпочему?Там полно PAGEIOLATCH_* и IO_COMPLETION. Гораздо больше, чем PAGELATCH_ не совсем так в выборке джойн серверных (бежевое слева) ожиданий и сессионных (зеленое справа) в зеленой части выделяется преимущественно только CXPACKET ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 15:51 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komrad, а CXPACKET это типа чтение из буфера что ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 16:02 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komradв зеленой части выделяется преимущественно только CXPACKETCXPACKET свидетельствует о параллелизме в запросе, а не о том, что данные читаются из BP. И такое ожидание вообще генерируется всегда при праллельном плане. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 16:09 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
invm, остальные _сессионные_ ожидания очень малы, поэтому я и написал, что данные судя по всему в кэше или я неправ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 16:17 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
komrad, Посмотрите, например, сессионные для PAGEIOLATCH_SH. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 16:56 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
invmkomrad, Посмотрите, например, сессионные для PAGEIOLATCH_SH. это которые 10 тысяч? они же копеечные тогда уж LATCH_EX, которых в 7 раз больше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 17:07 |
|
||
|
анализ производительности сервера
|
|||
|---|---|---|---|
|
#18+
гадание без запроса, такое себе развлечение, там какой-нить кривой мерж и стоять может совесем не на ожиданиях а на блокировках и тп ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2019, 17:10 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39811568&tid=1687854]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
73ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 262ms |
| total: | 436ms |

| 0 / 0 |
