The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.10"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.10" +/
Сообщение от erthink (ok), 11-Май-21, 12:06 
> Нет руководства по программированию с использованием этого ПО.

RTFM https://erthink.github.io/libmdbx/usage.html#starting

> Также настораживает:
> > Операции изменения данных никак не блокируют читателей.

RTFM https://github.com/erthink/libmdbx/blob/master/README.md#fea... среди прочего, там есть строки:
- Fully ACID-compliant, through to MVCC and CoW.
- Readers are non-blocking, notwithstanding snapshot isolation.

Со ссылками на пояснения что такое ACID, MVCC, CoW и snapshot isolation.
Кроме этого, см. https://ru.bmstu.wiki/LMDB_(Lightning_Memory-Mapped_Database) - вся эта информация в принципе применима к libmdbx, ибо "Historically, libmdbx is a deeply revised and extended descendant of the Lightning Memory-Mapped Database" (https://github.com/erthink/libmdbx/blob/master/README.md#his....

> Это не очень понятно. Что прочитает "читатель" если "писатель" не завершит изменение?

RTFM: ACID предполагает транзакции с изоляцией, т.е. читатели видят результаты только успешно завершенных транзакций.

> Запись в объект должна блокировать чтение из объекта на время исполнения записи.

RTFM: MVCC, snapshot isolation, page shadowing and CoW.
До фиксации транзакции писатель изменяет копию данных, которая не видна читателям.
Примерно как https://ru.wikipedia.org/wiki/Read-copy-update

> Тем более, если, как Вы говорите, имеется поддержка вторичных ключей.

Еще раз:
- в key-value не может быть вторичны ключей, ибо тогда это не key-value просто по определению.
- типизированные колонки, nullable, вторичные ключи, составные индексы - реализованы в https://github.com/PositiveTechnologies/libfpta поверх libmdbx.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.10, opennews, 09-Май-21, 22:01  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру