Έντουαρντ Σίσκιν
Μεταξύ των καινοτομιών που αναπτύχθηκαν πρόσφατα, η παροχή
την ευκαιρία για τον χρήστη να προσθέσει ένα μικρό υψηλής απόδοσης
συσκευή μπλοκ (π.χ. NVRAM) που καλείται
σχετικά μεγάλος λογικός όγκος που αποτελείται από αργό
κινήσεις προϋπολογισμού. Αυτό θα δημιουργήσει την εντύπωση ότι όλα
ο όγκος αποτελείται από την ίδια ακριβή υψηλή απόδοση
συσκευές, όπως ένας "δίσκος μεσολάβησης".
Η μέθοδος που εφαρμόστηκε βασίστηκε στην απλή παρατήρηση ότι στην πράξη ο δίσκος δεν γράφεται συνεχώς και η καμπύλη φορτίου I/O έχει σχήμα κορυφών. Στο διάστημα μεταξύ τέτοιων "αιχμών", είναι πάντα δυνατή η επαναφορά δεδομένων από τον δίσκο μεσολάβησης, επαναγράφοντας όλα τα δεδομένα (ή μόνο μέρος) στο παρασκήνιο στην κύρια, "αργή" αποθήκευση. Έτσι, ο δίσκος μεσολάβησης είναι πάντα έτοιμος να λάβει ένα νέο τμήμα δεδομένων.
Αυτή η τεχνική (γνωστή ως Burst Buffers) ξεκίνησε αρχικά στο
τομείς υπολογιστών υψηλής απόδοσης (HPC). Αλλά αποδείχθηκε ότι ήταν επίσης σε ζήτηση για συνηθισμένες εφαρμογές, ειδικά για εκείνες που θέτουν αυξημένες απαιτήσεις για την ακεραιότητα των δεδομένων (συνήθως διάφοροι τύποι βάσεων δεδομένων). Τέτοιες εφαρμογές πραγματοποιούν οποιεσδήποτε αλλαγές σε οποιοδήποτε αρχείο με ατομικό τρόπο, και συγκεκριμένα:
Απελευθερώνει μπλοκ που καταλαμβάνονται από παλιά δεδομένα.
Όλα αυτά τα βήματα, στον ένα ή τον άλλο βαθμό, προκαλούν σημαντικά
υποβάθμιση της απόδοσης σε οποιοδήποτε σύστημα αρχείων. Κατάσταση
βελτιώνεται εάν το νέο αρχείο εγγραφεί πρώτα στο εκχωρημένο
συσκευή υψηλής απόδοσης, αυτό ακριβώς συμβαίνει
σύστημα αρχείων με υποστήριξη Burst Buffers.
Στο Reiser5 σχεδιάζεται προαιρετική αποστολή όχι μόνο
νέα λογικά μπλοκ του αρχείου, αλλά και γενικά όλες οι βρώμικες σελίδες. Εξάλλου,
όχι μόνο σελίδες με δεδομένα, αλλά και με μεταδεδομένα που
γράφονται στα βήματα (2) και (3).
Η υποστήριξη για δίσκους μεσολάβησης πραγματοποιείται στο πλαίσιο τακτικής εργασίας με
Reiser5 λογικοί τόμοι,
το συγκεντρωτικό σύστημα "δισκέτα μεσολάβησης - κύρια αποθήκευση" είναι κανονικό
λογικό τόμο με τη μόνη διαφορά ότι ο δίσκος μεσολάβησης έχει προτεραιότητα
μεταξύ άλλων στοιχείων τόμου στην πολιτική εκχώρησης διευθύνσεων δίσκου.
Η προσθήκη ενός δίσκου μεσολάβησης σε έναν λογικό τόμο δεν συνοδεύεται από κανένα
επανεξισορρόπηση δεδομένων και η αφαίρεσή του γίνεται με τον ίδιο ακριβώς τρόπο όπως
αφαιρώντας έναν κανονικό δίσκο. Όλες οι λειτουργίες του δίσκου μεσολάβησης είναι ατομικές.
Ο χειρισμός σφαλμάτων και η ανάπτυξη του συστήματος (συμπεριλαμβανομένης της κατάρρευσης του συστήματος) συμβαίνει με τον ίδιο ακριβώς τρόπο όπως εάν ο δίσκος μεσολάβησης ήταν ένα κανονικό στοιχείο
λογικός όγκος.
Μετά την προσθήκη ενός δίσκου μεσολάβησης, η συνολική χωρητικότητα του λογικού τόμου
αυξάνεται κατά τη χωρητικότητα αυτού του δίσκου. Παρακολούθηση ελεύθερου χώρου
ο δίσκος μεσολάβησης εκτελείται με τον ίδιο τρόπο όπως και για άλλα στοιχεία τόμου, π.χ. χρησιμοποιώντας το βοηθητικό πρόγραμμα volume.reiser4(8).
Ο δίσκος μεσολάβησης πρέπει να καθαρίζεται περιοδικά, π.χ. επαναφορά δεδομένων από
στην κύρια αποθήκευση. Μετά την επίτευξη σταθερότητας beta, Reiser5
ο καθαρισμός προγραμματίζεται να είναι αυτόματος (θα διαχειρίζεται
ειδικό νήμα πυρήνα). Σε αυτό το στάδιο, ευθύνη για τον καθαρισμό
ανήκει στον χρήστη. Επαναφορά δεδομένων από τον δίσκο μεσολάβησης στον κύριο
Η αποθήκευση δημιουργείται απλά καλώντας το βοηθητικό πρόγραμμα volume.reiser4 με την επιλογή
"-σι". Ως επιχείρημα, πρέπει να καθορίσετε το σημείο προσάρτησης του λογικού
τόμους Φυσικά, πρέπει να θυμάστε να καθαρίζετε περιοδικά. Για
Μπορείτε να γράψετε ένα απλό σενάριο φλοιού για να το κάνετε αυτό.
Εάν δεν υπάρχει ελεύθερος χώρος στο δίσκο μεσολάβησης, όλα τα δεδομένα
εγγράφονται αυτόματα στην κύρια αποθήκευση. Ταυτόχρονα, από προεπιλογή
η συνολική απόδοση του FS μειώνεται (λόγω συνεχών κλήσεων
διαδικασίες για τη διενέργεια όλων των υφιστάμενων συναλλαγών). Προαιρετικά μπορείτε να ρυθμίσετε
λειτουργία χωρίς απώλεια απόδοσης. Ωστόσο, σε αυτή την περίπτωση ο δίσκος
Ο χώρος της συσκευής διακομιστή μεσολάβησης θα χρησιμοποιείται λιγότερο αποτελεσματικά.
Είναι βολικό να χρησιμοποιείτε μια υποενότητα μεταδεδομένων (τούβλο) ως δίσκο μεσολάβησης, υπό την προϋπόθεση ότι έχει δημιουργηθεί σε μια συσκευή μπλοκ επαρκώς υψηλής απόδοσης.
Πηγή: opennet.ru