The OpenNET Project / Index page

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



"Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11.3"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11.3"  +1 +/
Сообщение от opennews (??), 31-Дек-21, 15:25 
Состоялся выпуск библиотеки libmdbx 0.11.3 (MDBX) с реализацией высокопроизводительной компактной встраиваемой базы данных класса ключ-значение.  Код libmdbx распространяется под лицензией OpenLDAP Public License.  Поддерживаются все актуальные операционные системы и архитектуры,  а также российский Эльбрус 2000. На конец уходящего 2021 года libmdbx используется как бэкенд хранения в двух самых быстрых клиентах Ethereum — Erigon и новой «Акуле», которая по доступной информации является самым высокопроизводительным клиентом Ethereum...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=56438

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

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –1 +/
Сообщение от Аноним (1), 31-Дек-21, 15:25 
Круто, поздравляю. Хотелось бы конечно полноценной реляционной БД. Ключ/значение подходит для чего-то очень специфического.

А так интересный проект. Для Android есть что-то похожее, вроде - mmkv.

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

2. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от тоже Аноним (ok), 31-Дек-21, 15:41 
> Хотелось бы конечно полноценной реляционной БД.

Ваше пожелание исполнено: https://www.opennet.ru/opennews/art.shtml?num=4438

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

4. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –5 +/
Сообщение от Rev (?), 31-Дек-21, 16:04 
Вот если такое же, но ~с перламутровыми пуговицами~ на чистом Расте...
Ответить | Правка | Наверх | Cообщить модератору

8. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +2 +/
Сообщение от Урри (ok), 31-Дек-21, 16:50 
Возьми и напиши. Язык ведь простой, безопасный, легко изучаемый и внутренне не противоречивый.
За недельки две осилишь, думаю.
Ответить | Правка | Наверх | Cообщить модератору

30. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (30), 01-Янв-22, 17:34 
Rev вышел из чата...
Ответить | Правка | Наверх | Cообщить модератору

36. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от Аноним (36), 01-Янв-22, 19:09 
Слабак немодный!
Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (1), 31-Дек-21, 17:07 
Это медленное и с архитектурой 20 летней давности. 25мс на примитивнейшие запросы... моё почтение, это много!!!

Если весь бюджет на изменение UI максимум 100мс, включая рендеринг и все-все-все остальное.

Есть DuckDB как лучик света https://github.com/duckdb/duckdb, который превосходит во всём. И на некоторых запросах 8х раз быстрее. Но есть и но.

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

17. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от x3who (?), 31-Дек-21, 19:56 
> Но есть и но.

Давай уже бросай второй сапог.

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

20. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (1), 31-Дек-21, 20:21 
Нет "Persistent index structures", те индексы пересоздаются каждый раз и живут только в памяти. Наверное для анализа данных и пофиг, а для моего todo листа очень плохо, не подходит.

Те пока как полноценная замена обычной ДБ не подходит. Они, правда, в этот сегмент и не метят. Но уж очень она хороша по технологиям. Её разрабатывают эксперты мирового уровня, как я понял.

https://github.com/duckdb/duckdb/issues/693#issuecomment-646...

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

24. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от тоже Аноним (ok), 01-Янв-22, 12:00 
Например, с прекрасным правильным и перспективным языком D эксперт мирового уровня колупается уже лет двадцать. Но есть одно но...
Ответить | Правка | Наверх | Cообщить модератору

25. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от x3who (?), 01-Янв-22, 13:18 
> Нет "Persistent index structures", те индексы пересоздаются каждый раз и живут только
> в памяти. Наверное для анализа данных и пофиг, а для моего
> todo листа очень плохо, не подходит.

А, спасибо, не заметил. У них там какой-то другой концепт с поколоночным доступом к записям, а не по записям, может поэтому индексы в традиционном представлении там не осмысленны.

Подозреваю оно ещё не хорошо будет вести себя на изменчивых данных. Т.е. пока иы последовательно заливаешь туда статистику - всё хорошо, а если потом пришел пропущенный ранее кусок данных - тут могут оказаться проблемы.

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

27. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –1 +/
Сообщение от Аноним (1), 01-Янв-22, 15:46 
Да, у них OLAP БД, а не OLTP. Те заточены на аналитические запросы по всей таблице (avg(price)), а не "where id = ...". И они её для Data Science создавали, как альтернативу Pandas. Те когда запросы минуты и десятки минут работают (пробегая всю терабайтную базу, условно говоря), те сидишь локально и вертишь её не торопясь на своём MacBook, исследуешь распределения, закономерности и т.п.

Там один раз можно и подождать создание индексов. Но они планируют сделать эти индексы персистентными, просто руки не дошли.

Но если она на таком сценарии работает хорошо, то и на простых запросах будет прилично работать.

Они туда впихнули все самые крутые инновации в БД. Это ART индексы, максимальное распараллеливание запросов, SSE регистры для векторной обработки и т.п.

В целом получает универсальная единая БД под любые типы запросов.

Очень жду когда допилят, хочу попробовать вместо SQLite в своём мобильном приложении.

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

38. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (38), 01-Янв-22, 19:45 
> Но если она на таком сценарии работает хорошо, то и на простых запросах будет прилично работать.

Дихотомия OLAP/OLTP не просто так появилась.
Далеко не всегда "рожденный ползать" означает, что он хорошо летает. Или наоборот, как вам больше нравится. Никого не хочу оскорбить, но каждой задаче - свой инструмент.

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

39. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –2 +/
Сообщение от Аноним (1), 01-Янв-22, 19:55 
Не согласен. Надо смотреть именно реализацию.

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

3. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (3), 31-Дек-21, 15:54 
ну так libmdbx и есть "для чего-то специфического" (LDAP)
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

12. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –2 +/
Сообщение от erthink (ok), 31-Дек-21, 18:04 
> ну так libmdbx и есть "для чего-то специфического" (LDAP)

У libmdbx действительно плохо только с одним сценарием - когда требуется фиксировать много мелких транзакций с гарантией сохранности данных при системной аварии (потери питания и т.п.), ибо намеренно нет WAL. В остальных случаях достаточно хорошо, либо ещё лучше.

А LDAP - просто идеальный вариант, много поисков/чтений и относительно мало апдейтов.

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

11. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от erthink (ok), 31-Дек-21, 17:45 
На всякий - libmdbx без проблем собирается под Android и iOS.

В сравнении с  mmkv есть несколько принципиальных отличий:
1. mmkv это "framework", т.е. с более развесистым, гуманно-плюшевым API;
2. насколько помню в mmkv накладные расходы в 3-4 больше раза, но это не заметно на его целевых "мобильных" масштабах.
3. libmdbx может больше именно как движок хранения. Например эффективные вложенные b-tree для повторов/дубликатов в индексах. И на терабайтных базах, с которыми libmdbx "просто работает", mmkv примерно не сможет.

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

13. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от Аноним (13), 31-Дек-21, 18:37 
Раз уж новость от самого автора, то хотелось бы у него же и поинтересоваться, в каком состоянии сейчас находится ReOpenLDAP, и планируется ли возобновление активности по проекту?
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от erthink (ok), 31-Дек-21, 18:42 
> Раз уж новость от самого автора, то хотелось бы у него же
> и поинтересоваться, в каком состоянии сейчас находится ReOpenLDAP, и планируется ли
> возобновление активности по проекту?

Уже отвечал, см https://www.opennet.ru/openforum/vsluhforumID3/125492.html#33

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

15. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (1), 31-Дек-21, 19:09 
А что там с секретной SQL DB, которую автор обещал пару лет назад?
Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от erthink (ok), 31-Дек-21, 19:23 
> А что там с секретной SQL DB, которую автор обещал пару лет
> назад?

Уточните, что именно вы имеете в виду?

Если форк кликхауса:
- то лицензия позволяет не открывать код, а финальное решение зависит от Positive Technologies.
- в ряде продуктов уже используется, а в 2022 таковых станет больше.
- имеет собственные фичи, а в целевых сценариях использования обгоняет кликхаус, в том числе умеет больше при использовании меньших ресурсов.

Если MithrilDB, то там никогда не планировался SQL. Аналогично с libfpta, но эта либа давно в production и доступна публично.

Если о приземлении SQLite на libmdbx, то это не ко мне, а сюда https://github.com/LumoSQL/lumosql/issues/4

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

21. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (1), 31-Дек-21, 20:24 
Понял, спасибо. Я о MithrilDB, думал это будет реляционная БД с SQL, замена SQLite
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от Аноним (18), 31-Дек-21, 19:59 
как на счет sophia?
Ответить | Правка | Наверх | Cообщить модератору

19. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от erthink (ok), 31-Дек-21, 20:13 
> как на счет sophia?

Не совсем понятно что вы хотите услышать, но для информации:
- это LSM, который Дмитрий делал (насколько мне известно) для Тарантула;
- разработка Sophia остановлена ~5 лет назад;
- еще до ухода Константина по-мотивам был сделан Vinyl, одна из основных фишек которого - глубока интеграция с тарантулом и одновременная фиксация транзакций от большого кол-ва клиентов.

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

22. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (22), 01-Янв-22, 03:27 
gnu recutils
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (49), 04-Янв-22, 16:26 
> gnu recutils

а при чем тут эта шняга уровня ini-файлов?
даже не bdb.

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

23. Скрыто модератором  –2 +/
Сообщение от Аноним (23), 01-Янв-22, 10:40 
Ответить | Правка | Наверх | Cообщить модератору

26. Скрыто модератором  +3 +/
Сообщение от Аноним (38), 01-Янв-22, 14:12 
Ответить | Правка | Наверх | Cообщить модератору

31. Скрыто модератором  –1 +/
Сообщение от Аноним (23), 01-Янв-22, 17:36 
Ответить | Правка | Наверх | Cообщить модератору

29. Скрыто модератором  +/
Сообщение от Аноним (30), 01-Янв-22, 17:32 
Ответить | Правка | К родителю #23 | Наверх | Cообщить модератору

32. Скрыто модератором  +2 +/
Сообщение от Аноним (23), 01-Янв-22, 17:49 
Ответить | Правка | Наверх | Cообщить модератору

33. Скрыто модератором  –1 +/
Сообщение от Аноним (38), 01-Янв-22, 18:45 
Ответить | Правка | Наверх | Cообщить модератору

42. Скрыто модератором  –4 +/
Сообщение от pansa2 (?), 01-Янв-22, 21:48 
Ответить | Правка | К родителю #29 | Наверх | Cообщить модератору

43. Скрыто модератором  +/
Сообщение от Otto Octavius (?), 01-Янв-22, 23:52 
Ответить | Правка | Наверх | Cообщить модератору

44. Скрыто модератором  +/
Сообщение от Аноним (38), 02-Янв-22, 11:42 
Ответить | Правка | Наверх | Cообщить модератору

45. Скрыто модератором  +/
Сообщение от Аноним (23), 02-Янв-22, 12:28 
Ответить | Правка | Наверх | Cообщить модератору

28. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –3 +/
Сообщение от adolfus (ok), 01-Янв-22, 17:31 
Чтобы называться базой данных, нужно, как минимум, поддерживать вторичные ключи, транзакции и временные блокировки вдоль и поперек таблиц.
И это, как его... AIDC -- вот!
Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Аноним (38), 01-Янв-22, 18:50 
> Чтобы называться базой данных, нужно, как минимум, поддерживать вторичные ключи, транзакции и временные блокировки вдоль и поперек таблиц.

Как насчет СУБД Redis, где нет даже таблиц?

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

35. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  –1 +/
Сообщение от adolfus (ok), 01-Янв-22, 19:04 
>> Чтобы называться базой данных, нужно, как минимум, поддерживать вторичные ключи, транзакции и временные блокировки вдоль и поперек таблиц.
> Как насчет СУБД Redis, где нет даже таблиц?

До СУБД этому редису, как до Луны раком. То, что умеет редис, я сделаю на c++11 и будет оно в разы быстрее, жрать памяти будет меньше и при этом не будет называться СУБД. Мало того, в дополнение к базовому функционалу будет поддерживаться isam в ключе.

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

37. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +3 +/
Сообщение от Аноним (38), 01-Янв-22, 19:42 
> То, что умеет редис, я сделаю на c++11 и будет оно в разы быстрее, жрать памяти будет меньше

Возможно, вам стоит сменить ник на "Лев Николаевич"?

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

40. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +2 +/
Сообщение от Аноним (23), 01-Янв-22, 20:48 
Не, пусть лучше сделает.
Ответить | Правка | Наверх | Cообщить модератору

41. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +1 +/
Сообщение от Аноним (38), 01-Янв-22, 20:57 
На деле оно обычно совсем не так, как на словах.
Ответить | Правка | Наверх | Cообщить модератору

47. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от adolfus (ok), 04-Янв-22, 09:57 
> Не, пусть лучше сделает.

Ага, мы тут десятилетиями ждали, когда-же редис изволит появиться.

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

52. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от erthink (ok), 04-Янв-22, 17:49 
Пожалуйста RTFM, транзакции и ACID в libmdbx есть.
Таблиц и вторичных ключей в key-value не должно быть по определению, но может быть надстроено (см. libfpta).

Блокировки нужны там "где они нужны", но в целом это лишь путь решения одних проблем ценой получение других.
В libmdbx намеренно полная сериализация для пишущих транзакций и примерно lockfree для читателей.
Собственно за счет этого в libmdbx существенно меньше накладных расходов, что позволяет получить в целевых сценария использования производительность на несколько порядков больше условного оракла.
Поэтому, например, возможно сделать Akula (самый быстрый клиент Ethereum).

Тем не менее, критику по поводу корректности использования терминов "база данных" и "СУБД" просьба начинать с первоисточников:
https://en.wikipedia.org/wiki/Database
https://ru.bmstu.wiki/LMDB_(Lightning_Memory-Mapped_Database)
и т.д.

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

46. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от Denisemail (??), 04-Янв-22, 00:25 
А где найти бинари под Windows?
Ответить | Правка | Наверх | Cообщить модератору

51. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.11..."  +/
Сообщение от erthink (ok), 04-Янв-22, 17:18 
> А где найти бинари под Windows?

Только собрать, больше никак.
Но ничего сложно https://github.com/erthink/libmdbx#building-and-testing

Распространение пакетов планируется для нескольких дистрибутивов Linux, но не для винды.

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

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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