/ / Изпълнява съхранената процедура от много потребители, като в същото време отнема повече време, за да визуализира резултата - sql-server, saved-procedures

Изпълнение на запомнената процедура от много потребители в същото време отнема повече време, за да се направи резултата - sql-сървър, съхранени процедури

Имам запаметена процедура в SQL Server 2005. Когато се изпълнява от един потребител, това отнема 5 секунди за изпълнение.

Как да се подобри, за да се изпълни, не зависи от броя на потребителите?

Благодаря.

Отговори:

2 за отговор № 1

5 секунди е относително бавно за SQL заявка,показвайки, че извършват доста голяма работа (напр. много дискови IO). Запитването, което включва много дискови IO, вероятно ще се изпълнява по-бавно, когато се изпълнява от няколко едновременни потребители, поради увеличеното натоварване на SQL Server. Трябва да получите план за изпълнение и да провери дали запитването на 5s може да бъде оптимизирано, напр. с допълнителни индекси.

Също така е възможно заключването да бъде виновно, напр. ако заявите ексклузивни заключвания на цялата таблица и отнеме 5s да се изпълни, второ изпълнение на заявка едновременно ще трябва да изчака 5s, за да завърши първоначалната заявка, и след това ще заключи самата таблица и ще вземе допълнителни 5s, за да се получи 10s време на изпълнение. 3 едновременни заявки биха взели 15s и т.н. Как да идентифицирате блокирането в SQL Server за куп методи, за да проверим дали това е така.