Akcje typu cxpacket wait

SQL Server waits dostarczają informacji o tym, na co czeka silnik bazy danych podczas wyodrębniania zapytań na monitorowanym serwerze. Chociaż istnieje wiele różnych typów oczekiwania, oczekiwania CXPACKET są powszechnie błędnie interpretowanym pomiarem danych i wymagają dodatkowych wyjaśnień.

cxpacket czeka często, gdy równoległe wątki zapytań mają nierówne obciążenie pracą, powodując blokowanie całego zapytania, dopóki najdłużej działający wątek nie zostanie ukończony. Zauważ, że wyzwalacz oczekiwania CXPACKET występuje nie z równoległością, ale z dystrybucją pracy na poszczególnych wątkach.

chociaż możesz zmniejszyć liczbę oczekujących CXPACKET poprzez zmniejszenie MAXDOP na monitorowanym serwerze, często nie jest to zalecany sposób działania, ponieważ może to spowodować, że oczekiwanie zniknie, a wykonanie podstawowego zapytania zajmie więcej czasu. Na przykład ten problem może wynikać z dużych równoległych skanów tabel, które można zweryfikować za pomocą innych typów wait na serwerze, takich jak PAGIOLATCH_XX. Może to również wynikać z nieaktualnych statystyk, które powodują zły plan zapytań i nierówne obciążenie wątków.

przed dostosowaniem MAXDOP, przejrzyj indeksy i statystyki pod kątem dokładności i upewnij się, że nie ma innych podstawowych problemów. Jeśli zdecydujesz się dostosować MAXDOP, zalecane ustawienia obejmują 4, 2 lub 1. W przypadku systemu NUMA użyj liczby rdzeni dostępnych w jednym węźle NUMA. Aby uniknąć dodatkowych problemów, możesz wprowadzić te aktualizacje na pojedynczym zapytaniu zamiast na całej instancji.

SQLdm identyfikuje i rozwiązuje problemy z wydajnością serwera SQL, zanim wystąpią. Dowiedz się więcej > >

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

More: