Σύνοψη
Προσθέστε το νέο χαρακτηριστικό σχεδίου εκτέλεσης ερωτημάτων EstimateRowsWithoutRowGoal στον sql server 2017 αθροιστική ενημερωμένη έκδοση 3 (CU3) και Microsoft SQL Server 2016 Service Pack 2 (SP2).
Όταν η βελτιστοποίηση ερωτήματος υπολογίζει το κόστος ενός σχεδίου εκτέλεσης ερωτήματος, συνήθως υποθέτει ότι πρέπει να γίνει επεξεργασία όλων των γραμμών που πληρούν τις προϋποθέσεις από όλες τις προελεύσεις. Ωστόσο, ορισμένα ερωτήματα προκαλούν τη βελτιστοποίηση ερωτήματος για να αναζητήσετε ένα πρόγραμμα που θα επιστρέφει μικρότερο αριθμό γραμμών πιο γρήγορα. Αυτό μπορεί να συμβεί εάν το ερώτημα χρησιμοποιεί έναν πρώτο όρο, μια Γρήγορη number_rows υπόδειξη ερωτήματος, έναν όρο in or υπάρχει ή μια πρόταση σύνολο rowcount {Number | @number_var} . Σε αυτήν την περίπτωση, η βελτιστοποίηση χρησιμοποιεί ένα στόχο γραμμής όταν υπολογίζει το σχέδιο ερωτήματος. Εάν εφαρμοστεί το σχέδιο "στόχος γραμμής", μειώνεται ο εκτιμώμενος αριθμός γραμμών στο σχέδιο εκτέλεσης ερωτήματος. Αυτό συμβαίνει επειδή το σχέδιο προϋποθέτει ότι θα πρέπει να γίνει επεξεργασία ενός μικρότερου αριθμού γραμμών για να επιτευχθεί ο στόχος γραμμής.
Σημείωση Η εκτίμηση που γίνεται με τη χρήση του στόχου γραμμής είναι κατά προσέγγιση. Εάν η πραγματική διανομή δεδομένων δεν είναι ομοιόμορφη, μπορεί να είναι μικρότερη από τον πραγματικό αριθμό των γραμμών που πρέπει να υποβληθούν σε επεξεργασία. Επομένως, μπορεί να δημιουργήσει ένα μη αποδοτικό πρόγραμμα ερωτημάτων. Ως λύση για αυτό το ζήτημα, μπορείτε να χρησιμοποιήσετε την επιλογή ερωτήματος " χρήση υπόδειξης (' DISABLE_OPTIMIZER_ROWGOAL ')" ή "σημαία ανίχνευσης 4138".
Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα η ενημέρωση εισάγει το όρισμα υπόδειξη ΕΡΩΤΉΜΑΤΟς υπόδειξης στον SQL Server 2016. Ωστόσο, μπορεί να είναι δύσκολο να προσδιορίσετε σε σύνθετα ερωτήματα εάν εφαρμόζεται ένας στόχος γραμμής και πόσο επηρεάζει την επιλογή προγράμματος.
Χρησιμοποιώντας το χαρακτηριστικό EstimateRowsWithoutRowGoal , μπορείτε να συγκρίνετε τα αποτελέσματα με εκείνα του χαρακτηριστικού τηνEstimateRowsστήλη για να δείτε πόσο ο στόχος γραμμής επηρεάζει τις εκτιμήσεις βελτιστοποίησης ερωτήματος.
Σημείωση Εάν ο στόχος γραμμής δεν εφαρμόζεται σε έναν συγκεκριμένο τελεστή προγράμματος ερωτήματος, αυτό το χαρακτηριστικό δεν περιλαμβάνεται.
Περισσότερες πληροφορίες
Αυτή η ενημέρωση περιλαμβάνεται στην παρακάτω αθροιστική ενημερωμένη έκδοση για τον SQL Server:
Κάθε νέα αθροιστική ενημέρωση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη αθροιστική ενημέρωση. Ανάληψη ελέγχου των πιο πρόσφατων αθροιστικών ενημερώσεων για τον SQL Server:
Πληροφορίες για το Service Pack για τον SQL Server
Αυτή η ενημέρωση παρουσιάζεται στα παρακάτω Service Pack για τον SQL Server:
Τα Service Pack είναι αθροιστικά. Κάθε νέο Service Pack περιέχει όλες τις επιδιορθώσεις που υπάρχουν σε προηγούμενα Service Pack, μαζί με τυχόν νέες επιδιορθώσεις. Η σύστασή μας είναι να εφαρμόσουμε το πιο πρόσφατο Service Pack και την πιο πρόσφατη αθροιστική ενημέρωση για το συγκεκριμένο Service Pack. Δεν χρειάζεται να εγκαταστήσετε ένα προηγούμενο Service Pack πριν από την εγκατάσταση του πιο πρόσφατου Service Pack. Χρησιμοποιήστε τον πίνακα 1 στο ακόλουθο άρθρο για να βρείτε περισσότερες πληροφορίες σχετικά με το πιο πρόσφατο Service Pack και την πιο πρόσφατη αθροιστική ενημερωμένη έκδοση.
Αναφορές
Μάθετε περισσότερα σχετικά με την ορολογίαπου χρησιμοποιεί η Microsoft για την περιγραφή ενημερώσεων λογισμικού.