Συμπτώματα
Εξετάστε το ακόλουθο σενάριο:
-
Μπορείτε να χρησιμοποιήσετε μια παρουσία του Microsoft SQL Server 2012 ή του SQL Server 2014 που έχει ενεργοποιημένο το NUMA.
-
Ο SQL Server έχει ρυθμιστεί ώστε να χρησιμοποιεί πολλούς πυρήνες CPU σε πολλούς κόμβους NUMA (για παράδειγμα, 4 κόμβους NUMA που έχουν 12 πυρήνες το καθένα).
-
Μπορείτε να εκτελέσετε ένα φόρτο εργασίας που δημιουργεί μεγάλο φόρτο εργασίας, ο οποίος δημιουργεί υψηλό ρυθμό μεταγλώττισης από πολλές ταυτόχρονες συνδέσεις.
Σε αυτό το σενάριο, δεν παρατηρείτε καμία αύξηση στα αποτελέσματα ενός ερωτήματος μεταγλώττισης/δευτερόλεπτο με αυξανόμενο αριθμό διαθέσιμων πυρήνων πέραν των 12 περίπου. Επίσης, η CPU μπορεί να εμφανίσει τη χρήση του 100 τοις εκατό.Σημείωση Η σοβαρότητα του κορεσμού της CPU εξαρτάται από τον αριθμό των πυρήνων ανά κόμβο NUMA και επίσης από τον ρυθμό μεταγλώττισης.
Αιτία
Το πρόβλημα παρουσιάζεται επειδή ο SQL Server χρησιμοποιεί μια δομή δεδομένων που μπορεί να συμβάλει σε μοτίβα ισχυρισμών CPU σε υλικό με δυνατότητα NUMA σε ταυτόχρονες μεταγλωττίσεις.
Επίλυση
Αφού εφαρμόσετε αυτήν την επιδιόρθωση, ο SQL Server αντικαθιστά τη χρήση μιας κοινόχρηστης δομής με δεδομένα τοπικών νημάτων. Το πρόβλημα διορθώθηκε για πρώτη φορά με την ακόλουθη αθροιστική ενημέρωση του SQL Server.
Αθροιστική ενημερωμένη έκδοση 1 για τον SQL Server 2012 SP2 /en-us/help/2976982
Αθροιστική ενημερωμένη έκδοση 2 για τον SQL Server 2014 /en-us/help/2967546
Αθροιστική ενημερωμένη έκδοση 10 για τον SQL Server 2012 SP1 /en-us/help/2954099
Κάθε νέα αθροιστική ενημέρωση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη αθροιστική ενημέρωση. Ανάληψη ελέγχου των πιο πρόσφατων αθροιστικών ενημερώσεων για τον SQL Server:
Λύση
Για να επιλύσετε αυτό το πρόβλημα, μειώστε τον ρυθμό μεταγλώττισης στο σύστημα SQL Server.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "ισχύει για".