Micron Technology, a company specializing in the production of DRAM and flash memory,
Of the areas of application of the engine, it is used for low-level data storage in NoSQL DBMS, software storages (SDS, Software-Defined Storage) such as Ceph and Scality RING, platforms for processing large amounts of data (Big Data), high-performance computing (HPC), Internet devices of things (IoT) and solutions for machine learning systems.
HSE is optimized not only for maximum performance, but also for longevity across different classes of SSDs. High speed is achieved through a hybrid storage model - the most up-to-date data is cached in RAM, which reduces the number of accesses to the drive. As an example of integrating a new engine into third-party projects
Technologically, HSE relies on an additional kernel module
Performance testing with a package
For example, MongoDB with the HSE engine turned out to be about 8 times faster than the version with the standard WiredTiger engine, and the HSE engine overtook the RocksDB DBMS by more than 6 times. Excellent performance is also seen in tests that involve 95% of reads and 5% of changes or additions (tests "B" and "D" in the graphs). The "C" test, which assumes only read operations, shows a gain of about 40%. The increase in the survivability of SSD drives during write operations compared to the solution based on RocksDB is estimated at 7 times.
Key features of HSE:
- Support for generic and extended operators for handling data in key/value format;
- Full support for transactions and with the ability to isolate storage slices through the creation of snapshots (snapshots can also be used to maintain independent collections in one storage);
- Ability to use cursors to traverse data in snapshot-based views;
- Data model optimized for mixed load types in one storage;
- Flexible storage reliability management mechanisms;
- Customizable data orchestration schemes (distribution across different types of memory present in the storage);
- A library with a C API that can dynamically link to any application;
- Ability to scale up to terabytes of data and hundreds of billions of keys in storage;
- Efficient processing of thousands of parallel operations;
- Significant increase in throughput, lower latency and increased write / read for various types of load compared to typical alternative solutions;
- The ability to use different SSD classes in the same storage to optimize performance and durability.
Source: opennet.ru