Jakie problemy wskazuje chętna szpula


27

Obecnie działa na SQL Server 2008 R2

Usiłuję zwiększyć wydajność instrukcji UPDATE. Zauważyłem, że pojawiła się operacja Eager Spool w showplanie. Moje rozumienie operacji buforowania jest dość proste - tworzą one tymczasowe miejsce do przechowywania tabeli podczas aktualizacji.

Wiem również, że chociaż zapobiegają one znacznie gorszemu czasowi wykonania, chętne bufory często wskazują na podstawowe problemy ze strukturą tabeli i / lub instrukcjami zapytań.

Moje pytanie jest dość proste: kiedy widzisz chętną szpulę w swoim planie zapytań, jakie problemy chcesz rozwiązać?

Będę analizował każdą część naszego systemu, aby zwiększyć wydajność - szukam tylko wskazówek, od czego powinienem zacząć.


Czy możesz pokazać plan? Szpule mogą oznaczać wiele różnych rzeczy.
usr

I jeszcze kilka przypadków, w których to może pojawić się w sposób UPDATEjest, jeśli tabela ma własny przedstawieniu klucz obcy lub dostępu UDF, które wykonują dostęp do danych lub nie są związane schematu
Martin Smith

Odpowiedzi:


18

Usiłuję zwiększyć wydajność instrukcji UPDATE. Zauważyłem, że pojawiła się operacja Eager Spool w showplanie.

Chętne szpule mogą być dodawane z różnych powodów, w tym w celu ochrony Halloween , lub w celu optymalizacji operacji we / wy podczas utrzymywania indeksów nieklastrowanych .

Bez obejrzenia (nawet zdjęcia) planu wykonania trudno jest ustalić, który z tych scenariuszy może mieć zastosowanie w konkretnym przypadku. Jeśli problemem jest wrażliwość danych, rozważ przesłanie anonimowej wersji planu do analizy za pomocą SentryOne Plan Explorer .

Możliwe, że Eager Spool nie jest czymś, na czym powinieneś się skoncentrować; na faktyczną wydajność zapytań zmieniających dane wpływa wiele czynników . Jeśli opierasz swoje wysiłki związane z dostrajaniem na szacowanym procentowym koszcie pokazanym dla operatora Eager Spool, pamiętaj, że te szacunki są generowane przy użyciu modelu, który nie jest przeznaczony do dopasowania do możliwości konkretnej konfiguracji sprzętu.


2

Czasami chętnej szpuli można uniknąć, gdy istnieją inni operatorzy blokujący - na przykład. Warto więc upewnić się, że dane są już posortowane według czasu, w którym osiągną ten etap. (może brakuje indeksów?)

Jeśli ma to na celu ochronę Halloween, to jak powiedzieli inni faceci, niewiele możesz zrobić.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.