Вышла версия 0.9.3 библиотеки [ libmdbx ]( ) реализующей ультра-быстрый компактный встраиваемый движок ключ-значение. libmdbx является глубокой переработкой легендарной [ СУБД LMDB ](
https://en.wikipedia.org/wiki/Lightning_Memory-Mapped_Database ) и по заявлению разработчиков превосходит прародителя по надежности, набору возможностей и производительности. В частности, [ утверждается ](
https://github.com/erthink/libmdbx#added-features ) что libmdbx до 20% быстрее LMDB в CRUD сценариях, и до 30% быстрее, если при сборке libmdbx, посредством опций, отключить внутренний контроль до сопоставимого с LMDB уровня. Libmdbx предлагает [ ACID ](
https://ru.wikipedia.org/wiki/ACID ) и [ zero-copy ](
https://ru.wikipedia.org/wiki/Zero-copy ) для нескольких локальных процессов, несколько key-value map и multimap в одной БД, оптимизацию хранения ключей и значений фиксированного размера, строгую сериализацию изменений и неблокирующее чтение с линейным масштабированием по ядрам CPU. Поддерживается автокомпактификация, автоматическое управление размером БД, единый формат БД для 32-битных и 64-битных сборок, оценка объёма выборок по диапазонам (range query estimation). Поставляется утилита проверки целостности структуры БД с некоторыми возможностями восстановления. При этом [ libmdbx кратно быстрее SQLite в сопоставимых сценариях ](
https://www.opennet.ru/openforum/vsluhforumID3/121987.html#9 ) . Основные новшества, доработки и исправления после предыдущего релиза: В API добавлена установка [ опций времени выполнения ](
https://erthink.github.io/libmdbx/group__c__api.html#ga671855605968c3b1f89a72e2d7b71eb3 ) , что позволяет работу движка под конкретные сценарии использования; Переработан свопинг на диск измененных страниц БД в очень больших транзакциях; Ускорена сортировка внутренних списков страниц; Доступен порт для FreeBSD и привязки для GoLang; Устранено более 10 ошибок и недочетов.
Ссылка:
https://www.linux.org.ru/news/opensource/16150804