Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Parameter Sniffing και USE PLAN Query Hint

Îåêßíçóå áðü ôï ìÝëïò sql100. Τελευταία δημοσίευση από το μέλος sql100 στις 28-11-2006, 16:32. Υπάρχουν 0 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  28-11-2006, 16:32 21336

    Parameter Sniffing και USE PLAN Query Hint

    Έχω στο σύστημά μου μια stored procedure (που περιέχει 2 select) η οποία κάποιες στιγμές τρέχει πολύ αργά. Αφού το έψαξα, διαπίστωσα ότι μάλλον αυτό οφείλεται σε parameter sniffing.

    Αυτό που παρατήρώ και μου κάνει εντύπωση είναι ότι εκτελώντας

    SELECT *

    FROM sys.dm_exec_cached_plans decp

    CROSS APPLY sys.dm_exec_query_plan(decp.plan_handle) deqp

    CROSS APPLY sys.dm_exec_sql_text(DECP.plan_handle) as FFF

    INNER JOIN sys.objects so

    ON deqp.objectid = so.object_id

    WHERE so.name = 'mySP_Name'

    βρίσκω για την stored procedure 2 εγγραφές δηλ 2 διαφορετικά execution plans. Είναι φυσιολογικό αυτό και αν όχι από τι προκαλείται?

    Πώς μπορώ να χρησiμοποιήσω την USE PLAN ή την KEEP PLAN ή την KEEP FIXED PLAN ώστε να ορίσω PLAN GUIDE μόνο για το δεύτερο select της sp?

    Θα μπορούσα αντίστοιχα να το κάνω για όλη τη procedure και πώς?

     

     

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems