Αργές επιδόσεις δίσκου όταν είναι ενεργοποιημένη η προσωρινή αποθήκευση εγγραφής

Συμπτώματα

Τις επιδόσεις ορισμένων εγγραφής σκληρού δίσκου ενδέχεται να είναι χαμηλότερες από τις λειτουργίες αναμένεται εάν ο σκληρός δίσκος υλοποιεί την προσωρινή αποθήκευση εγγραφής και ο υπολογιστής χρησιμοποιεί οποιοδήποτε από τα ακόλουθα λειτουργικά συστήματα:
  • Windows 2000 Service Pack 3 (SP3)
  • Windows 2000 Service Pack 2 (SP2) στον οποίο εγκαταστήσατε την επείγουσα επιδιόρθωση που περιγράφεται στο ακόλουθο άρθρο της Γνωσιακής Βάσης της Microsoft:
    281672 πιθανή απώλεια δεδομένων μετά την ενεργοποίηση της δυνατότητας "Ενεργοποιημένη Cache εγγραφής"
  • Windows XP
Συγκεκριμένα, η απόδοση της εγγραφής στον σκληρό δίσκο μπορεί να είναι πιο αργή από ότι εμπειρία με εκδόσεις των Windows 2000 παλαιότερες από το SP3. Επίσης, σε έναν υπολογιστή συμπλέγματος, λειτουργιών εγγραφής στον σκληρό δίσκο κοινόχρηστοι δίσκοι μπορεί να προκαλέσει μεγάλες διαφορές ως προς την απόδοση της εγγραφής ανάμεσα στους κόμβους.

Αιτία

Εκδόσεις των Windows 2000 παλαιότερες από το SP3 περιέχει ένα σφάλμα που εμποδίζει την έκδοση ορισμένων εντολών του δίσκου. Οι εντολές αυτές εκδίδονται μόνο σε δίσκους που έχουν ενεργοποιημένη την προσωρινή αποθήκευση εγγραφής. Αυτές οι εντολές ισχύ κρίσιμη δεδομένα να εγγραφούν σε συσκευές δίσκου αμέσως, αντί να διατηρούνται προσωρινά στη μνήμη cache εγγραφής σε cache του δίσκου.

Για πρόσθετες πληροφορίες σχετικά με αυτό το σφάλμα, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
281672 πιθανή απώλεια δεδομένων μετά την ενεργοποίηση της δυνατότητας "Ενεργοποιημένη Cache εγγραφής"

Η επείγουσα επιδιόρθωση που περιγράφεται στο άρθρο γνωσιακής βάσης 281672 διορθώνει αυτό το σφάλμα και έχει ως αποτέλεσμα οι εντολές αυτές πρέπει να εκδίδεται στο δίσκο όπως αναμένεται όταν είναι ενεργοποιημένη η προσωρινή αποθήκευση εγγραφής. Αυτή η ενημέρωση κώδικα περιλαμβάνεται στο Windows 2000 SP3. Μια παρόμοια ενημέρωση κώδικα περιλαμβάνεται επίσης στα Windows XP.

Από τη σχεδίαση, αυτές οι εντολές θυσιάσετε ορισμένες επιδόσεις για λόγους ασφάλειας των δεδομένων ζωτικής σημασίας. Αυτά βεβαιωθείτε ότι κρίσιμα δεδομένα εγγράφονται στο δίσκο αμέσως. Οι εντολές αυτές εκδίδονται μόνο εάν είναι ενεργοποιημένη η προσωρινή αποθήκευση εγγραφής για μια συγκεκριμένη συσκευή και που μπορεί να ανιχνευθεί χρησιμοποιώντας τυπικές μηχανισμούς. Όταν εφαρμοστεί αυτή η συμπεριφορά ασφαλή για δίσκους που εφαρμόζουν την προσωρινή αποθήκευση εγγραφής, αντιμετωπίζετε απώλεια επιδόσεων κατά τη διάρκεια ορισμένων λειτουργιών δίσκου. Ανατρέξτε στην ενότητα "Περισσότερες πληροφορίες" αυτού του άρθρου για περισσότερες λεπτομέρειες. Επίσης, σε έναν υπολογιστή συμπλέγματος, πληροφορίες σκληρού δίσκου δεν επιτρέπεται να παραδίδεται σε έναν κόμβο που καταλαμβάνει πόρος συμπλέγματος, όταν ο πόρος είναι ανακατευθυνθούν μετά από αποτυχία. Κατά συνέπεια, προκύπτει διαφορές στις επιδόσεις λειτουργίας εγγραφής στον σκληρό δίσκο ανάμεσα στους κόμβους.

Προτεινόμενη αντιμετώπιση

Για υπολογιστές που εκτελούν τα Windows 2000

Προειδοποίηση: Εάν εφαρμόσετε αυτήν την ενημέρωση κώδικα (κατά την εγκατάσταση των ενημερωμένων προγραμμάτων οδήγησης και ενεργοποιώντας την επιλογή cache εγγραφής Προστατευμένης ενέργειας ), καταργούνται οι προστασίες που είναι ενσωματωμένες στα προγράμματα οδήγησης δίσκου των Windows 2000 για να βεβαιωθείτε ότι κρίσιμα δεδομένα εγγράφονται στο δίσκο αμέσως αντί για την εγγραφή στο δίσκο αργότερα από ενσωματωμένη μνήμη cache του δίσκου. Δεν εφαρμόζουν αυτήν την ενημέρωση κώδικα, εκτός και αν ο υπολογιστής σας και οποιαδήποτε συνδεδεμένο σκληρούς δίσκους προστατεύονται από τυχαία ή ακούσια ρεύματος μέσω υλικού σχεδίασης που μπορεί να περιλαμβάνει δυνατότητες όπως εφεδρικά αντίγραφα μπαταρίας τροφοδοτικά. Επικοινωνήστε με τους προμηθευτές σας υπολογιστή και αποθήκευσης συσκευές για να προσδιορίσετε το βαθμό προστασίας που παρέχεται από το υλικό σας. Δεν εφαρμόζουν αυτήν την ενημέρωση κώδικα, εκτός αν κατανοήσετε και αποδεχθείτε το επίπεδο κινδύνου που μπορούν να συμμετέχουν και να είναι βέβαιοι ότι αυτός ο κίνδυνος έχει έχει περιόρισε μέσω κατάλληλο υλικό τροφοδοσίας προστασίας. Επίσης, σε έναν υπολογιστή συμπλέγματος, διαφορές στις επιδόσεις του σκληρού δίσκου εγγραφής λειτουργίες σε κοινόχρηστους δίσκους μεταξύ κόμβων είναι δυνατό να επιλυθούν, ορίζοντας το Προστατευμένη ενέργειας εγγραφή cache επιλογή σε κάθε κόμβο.

Για πρόσθετες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
281672 πιθανή απώλεια δεδομένων μετά την ενεργοποίηση της δυνατότητας "Ενεργοποιημένη Cache εγγραφής"

Τμήμα 1: Εγκαταστήστε την ενημερωμένη έκδοση των Windows 2000

Μια υποστηριζόμενη δυνατότητα που τροποποιεί την προεπιλεγμένη συμπεριφορά του προϊόντος είναι διαθέσιμη από τη Microsoft. Ωστόσο, αυτή η δυνατότητα προορίζεται να τροποποιήσετε μόνο τη συμπεριφορά που περιγράφεται σε αυτό το άρθρο. Eφαρμόστε τη μόνο σε συστήματα που τη χρειάζονται συγκεκριμένα.

Εάν η δυνατότητα είναι διαθέσιμη για λήψη, υπάρχει μια ενότητα "Διαθέσιμη λήψη άμεσης επιδιόρθωσης" στην αρχή αυτού του άρθρου της Γνωσιακής βάσης. Εάν αυτή η ενότητα δεν εμφανίζεται, επικοινωνήστε με την εξυπηρέτηση πελατών της Microsoft και υποστήριξη για να αποκτήσετε τη δυνατότητα.

Σημείωση Εάν προκύψουν πρόσθετα ζητήματα ή απαιτείται αντιμετώπιση προβλημάτων, ίσως χρειαστεί να δημιουργήσετε ξεχωριστή αίτηση εξυπηρέτησης. Οι συνηθισμένες χρεώσεις υποστήριξης θα ισχύει για πρόσθετες ερωτήσεις υποστήριξης και για θέματα που δεν αφορούν τη συγκεκριμένη δυνατότητα. Για μια πλήρη λίστα αριθμών τηλεφώνου υπηρεσία εξυπηρέτησης πελατών της Microsoft και υποστήριξη ή για να δημιουργήσετε μια ξεχωριστή αίτηση εξυπηρέτησης, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:Σημείωση Η φόρμα "Διαθέσιμη λήψη άμεσης επιδιόρθωσης" εμφανίζει τις γλώσσες για τις οποίες η δυνατότητα είναι διαθέσιμη. Εάν δεν βλέπετε τη γλώσσα σας, είναι επειδή η δυνατότητα δεν είναι διαθέσιμη για αυτήν τη γλώσσα. Η αγγλική έκδοση αυτής της ενημέρωσης κώδικα έχει τα χαρακτηριστικά αρχείου (ή νεότερα) που παρατίθενται στον παρακάτω πίνακα. Οι ημερομηνίες και οι ώρες για τα αρχεία αυτά αναφέρονται σε Συντονισμένη παγκόσμια ώρα (UTC). Όταν προβάλλετε τις πληροφορίες του αρχείου, μετατρέπεται σε τοπική ώρα. Για να βρείτε τη διαφορά μεταξύ της ώρας UTC και της τοπικής ώρας, χρησιμοποιήστε την καρτέλα ζώνη ώρας στο εργαλείο "ημερομηνία και ώρα" στον πίνακα ελέγχου.
   Date         Time   Version        Size    File name
-------------------------------------------------------
15-Jan-2003 19:42 5.0.2195.6655 34,832 Classpnp.sys
15-Jan-2003 19:43 5.0.2195.6655 30,768 Disk.sys

Σημείωση Τα αρχεία που περιλαμβάνονται σε αυτήν την επείγουσα επιδιόρθωση έχουν αριθμούς έκδοσης μετά το SP3, αλλά μπορούν να χρησιμοποιηθούν σε υπολογιστές με Windows 2000 SP2 και Windows SP3 με βάση. Το πακέτο της επείγουσας επιδιόρθωσης θα εγκατασταθεί σε υπολογιστές με Windows 2000 SP2 και να βασίζεται στο Windows 2000 SP3.

Τμήμα 2: Ρύθμιση παραμέτρων την επιλογή Cache εγγραφής "Προστατευμένα ενέργειας"

Μετά την εγκατάσταση της ενημερωμένης έκδοσης των Windows 2000 και, στη συνέχεια, να επανεκκινήσετε τον υπολογιστή σας, έτσι ώστε τα ενημερωμένα προγράμματα οδήγησης είναι φορτωμένο, πρέπει επίσης να ενεργοποιήσετε την επιλογή cache " Ενέργειας προστασία εγγραφής", για κάθε δίσκο που διαθέτει εγγραφή προσωρινή αποθήκευση ενεργοποιημένη και έχει την cache εγγραφής, το οποίο προστατεύεται από τυχαία απώλεια ενέργειας. Εάν η επιλογή μνήμη cache εγγραφής Προστατευμένη ενέργειας δεν είναι ενεργοποιημένη, αυτή η ενημερωμένη έκδοση δεν υλοποιήσετε οποιαδήποτε αλλαγή στη συμπεριφορά του δίσκου ή επιδόσεων.

Για να ρυθμίσετε τις παραμέτρους του
Προστατευμένη ενέργειας εγγραφή cache επιλογή στους επιλεγμένους δίσκους, χρησιμοποιήστε το εργαλείο Dskcache.exe. Dskcache.exe διατίθεται ξεχωριστά. Για πρόσθετες πληροφορίες σχετικά με το εργαλείο Dskcache.exe και τον τρόπο ενεργοποίησης της "προστατευμένης ενέργειας", η εγγραφή cache επιλογή, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
811392 να αποκτήσετε το εργαλείο Dskcache.exe για να ρυθμίσετε την επιλογή Cache εγγραφής "Προστατευμένα ενέργειας"
Σημείωση Η επιλογή προσωρινής αποθήκευσης Ενέργειας προστασία εγγραφής μπορεί να ενεργοποιηθεί μόνο για δίσκους που υπάρχουν αυτήν τη στιγμή. Από προεπιλογή, είναι απενεργοποιημένη η επιλογή προσωρινής αποθήκευσης Ενέργειας προστασία εγγραφής. Ως αποτέλεσμα, αυτή η επιλογή είναι απενεργοποιημένη για όλους τους δίσκους που μπορεί να προστεθεί μετά την εφαρμογή αυτής της ρύθμισης. Εάν προστίθενται πρόσθετους δίσκους, ενεργοποιήσετε την Προστατευμένη ενέργειας εγγραφή cache επιλογή για αυτούς τους δίσκους που προστέθηκε για να τεθεί σε ισχύ η ρύθμιση.

Για υπολογιστές που εκτελούν τα Windows XP

Λόγω σχεδίασης διαφορές μεταξύ των Windows 2000 και Windows XP, υπάρχουν αυτήν τη στιγμή δεν υπάρχουν σχέδια για να αποδεσμεύσετε μια έκδοση που υποστηρίζεται για αυτήν τη συμπεριφορά για τα Windows XP.

Κατάσταση

Αυτή η συμπεριφορά οφείλεται στη σχεδίαση.

Περισσότερες πληροφορίες

Πολλές συσκευές δίσκου παρέχει βελτιωμένη απόδοση με τη χρήση μια ενσωματωμένη μνήμη cache που παρέχει ανάγνωση εμπρός προσωρινής αποθήκευσης για δεδομένα που γίνεται ανάγνωση από το δίσκο, και προσωρινή αποθήκευση write-behind (ή καθυστερημένη εγγράφει ή "lazy" εγγράφει) για δεδομένα που γίνεται εγγραφή στο δίσκο. Σε ορισμένες περιπτώσεις, είναι σημαντικό για τα δεδομένα εγγράφονται στο φυσικό δίσκο αμέσως και δεν διατηρούνται στη μνήμη cache της εγγραφής του δίσκου για εγγραφή αργότερα κατά τη διάρκεια μια στιγμή αδρανείς. Αυτό αποτρέπει απώλεια ή καταστροφή των δεδομένων εάν ο δίσκος ή ελεγκτή (όπου έχει υλοποιηθεί cache εγγραφής) ξαφνικά διακοπεί η παροχή ενέργειας, για παράδειγμα.

Υπάρχουν δύο εντολές που χρησιμοποιούνται συνήθως για την επιβολή δεδομένα προσωρινής αποθήκευσης για εγγραφή στο φυσικό δίσκο αμέσως:
  • Μια εντολή Εκκαθάριση buffers , η οποία είναι διαθέσιμη για συσκευές δίσκου SCSI και IDE/ATAPI, δίνει εντολή στο δίσκο για να γράψετε αμέσως όλα τα προσωρινά δεδομένα στο δίσκο. Για δίσκους SCSI, αυτό υλοποιείται με την έκδοση της εντολής ΣΥΓΧΡΟΝΙΣΜΌΣ χώρου προσωρινής ΑΠΟΘΉΚΕΥΣΗΣ στο δίσκο. Για δίσκους IDE/ATAPI, αποστέλλεται η εντολή ΕΚΚΑΘΆΡΙΣΗ CACHE στο δίσκο. Αυτή η εντολή εκδίδεται συνήθως από ένα πρόγραμμα των Windows κλήση FlushFileBuffers API. Εγγραφή στο μητρώο είναι ένα παράδειγμα μιας επιχείρησης που έχει ως αποτέλεσμα την FlushFileBuffers API που καλείται και η εντολή ΣΥΓΧΡΟΝΙΣΜΌΣ χώρου προσωρινής ΑΠΟΘΉΚΕΥΣΗΣ που αποστέλλεται στον δίσκο.
  • Μια Εγγραφή μέσω εντολή, η οποία είναι διαθέσιμη μόνο για συσκευές δίσκου SCSI, υλοποιείται, εκδίδοντας μια εντολή ΕΓΓΡΑΦΉΣ στο δίσκο με ορισμένο το bit ForceUnitAccess (FUA). Αυτός ο τύπος της εντολής καθοδηγεί το δίσκο για να γράψετε το τρέχον πακέτο δεδομένων στο δίσκο αμέσως, παρακάμπτοντας την cache εγγραφής της πλακέτας. Αυτό συμβαίνει συνήθως από ένα πρόγραμμα των Windows που καλεί το WriteFile API για να γράψετε σε ένα αρχείο που έχει ανοίξει, καλώντας το CreateFile API με το σύνολο σημαιών FILE_FLAG_WRITE_THROUGH. Ανίχνευση ιών λογισμικού ανοίγει συνήθως τα αρχεία με το σύνολο σημαιών FILE_FLAG_WRITE_THROUGH. Υποστήριξη για το FUA bit είναι προαιρετική, και μόνο ορισμένες συσκευές SCSI και καναλιού οπτικών ινών (FC), συνήθως μεμονωμένες μονάδες δίσκου (όπως αντίθετοι με συστοιχίες RAID), να υλοποιήσει αυτήν τη λειτουργικότητα.
Από τη σχεδίαση, αυτές οι εντολές θυσιάσετε ένα μέτρο της απόδοσης (που συνήθως έπρεπε να παρασχεθεί από ενσωματωμένη εγγραφή στη μνήμη cache του δίσκου) για τη διατήρηση της ασφάλειας των δεδομένων που εγγράφεται στο δίσκο. Εάν τα δεδομένα αυτά δεν έχει εγγραφεί στο δίσκο αμέσως από αυτές τις εντολές, και εάν ο δίσκος διακοπεί ξαφνικά η τροφοδοσία, αυτά τα δεδομένα θα χαθούν και το αρχείο που συντάσσεται ενδέχεται να καταστραφεί.

Σε εκδόσεις των Windows 2000 παλαιότερες από το SP3, αυτές οι εντολές δεν σωστά εκδίδονται για συσκευές δίσκου όταν αναμένεται. Για παράδειγμα, η εντολή ΣΥΓΧΡΟΝΙΣΜΌΣ χώρου προσωρινής ΑΠΟΘΉΚΕΥΣΗΣ δεν έχει εκδοθεί σε δίσκο όταν ένα πρόγραμμα καλεί FlushFileBuffersκαι το FUA bit δεν έχει οριστεί για τις εντολές ΕΓΓΡΑΦΉΣ , όταν το αρχείο ανοίγεται με FILE_FLAG_WRITE_THROUGH Ορισμός. Η επείγουσα επιδιόρθωση που περιγράφεται στο άρθρο γνωσιακής βάσης 281672 διορθώνει αυτό το πρόβλημα, έτσι ώστε οι εντολές αυτές εκδίδονται σύμφωνα με τον προορισμό και, ως αποτέλεσμα, παρέχουν την αναμενόμενη προστασία από απώλεια των εν λόγω κρίσιμων δεδομένων.

Note
Microsoft SQL Server χρησιμοποιεί FILE_FLAG_WRITE_THROUGH σε μεγάλο βαθμό στην τοπική βάση δεδομένων δεδομένα, αρχεία καταγραφής και αρχεία αντιγράφων ασφαλείας. Δεδομένα τοπική βάση δεδομένων ενδέχεται να περιλαμβάνουν δεδομένα για μονάδες SCSI και SAN, αλλά όχι τα δεδομένα σε μονάδες δίσκου NAS. Εάν η δυνατότητα ενέργειας προστατευμένο χώρο αποθήκευσης δεν είναι ενεργοποιημένη στο υλικό που να προστατεύει την εγγράψιμη cache, μπορεί να επηρεαστούν απόδοση του διακομιστή SQL κατά τη διαδικασία του σημείου ελέγχου από μια μεγάλη βάση δεδομένων.

Όταν η επιλογή Εγγραφή ενεργοποιημένη Cache έχει ρυθμιστεί για μια συσκευή στη Διαχείριση συσκευών, δύο πράγματα θα συμβούν:
  • Αποστέλλεται μια εντολή για να ενεργοποιήσετε ή να απενεργοποιήσετε την εγγραφή προσωρινή αποθήκευση στη συσκευή δίσκου.
  • Μια τιμή μητρώου αποθηκεύονται, το οποίο χρησιμοποιεί το πρόγραμμα οδήγησης δίσκου για να προσδιορίσετε αν θα εκδώσετε εντολές διαχείρισης μνήμης cache εγγραφής (Write-Through, εκκαθάρισης) στο δίσκο ή όχι.
Η επείγουσα επιδιόρθωση που περιγράφεται σε αυτό το άρθρο παρέχει μια επιλογή πρόσθετη ρύθμιση παραμέτρων, η οποία είναι η επιλογή προσωρινής αποθήκευσης Ενέργειας προστασία εγγραφής. Κατά την Εγγραφή προσωρινής αποθήκευσης και να Προστατεύονται ενέργειας επιλογές είναι ενεργοποιημένες, η εγγραφή στη μνήμη cache του δίσκου είναι ενεργοποιημένη και αναγνωρίζονται ως τέτοια από το πρόγραμμα οδήγησης δίσκου, αλλά το πρόγραμμα οδήγησης δίσκου δεν εκδίδει εντολές διαχείρισης μνήμης cache εγγραφής (Write-Through, εκκαθάρισης) στο δίσκο. Αυτό αποτρέπει το μειονέκτημα στις επιδόσεις που διαφορετικά θα προκύψουν από την καταγραφή δεδομένων από τη μνήμη cache εγγραφής στο μέσο του δίσκου, αλλά παρουσιάζει κίνδυνο για απώλεια ή καταστροφή δεδομένων δίσκου αν γίνει διακοπή ρεύματος ενώ εκεί είναι ακόμα τα δεδομένα στο cache εγγραφής του δίσκου που δεν έχει εγγραφεί στο δίσκο.

Ο ακόλουθος πίνακας συνοψίζει τις επιπτώσεις από τις επιλογές Εγγραφής προσωρινής αποθήκευσης και να Προστατεύονται ενέργειας :
Εγγραφή προσωρινή αποθήκευσηΕνέργειας που προστατεύεται
Εφέ
ΑπενεργοποιημένηN/AΔίσκος δεν κάνει προσωρινή αποθήκευση εγγραφών.

Το πρόγραμμα οδήγησης δεν εκδίδει εντολές εκκαθάρισης/Write-Through.
(Μόνο συμπεριφορά δυνατόν για μονάδες δίσκου που δεν έχουν εγγραφή προσωρινή αποθήκευση ενεργοποιημένη στο υλικού.)
ΕνεργοποιημένηΑπενεργοποιημένηΔίσκος αποθηκεύει προσωρινά εγγραφές.

Πρόγραμμα οδήγησης εκδίδει εντολές εκκαθάρισης/Write-Through.
(Προεπιλεγμένη συμπεριφορά ως SP3, και με αυτήν την ενημερωμένη έκδοση εφαρμόζεται για μονάδες δίσκου που έχετε γράψει προσωρινή αποθήκευση ενεργοποιημένη στο υλικό).
ΕνεργοποιημένηΕνεργοποιημένηΔίσκος αποθηκεύει προσωρινά εγγραφές.

Το πρόγραμμα οδήγησης δεν εκδίδει εντολές εκκαθάρισης/Write-Through.
(Η συμπεριφορά που προκύπτει από σφάλμα πριν από το SP3, για μονάδες δίσκου που έχουν εγγραφή προσωρινή αποθήκευση ενεργοποιημένη στο υλικού.)
Ιδιότητες

Αναγνωριστικό άρθρου: 332023 - Τελευταία αναθεώρηση: 17 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια