Состоялся выпуск библиотеки libmdbx v0.11.7 с реализацией высокопроизводительной компактной встраиваемой базы данных класса ключ-значение. Код распространяется под лицензией OpenLDAP Public License. Заявлено о поддержке всех актуальных операционных системы и архитектур, включая российский Эльбрус 2000.
Заслуживает внимания, что с 2021 года libmdbx используется в трех самых высокопроизводительных реализациях Ethereum (Erigon, Akula, Silkwork), а также связанных с ними проектах Binance Chain. При этом разработчики Erigon разъяснили причины выбора libmdbx, а Ankr Team отметили 30% прирост производительности в сравнении с RocksDB.
Важное отличие этого релиза от предыдущих в вынужденной миграции на GitFlic после блокировки и удаления проекта администрацией GitHub. Кроме этого, разработчики сообщают об устранении множества недочётов и решении проблем со сборками для редких конфигураций. Полный перечень всех значимых доработок доступен в ChangeLog.
Кроме традиционного C API, в libmdbx предлагается развитое C++ API, а также поддерживаемые энтузиастами привязки к языкам Lua, Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno, Scala.
Исторически libmdbx является глубокой переработкой библиотектой LMDBhttps://en.wikipedia.org/wiki/Lightning_Memory-Mapped_Database. По утверждению разработчиков, libmdbx превосходит своего прародителя по надёжности, набору возможностей и производительности. Больше внимание уделяется тестированию и автоматическим проверкам.
>>> Подробности