Micron Technology, azienda specializzata nella produzione di DRAM e memorie flash,
Tra gli ambiti di applicazione del motore, viene utilizzato per l'archiviazione di dati di basso livello in DBMS NoSQL, archivi software (SDS, Software-Defined Storage) come Ceph e Scality RING, piattaforme per l'elaborazione di grandi quantità di dati (Big Data) , calcolo ad alte prestazioni (HPC), dispositivi Internet delle cose (IoT) e soluzioni per sistemi di machine learning.
L'HSE è ottimizzato non solo per le massime prestazioni, ma anche per la longevità tra diverse classi di SSD. L'alta velocità si ottiene attraverso un modello di archiviazione ibrido: i dati più aggiornati vengono memorizzati nella cache della RAM, riducendo così il numero di accessi all'unità. Come esempio di integrazione di un nuovo motore in progetti di terze parti
Tecnologicamente, HSE si basa su un modulo kernel aggiuntivo
Test delle prestazioni con un pacchetto
Ad esempio, MongoDB con il motore HSE si è rivelato circa 8 volte più veloce della versione con il motore WiredTiger standard e il motore HSE ha superato il DBMS RocksDB di oltre 6 volte. Ottime prestazioni si riscontrano anche nei test che coinvolgono il 95% di letture e il 5% di modifiche o aggiunte (test “B” e “D” nei grafici). Il test "C", che presuppone solo operazioni di lettura, mostra un guadagno di circa il 40%. L'aumento della sopravvivenza delle unità SSD durante le operazioni di scrittura rispetto alla soluzione basata su RocksDB è stimato in 7 volte.
Caratteristiche principali dell’HSE:
- Supporto per operatori generici ed estesi per la gestione dei dati in formato chiave/valore;
- Pieno supporto per le transazioni e con la possibilità di isolare le porzioni di storage attraverso la creazione di snapshot (le snapshot possono essere utilizzate anche per mantenere raccolte indipendenti in un unico storage);
- Possibilità di utilizzare i cursori per attraversare i dati in visualizzazioni basate su istantanee;
- Modello dati ottimizzato per tipi di carico misti in un unico storage;
- Meccanismi flessibili di gestione dell'affidabilità dello storage;
- Schemi di orchestrazione dei dati personalizzabili (distribuzione tra diversi tipi di memoria presenti nello storage);
- Una libreria con un'API C che può collegarsi dinamicamente a qualsiasi applicazione;
- Capacità di scalare fino a terabyte di dati e centinaia di miliardi di chiavi nello storage;
- Elaborazione efficiente di migliaia di operazioni parallele;
- Aumento significativo del throughput, minore latenza e aumento di scrittura/lettura per vari tipi di carico rispetto alle tipiche soluzioni alternative;
- La possibilità di utilizzare diverse classi SSD nello stesso spazio di archiviazione per ottimizzare prestazioni e durata.
Fonte: opennet.ru