Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.10
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
После трех месяцев разработки состоялся выпуск библиотеки libmdbx 0.10.0 (MDBX) с реализацией высокопроизводительной компактной встраиваемой базы данных класса ключ-значение. Код libmdbx распространяется под лицензией OpenLDAP Public License. libmdbx является глубокой переработкой СУБД LMDB и по заявлению разработчиков превосходит своего прародителя по надежности, набору возможностей и производительности. Заявляется, что libmdbx до 20% быстрее LMDB в CRUD сценариях и до 30% быстрее, если при сборке libmdbx отключить внутренний контроль до сопоставимого с LMDB уровня.
Libmdbx предлагает ACID, строгую сериализацию изменений и неблокирующее чтение с линейным масштабированием по ядрам CPU. В libmdbx большое внимание уделяется качеству кода, стабильной работе API, тестированию и автоматическим проверкам. Поддерживается автокомпактификация, автоматическое управление размером БД, единый формат БД для 32-битных и 64-битных сборок, оценка объёма выборок по диапазонам (range query estimation).
Поставляется утилита проверки целостности структуры БД с некоторыми возможностями восстановления. C 2016 года проект финансируется компанией Positive Technologies и c 2017 года используется в её продуктах, а введённые правительством США санкции против Positive Technologies не оказывают какого-либо заметного влияния.
Основные новшества, доработки и исправления, добавленные после прошлого выпуска:
- Доступны привязка для Ruby от Mahlon E. Smith и пробная версия привязок для Python от Noel Kuntze, обновлены привязки для GoLang от Алексея Шарова.
- Для режима "MDBX_WRITEMAP", когда данные БД изменяются непосредственно в ОЗУ, реализовано "прозрачное сохранение" на диск измененных страниц БД. Теперь, после завершения каждой операции, такие страницы сразу полностью готовы для записи, и ядро ОС может самостоятельно сбрасывать их на диск, а фиксация транзакции не потребует их модификации. В результате в нагруженных сценариях с недостатком ОЗУ объем дисковых операций может сокращаться до 2 раз.
- Реализовано вытеснение давно неиспользуемых теневых копий измененных страниц, с предпочтением вытеснения страниц с большими/длинными значениями, которые в подавляющем большинстве сценариев изменяются только один раз за транзакцию. В результате уменьшается объем обмена с диском и увеличивается производительность в сценариях с очень большими транзакциями.
- Реализован "умный" режим разделения страниц при вставке ключей. Теперь при вставке упорядоченных последовательностей автоматически обеспечивается полное заполнение страниц, а в остальных случаях более оптимальная балансировка дерева. В результате, в среднем, страницы БД заполняются более оптимально, а B-дерево получается более сбалансированным, что положительно влияет на производительность.
- Добавлена статистика операций со страницами, что позволяет точно оценивать стоимость модифицирующих операций с БД.
- Устранено более десятка недочётов и ошибок, в том числе: решены проблемы со сборкой посредством MinGW, использования `std::filesystem::path` в iOS <= 13.0, сборка с таргетированием на старые версии Windows и т.д.
- Суммарно внесено более 200 изменений в 66 файлах, добавлено ~6500 строк, удалено ~4500.
Отдельно хочется отметить выбор проектом Turbo-Geth (турбо-форк Go-Ethereum) libmdbx в качестве нового бекэнда хранения, а также поблагодарить команду проекта (в особенности Алексея Шарова, Артёма Воротникова и Алексея Ахунова) за большую помощь в тестировании в экстремальных сценариях использования. В частности, так был обнаружен и устранен дефект в управлении упреждающим чтением/кэшированием, который приводил к деградации производительности в сложно-воспроизводимых сценариях с большими БД.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://github.com/erthink/lib...)
- OpenNews: Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9.3
- OpenNews: Выпуск LDAP-сервера ReOpenLDAP 1.1.9
- OpenNews: Доступен ReOpenLDAP 1.1.6, форк проекта OpenLDAP
- OpenNews: Выпуск библиотеки хэш-функций Fast Positive Hash 2.0.1
Похожие новости:
- [Data Mining, Big Data, Хранение данных, Хранилища данных] Озеро, хранилище и витрина данных (перевод)
- [Информационная безопасность, Open source, Администрирование баз данных, Big Data] Ещё один шаг в сторону open source: как и почему мы внедрили Arenadata DB
- [Администрирование баз данных] Сборник диаграмм классификаций баз данных
- [PostgreSQL, Java, Тестирование веб-сервисов] История о PostgreSQL 13, Testcontainers и багах
- [Oracle, PostgreSQL, Конференции, DevOps] 18 марта: DataBase Meetup Online
- СУБД Dolt, позволяющая манипулировать данными в стиле Git
- [Системное администрирование, Программирование, DevOps, Микросервисы, Serverless] Интересное о Serverless: хабрастатьи о применении, инструментах, кейсах и инструкциях для первого свидания
- [MySQL, PostgreSQL, Веб-аналитика, DevOps] Подключение БД с SSH-туннелем к PowerBI
- [Oracle, IT-инфраструктура, Серверное администрирование, Администрирование баз данных] о провиженинге тестовых баз
- Вышел Datanymizer, анонимайзер чувствительных данных
Теги для поиска: #_mdbx, #_database
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 07:13
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
После трех месяцев разработки состоялся выпуск библиотеки libmdbx 0.10.0 (MDBX) с реализацией высокопроизводительной компактной встраиваемой базы данных класса ключ-значение. Код libmdbx распространяется под лицензией OpenLDAP Public License. libmdbx является глубокой переработкой СУБД LMDB и по заявлению разработчиков превосходит своего прародителя по надежности, набору возможностей и производительности. Заявляется, что libmdbx до 20% быстрее LMDB в CRUD сценариях и до 30% быстрее, если при сборке libmdbx отключить внутренний контроль до сопоставимого с LMDB уровня. Libmdbx предлагает ACID, строгую сериализацию изменений и неблокирующее чтение с линейным масштабированием по ядрам CPU. В libmdbx большое внимание уделяется качеству кода, стабильной работе API, тестированию и автоматическим проверкам. Поддерживается автокомпактификация, автоматическое управление размером БД, единый формат БД для 32-битных и 64-битных сборок, оценка объёма выборок по диапазонам (range query estimation). Поставляется утилита проверки целостности структуры БД с некоторыми возможностями восстановления. C 2016 года проект финансируется компанией Positive Technologies и c 2017 года используется в её продуктах, а введённые правительством США санкции против Positive Technologies не оказывают какого-либо заметного влияния. Основные новшества, доработки и исправления, добавленные после прошлого выпуска:
=========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 23-Ноя 07:13
Часовой пояс: UTC + 5