Компанія Micron Technology, що спеціалізується на виробництві DRAM та флеш-пам'яті,
З областей застосування двигуна згадується застосування для низькорівневого зберігання даних в NoSQL СУБД, програмних сховищах (SDS, Software-Defined Storage) типу Ceph і Scality RING, платформах для обробки великих об'ємів даних (Big Data), системах високопродуктивних обчислень (HPC), пристроях інтернету речей (IoT) та рішення для систем машинного навчання.
HSE оптимізовано не тільки для досягнення максимальної продуктивності, але й для забезпечення довговічності різних класів SSD-накопичувачів. Висока швидкість роботи досягається рахунок гібридної моделі зберігання — найактуальніші дані кешуються в ОЗУ, що знижує кількість звернень до накопичувача. Як приклад інтеграції нового двигуна в сторонні проекти
Технологічно HSE спирається на додатковий модуль ядра
Тестування продуктивності за допомогою пакета
Наприклад, MongoDB з двигуном HSE виявився швидше варіанта зі штатним двигуном WiredTiger приблизно в 8 разів, а СУБД RocksDB двигун HSE випередив більш ніж у 6 разів. Відмінні показники також видно у тестах, у яких фігурують 95% операцій читання та 5% зміни чи додавання (тести «B» та «D» на графіках). У тесті «С», який передбачає лише операції читання, демонструється виграш приблизно на 40%. Збільшення живучості накопичувачів SSD під час операцій записи проти рішенням з урахуванням RocksDB оцінюється в 7 раз.
Ключові особливості HSE:
- Підтримка типових та розширених операторів для обробки даних у форматі ключ/значення;
- Повна підтримка транзакцій та з можливістю ізоляції зрізів сховищ через створення снапшотів (снапшоти також можуть застосовуватися для підтримки незалежних колекцій в одному сховищі);
- Можливість використання курсорів для обходу даних у виставах на основі снапшота;
- Модель даних оптимізована для змішаних типів навантаження в одному сховищі;
- Гнучкі механізми керування надійністю зберігання;
- Настроювані схеми оркестрування даних (розподілу за різними типами пам'яті, присутнім у сховищі);
- Бібліотека з C API, яка може динамічно зв'язуватися з будь-якими програмами;
- Можливість масштабування до терабайтів даних та сотень мільярдів ключів у сховищі;
- Ефективне опрацювання тисяч паралельних операцій;
- Значне збільшення пропускної спроможності, зниження затримок та посилення запису/читання для різних видів навантаження порівняно з типовими альтернативними рішеннями;
- Можливість використовувати в одному сховищі SSD-накопичувачі різних класів для оптимізації продуктивності та довговічності.
Джерело: opennet.ru