На які проблеми вказує нетерпляча котушка


27

В даний час працює на SQL Server 2008 R2

Я намагаюся збільшити продуктивність оператора UPDATE. Я помічаю операцію Eager Spool у шоуплані, що спливає. Моє розуміння операцій розгортання досить елементарне - вони створюють тимчасове сховище для таблиці під час оновлення.

Я також знаю, що, хоча вони запобігають набагато гірші часи виконання, охочі золотники часто вказують на основні проблеми зі структурою таблиці та / або операторами запитів.

Моє запитання досить просте: Коли ви бачите Eager Spool у своєму плані запитів, які проблеми ви спершу шукаєте для вирішення?

Я буду аналізувати кожну частину нашої системи, щоб підвищити продуктивність - я просто шукаю вказівки щодо того, з чого мені слід почати.


Чи можете ви показати план? Шпулі можуть означати багато різних речей.
usr

І ще пару випадків, коли це може відображатися в такому UPDATEвипадку, це якщо у таблиці є самонавідний зовнішній ключ або доступ до UDF, які роблять доступ до даних або не пов’язані із схемою
Martin Smith

Відповіді:


18

Я намагаюся збільшити продуктивність оператора UPDATE. Я помічаю операцію Eager Spool у шоуплані, що спливає.

Швидкі шпулі можуть бути додані з різних причин, в тому числі для захисту від Хеллоуїна , або для оптимізації вводу / виводу при підтримці некластеризованих індексів .

Не бачачи (навіть картину) плану виконання, важко бути впевненим, який із цих сценаріїв може бути застосований у вашому конкретному випадку. Якщо чутливість даних викликає занепокоєння, розгляньте можливість завантаження анонімізованої версії плану для аналізу за допомогою програми SentryOne Plan Explorer .

Цілком може бути, що Eager Spool - це не те, на чому ти повинен зосередитися; на фактичну ефективність запитів, що змінюють дані, впливає багато факторів . Якщо ви базуєте свої зусилля з налаштування орієнтовних відсоткових витрат, показаних для оператора Eager Spool, врахуйте, що ці оцінки формуються за допомогою моделі, яка не відповідає можливостям вашої конкретної конфігурації обладнання.


2

Іноді улюбленої котушки можна уникнути, коли на місці є інші оператори блокування, наприклад. Тож є хорошою ідеєю переконатися, що дані вже відсортовані за часом, коли вона досягає цієї стадії. (можливо, відсутні індекси?)

Якщо це є для захисту на Хеллоуїн, то, як сказали інші хлопці, ви можете зробити мало.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.