Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9.2

После двух месяцев разработки состоялся выпуск библиотеки libmdbx 0.9.2 (MDBX) с реализацией высокопроизводительной, компактной встраиваемой базы данных класса ключ-значение. Код libmdbx распространяется под лицензией OpenLDAP Public License. libmdbx является глубокой переработкой СУБД LMDB и по заявлению разработчиков превосходит своего прародителя по надежности, набору возможностей и производительности.

Libmdbx предлагает ACID, строгую сериализацию изменений и неблокирующее чтение с линейным масштабированием по ядрам CPU. В libmdbx большое внимание уделяется качеству кода, стабильной работе API, тестированию и автоматическим проверкам. Поддерживается втокомпактификация, автоматическое управление размером БД, единый формат БД для 32-битных и 64-битных сборок, оценка объёма выборок по диапазонам (range query estimation). Поставляется утилита проверки целостности структуры БД с некоторыми возможностями восстановления. C 2016 года проект финансируется компанией Positive Technologies и c 2017 года используется в её продуктах.

Основные новшества, доработки и исправления, добавленные после прошлого выпуска:

  • Доступны привязки для Nim (автор Jens Alfke, архитектор в Couchbase) и Rust (автор Clément Renault, основатель MeiliSearch).
  • Доступен пакет для buildroot (ожидается обновление).
  • Устранено более 20 ошибок и недочетов, в том числе обеспечена работа на Windows 2000/XP (для Miranda NG).
  • Добавлены функции копирования курсоров, безопасного удаления файлов БД в многопроцеcсной среде и функционал поиска lowerbound для multimap (с поддержкой сортировки multi-value элементов). Ускорено завершение вложенных транзакций.
  • Расширены внутренние тесты, в том числе для применения библиотеки в TurboGeth/Ethereum.
  • Продолжено совершенствование online документации.
  • Суммарно внесено более 130 изменений, удалено ~1200 строк, добавлено ~3500.



Источник: http://www.opennet.ru/opennews/art.shtml? num=54153

© OpenNet