Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Οι τεχνολογίες για τη βελτίωση της απόδοσης που βασίζονται στη χρήση SSD και χρησιμοποιούνται ευρέως σε συστήματα αποθήκευσης έχουν εφευρεθεί από καιρό. Πρώτα απ 'όλα, είναι η χρήση του SSD ως αποθηκευτικού χώρου, η οποία είναι 100% αποτελεσματική, αλλά ακριβή. Ως εκ τούτου, χρησιμοποιούνται τεχνολογίες κουραστικής και προσωρινής αποθήκευσης, όπου οι SSD χρησιμοποιούνται μόνο για τα πιο δημοφιλή («καυτά») δεδομένα. Η βαθμίδα είναι καλή για σενάρια μακροπρόθεσμης (ημέρες-εβδομάδες) χρήσης «καυτών» δεδομένων. Η προσωρινή αποθήκευση, αντίθετα, είναι για βραχυπρόθεσμη (λεπτά-ώρες) χρήση. Και οι δύο αυτές επιλογές υλοποιούνται στο σύστημα αποθήκευσης QSAN XCubeSAN. Σε αυτό το άρθρο θα εξετάσουμε την υλοποίηση του δεύτερου αλγορίθμου - Προσωρινή αποθήκευση SSD.

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

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

Ενδείξεις για τη χρήση της προσωρινής μνήμης SSD για ανάγνωση:

  • Η υπεροχή των λειτουργιών ανάγνωσης έναντι των λειτουργιών εγγραφής (συνήθως τυπική για βάσεις δεδομένων και εφαρμογές Ιστού).
  • Η παρουσία ενός σημείου συμφόρησης με τη μορφή απόδοσης της συστοιχίας σκληρού δίσκου.
  • Η ποσότητα των απαιτούμενων δεδομένων είναι μικρότερη από το μέγεθος της κρυφής μνήμης SSD.

Οι ενδείξεις για τη χρήση μιας προσωρινής μνήμης SSD ανάγνωσης και εγγραφής είναι οι ίδιες, εκτός από τη φύση των λειτουργιών - μικτού τύπου (για παράδειγμα, διακομιστής αρχείων).

Οι περισσότεροι προμηθευτές αποθήκευσης χρησιμοποιούν κρυφή μνήμη SSD μόνο για ανάγνωση στα προϊόντα τους. Η θεμελιώδης διαφορά QSAN Παρέχουν τη δυνατότητα χρήσης της κρυφής μνήμης και για γραφή. Για να ενεργοποιήσετε τη λειτουργία προσωρινής αποθήκευσης SSD σε συστήματα αποθήκευσης QSAN, πρέπει να αγοράσετε μια ξεχωριστή άδεια χρήσης (παρέχεται ηλεκτρονικά).

Η κρυφή μνήμη SSD στο XCubeSAN υλοποιείται φυσικά με τη μορφή χωριστών δεξαμενών κρυφής μνήμης SSD. Μπορεί να υπάρχουν έως και τέσσερα από αυτά στο σύστημα. Κάθε πισίνα, φυσικά, χρησιμοποιεί το δικό του σύνολο SSD. Και ήδη στις ιδιότητες του εικονικού δίσκου καθορίζουμε αν θα χρησιμοποιήσει ένα cache pool και ποιο. Η ενεργοποίηση και η απενεργοποίηση της χρήσης της προσωρινής μνήμης για τόμους μπορεί να γίνει online χωρίς διακοπή εισόδου/εξόδου. Μπορείτε επίσης να προσθέσετε θερμά SSD στην πισίνα και να τα αφαιρέσετε από εκεί. Όταν δημιουργείτε μια κρυφή μνήμη SSD Pool, πρέπει να επιλέξετε σε ποια λειτουργία θα λειτουργεί: μόνο για ανάγνωση ή ανάγνωση+εγγραφή. Η φυσική του οργάνωση εξαρτάται από αυτό. Δεδομένου ότι μπορεί να υπάρχουν πολλές δεξαμενές κρυφής μνήμης, η λειτουργικότητά τους μπορεί να είναι διαφορετική (δηλαδή, το σύστημα μπορεί να έχει ταυτόχρονα και μνήμη cache ανάγνωσης και ανάγνωσης+εγγραφής).

Εάν χρησιμοποιείται μια ομάδα cache μόνο για ανάγνωση, μπορεί να αποτελείται από 1-8 SSD. Οι δίσκοι δεν χρειάζεται να έχουν την ίδια χωρητικότητα και τον ίδιο προμηθευτή, καθώς συνδυάζονται σε μια δομή NRAID+. Όλοι οι SSD στην πισίνα είναι κοινόχρηστοι. Το σύστημα προσπαθεί ανεξάρτητα να παραλληλίσει τις εισερχόμενες αιτήσεις μεταξύ όλων των SSD για να επιτύχει τη μέγιστη απόδοση. Εάν αποτύχει ένας από τους SSD, δεν θα συμβεί τίποτα κακό: τελικά, η προσωρινή μνήμη περιέχει μόνο ένα αντίγραφο των δεδομένων που είναι αποθηκευμένα στη συστοιχία των σκληρών δίσκων. Απλώς, η ποσότητα της διαθέσιμης προσωρινής μνήμης SSD θα μειωθεί (ή θα γίνει μηδενική εάν χρησιμοποιείτε την αρχική κρυφή μνήμη SSD από μία μονάδα δίσκου).

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Εάν η κρυφή μνήμη χρησιμοποιείται για λειτουργίες ανάγνωσης + εγγραφής, τότε ο αριθμός των SSD στη συγκέντρωση θα πρέπει να είναι πολλαπλάσιος του δύο, καθώς τα περιεχόμενα αντικατοπτρίζονται σε ζεύγη μονάδων δίσκου (χρησιμοποιείται η δομή NRAID 1+). Η αντιγραφή της κρυφής μνήμης είναι απαραίτητη επειδή μπορεί να περιέχει δεδομένα που δεν έχουν ακόμη εγγραφεί στους σκληρούς δίσκους. Και σε αυτήν την περίπτωση, η αποτυχία του SSD από το cache pool θα οδηγούσε σε απώλεια πληροφοριών. Στην περίπτωση του NRAID 1+, μια αποτυχία του SSD θα οδηγήσει απλώς στη μεταφορά της κρυφής μνήμης σε κατάσταση μόνο για ανάγνωση, με άγραφα δεδομένα να απορρίπτονται στη διάταξη του σκληρού δίσκου. Μετά την αντικατάσταση του ελαττωματικού SSD, η κρυφή μνήμη θα επιστρέψει στην αρχική της κατάσταση λειτουργίας. Παρεμπιπτόντως, για μεγαλύτερη ασφάλεια, μπορείτε να εκχωρήσετε αφιερωμένα ανταλλακτικά σε μια προσωρινή μνήμη ανάγνωσης + εγγραφής.

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Όταν χρησιμοποιείτε τη λειτουργία προσωρινής αποθήκευσης SSD στο XCubeSAN, υπάρχουν ορισμένες απαιτήσεις για την ποσότητα της μνήμης των ελεγκτών αποθήκευσης: όσο περισσότερη μνήμη συστήματος, τόσο μεγαλύτερη θα είναι διαθέσιμη η δεξαμενή κρυφής μνήμης.

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Σε αντίθεση με τους περισσότερους κατασκευαστές συστημάτων αποθήκευσης, οι οποίοι προσφέρουν μόνο την επιλογή ενεργοποίησης/απενεργοποίησης της κρυφής μνήμης SSD, το QSAN παρέχει περισσότερες επιλογές. Συγκεκριμένα, μπορείτε να επιλέξετε τον τρόπο λειτουργίας της κρυφής μνήμης ανάλογα με τη φύση του φορτίου. Υπάρχουν τρία προκαθορισμένα πρότυπα που είναι πιο κοντά στη λειτουργία τους στις αντίστοιχες υπηρεσίες: βάση δεδομένων, σύστημα αρχείων, υπηρεσία web. Επιπλέον, ο διαχειριστής μπορεί να δημιουργήσει το δικό του προφίλ ορίζοντας τις απαιτούμενες τιμές παραμέτρων:

  • Μέγεθος μπλοκ (Μέγεθος μπλοκ προσωρινής μνήμης) – 1/2/4 MB
  • Αριθμός αιτημάτων για την ανάγνωση ενός μπλοκ ώστε να αντιγραφεί στην κρυφή μνήμη (Προσθήκη στην ανάγνωση) – 1..4
  • Αριθμός αιτημάτων για να γράψετε ένα μπλοκ έτσι ώστε να αντιγραφεί στην κρυφή μνήμη (Populate-on-Write Threshold) – 0..4

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Τα προφίλ μπορούν να αλλάξουν εν κινήσει, αλλά, φυσικά, με τα περιεχόμενα της επαναφοράς της προσωρινής μνήμης και το νέο «ζέσταμά» της.

Λαμβάνοντας υπόψη την αρχή της λειτουργίας της προσωρινής μνήμης SSD, μπορούμε να επισημάνουμε τις κύριες λειτουργίες κατά την εργασία με αυτήν:

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

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

  1. Ένα αίτημα από τον κεντρικό υπολογιστή φτάνει στον ελεγκτή.
  2. Δεδομένου ότι τα ζητούμενα δεν βρίσκονται στη μνήμη cache του SSD, διαβάζονται από τους σκληρούς δίσκους.
  3. Τα δεδομένα ανάγνωσης αποστέλλονται στον κεντρικό υπολογιστή. Ταυτόχρονα, γίνεται έλεγχος για να διαπιστωθεί εάν αυτά τα μπλοκ είναι «καυτά».
  4. Εάν ναι, τότε αντιγράφονται στη μνήμη cache του SSD για περαιτέρω χρήση.

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Ανάγνωση δεδομένων όταν υπάρχουν στην κρυφή μνήμη

  1. Ένα αίτημα από τον κεντρικό υπολογιστή φτάνει στον ελεγκτή.
  2. Δεδομένου ότι τα ζητούμενα δεδομένα βρίσκονται στη μνήμη cache του SSD, διαβάζονται από εκεί.
  3. Τα δεδομένα ανάγνωσης αποστέλλονται στον κεντρικό υπολογιστή.

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Εγγραφή δεδομένων κατά τη χρήση της προσωρινής μνήμης ανάγνωσης

  1. Ένα αίτημα εγγραφής από τον κεντρικό υπολογιστή φτάνει στον ελεγκτή.
  2. Τα δεδομένα εγγράφονται σε σκληρούς δίσκους.
  3. Μια απάντηση που υποδεικνύει την επιτυχή εγγραφή επιστρέφεται στον κεντρικό υπολογιστή.
  4. Ταυτόχρονα, ελέγχεται εάν το μπλοκ είναι "hot" (συγκρίνεται η παράμετρος Populate-on-Write Threshold). Εάν ναι, τότε αντιγράφεται στη μνήμη cache του SSD για μελλοντική χρήση.

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Εγγραφή δεδομένων κατά τη χρήση κρυφής μνήμης ανάγνωσης+εγγραφής

  1. Ένα αίτημα εγγραφής από τον κεντρικό υπολογιστή φτάνει στον ελεγκτή.
  2. Τα δεδομένα εγγράφονται στη μνήμη cache του SSD.
  3. Μια απάντηση που υποδεικνύει την επιτυχή εγγραφή επιστρέφεται στον κεντρικό υπολογιστή.
  4. Τα δεδομένα από τη μνήμη cache του SSD εγγράφονται σε σκληρούς δίσκους στο παρασκήνιο.

Check in δράση

Περίπτερο δοκιμής

2 διακομιστές (CPU: 2 x Xeon E5-2620v3 2.4Hz / RAM: 32 GB) συνδέονται με δύο θύρες μέσω Fiber Channel 16G απευθείας στο σύστημα αποθήκευσης XCubeSAN XS5224D (16GB RAM/ελεγκτής).

Χρησιμοποιήσαμε 16 x Seagate Constellation ES, ST500NM0001, 500 GB, SAS 6Gb/s, συνδυασμένα σε RAID5 (15+1), για τη συστοιχία δεδομένων και 8 x HGST Ultrastar SSD800MH.B, HUSMH8010BSS200, SAS100Gb/s12

Δημιουργήθηκαν 2 τόμοι: ένας για κάθε διακομιστή.

Δοκιμή 1. Προσωρινή μνήμη SSD μόνο για ανάγνωση από 1-8 SSD

Προσωρινή μνήμη SSD

  • Τύπος I/O: Προσαρμογή
  • Μέγεθος μπλοκ προσωρινής μνήμης: 4MB
  • Όριο συμπλήρωσης κατά την ανάγνωση: 1
  • Κατώφλι συμπλήρωσης σε εγγραφή: 0

Μοτίβο I/O

  • Εργαλείο: IOmeter V1.1.0
  • Εργαζόμενοι: 1
  • Εξαιρετικό (Βάθος ουράς): 128
  • Προδιαγραφές πρόσβασης: 4KB, 100% ανάγνωση, 100% τυχαία

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Θεωρητικά, όσο περισσότεροι SSD στο cache pool, τόσο υψηλότερη είναι η απόδοση. Στην πράξη, αυτό έχει επιβεβαιωθεί. Η μόνη σημαντική αύξηση του αριθμού των SSD με μικρό αριθμό όγκων δεν οδηγεί σε εκρηκτικό αποτέλεσμα.

Δοκιμή 2. Προσωρινή μνήμη SSD σε λειτουργία ανάγνωσης + εγγραφής με 2-8 SSD

Προσωρινή μνήμη SSD

  • Τύπος I/O: Προσαρμογή
  • Μέγεθος μπλοκ προσωρινής μνήμης: 4MB
  • Όριο συμπλήρωσης κατά την ανάγνωση: 1
  • Κατώφλι συμπλήρωσης σε εγγραφή: 1

Μοτίβο I/O

  • Εργαλείο: IOmeter V1.1.0
  • Εργαζόμενοι: 1
  • Εξαιρετικό (Βάθος ουράς): 128
  • Προδιαγραφές πρόσβασης: 4KB, 100% εγγραφή, 100% τυχαία

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Το ίδιο αποτέλεσμα: εκρηκτική αύξηση της απόδοσης και κλιμάκωση καθώς αυξάνεται ο αριθμός των SSD.

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

Τώρα ας επιστρέψουμε στη γη και ας ελέγξουμε μια πιο ρεαλιστική κατάσταση, όταν ο όγκος των δεδομένων είναι μεγαλύτερος από το μέγεθος της κρυφής μνήμης. Προκειμένου η δοκιμή να περάσει σε εύλογο χρονικό διάστημα (η περίοδος "προθέρμανσης" της κρυφής μνήμης αυξάνεται πολύ όσο αυξάνεται το μέγεθος του όγκου), θα περιορίσουμε το μέγεθος του όγκου στα 120 GB.

Δοκιμή 3. Προσομοίωση βάσης δεδομένων

Προσωρινή μνήμη SSD

  • Τύπος I/O: Βάση δεδομένων
  • Μέγεθος μπλοκ προσωρινής μνήμης: 1MB
  • Όριο συμπλήρωσης κατά την ανάγνωση: 2
  • Κατώφλι συμπλήρωσης σε εγγραφή: 1

Μοτίβο I/O

  • Εργαλείο: IOmeter V1.1.0
  • Εργαζόμενοι: 1
  • Εξαιρετικό (Βάθος ουράς): 128
  • Προδιαγραφές πρόσβασης: 8KB, 67% ανάγνωση, 100% τυχαία

Υλοποίηση κρυφής μνήμης SSD στο σύστημα αποθήκευσης QSAN XCubeSAN

Ετυμηγορία

Το προφανές συμπέρασμα, φυσικά, είναι η καλή αποτελεσματικότητα της χρήσης μιας κρυφής μνήμης SSD για τη βελτίωση της απόδοσης οποιουδήποτε συστήματος αποθήκευσης. Εφαρμόζεται σε QSAN XCubeSAN Αυτή η δήλωση ισχύει πλήρως: η λειτουργία προσωρινής αποθήκευσης SSD υλοποιείται τέλεια. Αυτό αφορά την υποστήριξη για λειτουργίες ανάγνωσης και ανάγνωσης + εγγραφής, ευέλικτες ρυθμίσεις για οποιοδήποτε σενάριο χρήσης, καθώς και τη συνολική απόδοση του συστήματος στο σύνολό του. Επομένως, για ένα πολύ λογικό κόστος (η τιμή της άδειας είναι συγκρίσιμη με το κόστος 1-2 SSD), μπορείτε να αυξήσετε σημαντικά τη συνολική απόδοση.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο