Micron открыл код движка хранения HSE, оптимизированного для SSD
28 апреля 2020 года
Компания Micron Technology, специализирующаяся на производстве DRAM и флеш-памяти, представила новый движок хранения HSE (Heterogeneous-memory Storage Engine), разработанный с учётом специфики использования на SSD-накопителях, основанных на NAND flash (X100, TLC, QLC 3D NAND) или постоянной памяти (NVDIMM). Движок выполнен в форме библиотеки для встраивания в другие приложения и поддерживает обработку данных в формате ключ-значение. Код HSE написан на языке Си и распространяется под лицензией Apache 2.0.
Из областей применения движка упоминается применение для низкоуровневого хранения данных в NoSQL СУБД, программных хранилищах (SDS, Software-Defined Storage) типа Ceph и Scality RING, платформах для обработки больших объёмов данных (Big Data), системах высокопроизводительных вычислений (HPC), устройствах интернета вещей (IoT) и решениях для систем машинного обучения.
HSE оптимизирован не только для достижения максимальной производительности, но и для обеспечения долговечности работы различных классов SSD-накопителей. Высокая скорость работы достигается за счёт гибридной модели хранения - наиболее актуальные данные кэшируются в ОЗУ, что снижает число обращений к накопителю. В качестве примера интеграции нового движка в сторонние проекты подготовлен вариант документно-ориентированной СУБД MongoDB, переведённый на использование HSE.
Технологически HSE опирается на дополнительный модуль ядра mpool, который реализует специализированный интерфейс хранения объектов для твердотельных дисков с учётом их возможностей и особенностей, что позволяет получить принципиально другие характеристики быстродействия и долговечности. Mpool также является разработкой Micron Technology открытой одновременно с HSE, но выделен в самостоятельный инфраструктурный проект. Mpool предполагает использование персистентной памяти и зональных хранилищ, но в настоящее время реализована поддержка только традиционных SSD.
Тестирование производительности при помощи пакета YCSB (Yahoo Cloud Serving Benchmark) показало существенный прирост производительности при использовании хранилища размером 2 ТБ с обработкой блоков данных размером 1КБ. Особенно значительный прирост производительности наблюдается в тесте с равномерным распределением операций чтении и записи (тест "A" на графике).
Например, MongoDB с движком HSE оказался быстрее варианта со штатным движком WiredTiger примерно в 8 раз, а СУБД RocksDB движок HSE обогнал более чем в 6 раз. Отличные показатели также видны в тестах, в которых фигурируют 95% операций чтения и 5% изменения или добавления (тесты "B" и "D" на графиках). В тесте "С", подразумевающем только операции чтения, демонстрируется выигрыш примерно на 40%. Увеличение живучести накопителей SSD при операциях записи по сравнению с решением на базе RocksDB оценивается в 7 раз.
Ключевые особенности HSE:
- Поддержка типовых и расширенных операторов для обработки данных в формате ключ/значение;
- Полная поддержка транзакций и с возможностью изоляции срезов хранилища через создание снапшотов (снапшоты также могут применяться для поддержания независимых коллекций в одном хранилище);
- Возможность использования курсоров для обхода данных в представлениях на основе снапшота;
- Модель данных, оптимизированная для смешанных типов нагрузки в одном хранилище;
- Гибкие механизмы управления надёжностью хранения;
- Настраиваемые схемы оркестровки данных (распределения по разным типам памяти, присутствующим в хранилище);
- Библиотека с C API, которая может динамически связываться с любыми приложениями;
- Возможность масштабирования до терабайтов данных и сотен миллиардов ключей в хранилище;
- Эффективная обработка тысяч параллельных операций;
- Значительное увеличение пропускной способности, снижение задержек и усиление записи/чтения для различных видов нагрузки по сравнению с типовыми альтернативными решениями;
- Возможность использовать в одном хранилище SSD-накопители разных классов для оптимизации производительности и долговечности.
Источники
[править]- Главная ссылка к новости (https://www.micron.com/about/b...) (Архивная копия от 7 марта 2021 на Wayback Machine)
Любой участник может оформить статью: добавить иллюстрации, викифицировать, зап��лнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.