HSE, μια μηχανή αποθήκευσης ανοιχτού κώδικα, βελτιστοποιημένη SSE για SSD

Η Micron Technology (μια εταιρεία που ειδικεύεται στην παραγωγή DRAM και μνήμης flash) ανακοίνωσε την εισαγωγή μιας νέας μηχανής που ονομάζεται "HSE" (Heterogeneous-memory Storage Engine), η οποία αναπτύχθηκε λαμβάνοντας υπόψη τα ειδικά χαρακτηριστικά χρήσης σε μονάδες SSD που βασίζονται σε μνήμη NAND flash (X100, TLC, QLC 3D NAND) ή μνήμη μόνο για ανάγνωση (NVDIMM).

Η μηχανή έχει σχεδιαστεί ως βιβλιοθήκη για ενσωμάτωση σε άλλες εφαρμογές και υποστηρίζει την επεξεργασία δεδομένων κλειδιού-τιμής . Ο κώδικας HSE είναι γραμμένος σε C και διανέμεται με την άδεια Apache 2.0.

Μεταξύ των εφαρμογών της μηχανής είναι η αποθήκευση δεδομένων χαμηλού επιπέδου σε NoSQL DBMS, η αποθήκευση που καθορίζεται από λογισμικό (SDS) όπως το Ceph και το Scality RING, πλατφόρμες για την επεξεργασία μεγάλων ποσοτήτων δεδομένων (Big Data), συστήματα υπολογιστών υψηλής απόδοσης (HPC), συσκευές Διαδικτύου των Πραγμάτων (IoT) και λύσεις για συστήματα μηχανικής μάθησης.

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

Ως παράδειγμα ενσωμάτωσης του νέου κινητήρα σε έργα τρίτων, προετοιμάστηκε μια έκδοση του MongoDB DBMS προσανατολισμένη στα έγγραφα, η οποία μεταφράστηκε για χρήση του HSE.

Τεχνολογικά, το HSE βασίζεται σε μια πρόσθετη βασική ενότητα, το mpool , η οποία υλοποιεί μια εξειδικευμένη διεπαφή για την αποθήκευση αντικειμένων για μονάδες SSD, λαμβάνοντας υπόψη τις δυνατότητες και τα χαρακτηριστικά τους, επιτρέποντας έτσι θεμελιωδώς διαφορετικά χαρακτηριστικά ταχύτητας και ανθεκτικότητας. Το Mpool είναι επίσης μια ανάπτυξη ανοιχτού κώδικα από την Micron Technology, που κυκλοφόρησε ταυτόχρονα με το HSE, αλλά ξεχωρίζει ως ξεχωριστό έργο υποδομής. Το Mpool προϋποθέτει τη χρήση μόνιμης μνήμης και ζώνης αποθήκευσης, αλλά προς το παρόν υποστηρίζονται μόνο οι παραδοσιακοί SSD.

Οι δοκιμές απόδοσης που χρησιμοποίησαν το πακέτο YCSB (Yahoo Cloud Serving Benchmark) έδειξαν σημαντική αύξηση απόδοσης κατά τη χρήση 2 TB αποθηκευτικού χώρου με επεξεργασία μπλοκ δεδομένων 1 KB. Μια ιδιαίτερα σημαντική αύξηση απόδοσης παρατηρήθηκε στη δοκιμή με ομοιόμορφη κατανομή λειτουργιών ανάγνωσης και εγγραφής.

Για παράδειγμα, το MongoDB με τη μηχανή HSE αποδείχθηκε περίπου 8 φορές ταχύτερο από την έκδοση με την τυπική μηχανή WiredTiger, και η μηχανή RocksDB DBMS ξεπέρασε το HSE κατά περισσότερες από 6 φορές. Εξαιρετικοί δείκτες απόδοσης είναι επίσης εμφανείς στις δοκιμές, οι οποίες περιελάμβαναν 95% λειτουργίες ανάγνωσης και μόνο 5% αλλαγές ή προσθήκες.

Μια άλλη δοκιμή που εκτελείται περιλαμβάνει μόνο διαδικασίες ανάγνωσης, δείχνει κέρδος περίπου 40%. Η αύξηση της επιβίωσης των SSD κατά τη διάρκεια των εγγραφών σε σύγκριση με τη λύση που βασίζεται στο RocksDB εκτιμάται ότι είναι 7 φορές.

Βασικά χαρακτηριστικά του HSE:

  • Υποστήριξη για τυπικούς και προηγμένους χειριστές για την επεξεργασία δεδομένων σε μορφή κλειδιού / τιμής ·
  • Πλήρης υποστήριξη συναλλαγών και με δυνατότητα απομόνωσης τμημάτων αποθήκευσης δημιουργώντας στιγμιότυπα (στιγμιότυπα μπορούν επίσης να χρησιμοποιηθούν για τη διατήρηση ξεχωριστών συλλογών σε ένα κατάστημα).
  • Δυνατότητα χρήσης δρομέων για διασχίζοντας δεδομένα σε παραστάσεις που βασίζονται σε στιγμιότυπα.
  • Ένα μοντέλο δεδομένων βελτιστοποιημένο για μικτούς τύπους φορτίων σε ένα μοναδικό αποθετήριο.
  • Ευέλικτοι μηχανισμοί για τη διαχείριση της αξιοπιστίας αποθήκευσης.
  • Προσαρμόσιμα σχήματα ενορχήστρωσης δεδομένων (διανομή μέσω διαφορετικών τύπων μνήμης που υπάρχουν στο αποθετήριο).
  • Μια βιβλιοθήκη με C API που μπορεί να συνδεθεί δυναμικά με οποιαδήποτε εφαρμογή.
    Η δυνατότητα κλιμάκωσης σε terabyte δεδομένων και εκατοντάδων δισεκατομμυρίων κλειδιών στην αποθήκευση.
  • Αποτελεσματική επεξεργασία χιλιάδων παράλληλων εργασιών.
  • Σημαντική αύξηση του εύρους ζώνης, μειωμένη καθυστέρηση και αυξημένη ανάγνωση / εγγραφή για διάφορους τύπους φόρτου εργασίας σε σύγκριση με τις τυπικές λύσεις.
  • Η δυνατότητα χρήσης διαφορετικών κατηγοριών SSD στον ίδιο χώρο αποθήκευσης για τη βελτιστοποίηση της απόδοσης και της αντοχής.

Μπορείτε να αποκτήσετε πρόσβαση στον κώδικα του κινητήρα από τον παρακάτω σύνδεσμο.


Προσθήκη ως προτιμώμενης πηγής στην Google