Member 3534469 Ответов: 2

Спайк процессора 100% с несколькими потоками


Всем Привет,

У меня есть запрос, выполняемый для приложения, которое скачет до 100% при работе в нескольких потоках. Не могли бы вы помочь в настройке приведенного ниже запроса и избежать скачка процессора?
select SubTable.RelationId, SubTable.NickName, SubTable.ProductTypeCode, SubTable.SubProductTypeCode, SubTable.CurrencyCode,
Users.UserId, Users.Name, Users.Lang, Users.UserLoginId, Users.UserLoginIdBase, Users.SendUnsolicitMessages,
Users.SMSCountryCode, Users.SMSNumber, Users.SMSAllowed, Users.SMSActivationStatus, Users.SMSTermsAndConditions, Users.SMSDailyThreshold,
Loyalty.BranchCode, Loyalty.BranchName, Loyalty.BranchCountry
from SubTable WITH(NOLOCK), Users WITH(NOLOCK), Loyalty WITH(NOLOCK) where
SubTable.AccountNumber = @P1  and
SubTable.AccountExternalId = @P2  and
SubTable.SubProductTypeCode = @P3  and
SubTable.CurrencyCode = @P4  and
SubTable.UserId = Users.UserId and
Users.ActivationFlag = 'Y' and
SubTable.BranchIdRl = Loyalty.BranchId



Спасибо,
Мановж.

Что я уже пробовал:

попробовал увеличить память процессора и разбиение на страницы.

2 Ответов

Рейтинг:
1

F-ES Sitecore

Используйте правильные соединения таблиц для выбора из нескольких (google "sql select join table", и вы найдете примеры). Если Спайк процессора-это просто Спайк, который быстро умирает, то беспокоиться не о чем. Помимо соединений в вашем запросе нет ничего, что можно было бы оптимизировать, вам придется оптимизировать таблицу для быстрого выбора путем добавления индексов.


Рейтинг:
1

RDBurmon

У меня была та же проблема. В основном нам нужно проверить наличие тех столбцов/полей, которые участвуют в этом запросе. Думаю, вам нужно запустить план выполнения запроса и проверить

Вот несколько полезных ссылок, которыми я воспользовался и разобрал проблему

Основы Плана Выполнения-Простой Разговор[^]

Отображение графических планов выполнения (среда SQL Server Management Studio)[^]

план выполнения запроса[^]

Понимание плана выполнения запросов SQL Server - Developer.com[^]