The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.10"
Отправлено erthink, 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.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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