The OpenNET Project / Index page

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



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

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

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #3, #11

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #4, #9

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

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

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

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

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #17

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 примерно не сможет.

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

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

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

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

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

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

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

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

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

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

16. Сообщение от 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ообщить модератору
Родитель: #15 Ответы: #21

17. Сообщение от x3who (?), 31-Дек-21, 19:56   +1 +/
> Но есть и но.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #20

18. Сообщение от Аноним (18), 31-Дек-21, 19:59   +1 +/
как на счет sophia?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #19

19. Сообщение от erthink (ok), 31-Дек-21, 20:13   +/
> как на счет sophia?

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

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

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

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #24, #25

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

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

23. Сообщение от Аноним (23), 01-Янв-22, 10:40   –2 +/
>Главная ссылка к новости (https://github.com/erthink/lib...)
>This is a mirror of the origin repository that was moved to abf.io because of discriminatory restrictions for Russian Crimea.

П - последовательность.

P. S. Не брат ты мне, ...

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #26, #29

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

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

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #27

26. Сообщение от Аноним (38), 01-Янв-22, 14:12   +3 +/
В прошлом веке в "цивилизованных" странах было модно травить евреев, в этом - крымчан и иранцев.
Мода меняется, культурные традиции остаются.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #31

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

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

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

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

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #38

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

29. Сообщение от Аноним (30), 01-Янв-22, 17:32   +/
Вроде как у самой positive technologies проблемы (на них какие-то санкции наложены)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #32, #42

30. Сообщение от Аноним (30), 01-Янв-22, 17:34   +/
Rev вышел из чата...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #36

31. Сообщение от Аноним (23), 01-Янв-22, 17:36   –1 +/
Причём тут Крым? Человек якобы напловину свалил с GitHub хлопнув дверью, то, что на GitHub - это типа зеркало, но при этом в главной ссылке к новости указан именно GitHub, а не почти никому не нужный хостинг репозиториев, сделанный в "лучших" традициях отечественного опенсорса. Следует либо крестик снять, либо трусы надеть.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26

32. Сообщение от Аноним (23), 01-Янв-22, 17:49   +2 +/
Реверс-инжиниринг не очень совместим с копирайтом. А инфосек не очень совместим с отсутствием реверс-инжиниринга. Если контора не работает на Суверена, то прижать такую контору можно через суд, как прижали re3 (сам факт подачи иска и начала производства уже сам по себе прижим). Было бы желание. Ежели контора работает на благо Суверена, то прижать её в судах её Суверена за работу на её суверена проблематично, остаётся только открывать "другие действия". Но если речь о тёрках суверенов, то другой суверен с длинными руками и не против оказать assistance.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #33

33. Сообщение от Аноним (38), 01-Янв-22, 18:45   –1 +/
> жели контора работает на благо Суверена, то прижать её в судах её Суверена за работу на её суверена проблематично

Ага. Например, https://www.eff.org/cases/hepting

> In July, 2008, after a long and contentious battle in Congress, the government and AT&T were awarded the so-called retroactive immunity from liability under the controversial FISA Amendments Act (FAA), which was enacted in response to our court victories in Hepting. Signed by President Bush in 2008, the FAA allows the Attorney General to require the dismissal of the lawsuits over the telecoms' participation in the warrantless surveillance program

То есть законы нарушать как бы нельзя, но если в интересах национальной безопасности, то можно.

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

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #35

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34 Ответы: #37

36. Сообщение от Аноним (36), 01-Янв-22, 19:09   +1 +/
Слабак немодный!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #40

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #39

39. Сообщение от Аноним (1), 01-Янв-22, 19:55   –2 +/
Не согласен. Надо смотреть именно реализацию.

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

40. Сообщение от Аноним (23), 01-Янв-22, 20:48   +2 +/
Не, пусть лучше сделает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #41, #47

41. Сообщение от Аноним (38), 01-Янв-22, 20:57   +1 +/
На деле оно обычно совсем не так, как на словах.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40

42. Сообщение от pansa2 (?), 01-Янв-22, 21:48   –4 +/
жаль, что гитхаб не блочит за авы. А так, с людьми с такой авой в  одном поле срать не сядешь, не то, что еще что. И от позитива тепер один негатив. Как читаю про PT,  так сразу этого индивидуума вспомню и тошнит (
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #43

43. Сообщение от Otto Octavius (?), 01-Янв-22, 23:52   +/
>жаль, что гитхаб не блочит за авы

Блочить за авы недопустимо. (Обсуждать в каких случаях "допустимо" не буду, ибо абсолютно недопустимо ни в каких случаях, и всё тут.)

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42 Ответы: #44

44. Сообщение от Аноним (38), 02-Янв-22, 11:42   +/
> Блочить за авы недопустимо. (Обсуждать в каких случаях "допустимо" не буду, ибо абсолютно недопустимо ни в каких случаях, и всё тут.)

Демократия так не работает.
Демократия - это прежде всего механизм, позволяющий объединить общественное мнение вокруг идеи, спущенной "сверху". Народ и партия должны быть едины, а для этого народ должен поддерживать линию партии. Поэтому носителей неугодных точек зрения нужно травить, травить и еще раз травить. Зачем нужны эти методы прошлого века, с вывозом неугодных темной ночью на черных машинах? Просто покажи пальцем, кто тут плохой, и толпа специально обученных бабуинов сожжет его на костре. Такова воля народа, простых Джона и Джейн До.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #45

45. Сообщение от Аноним (23), 02-Янв-22, 12:28   +/
Алексей Осипов, залогиньтесь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44

46. Сообщение от Denisemail (??), 04-Янв-22, 00:25   +/
А где найти бинари под Windows?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #51

47. Сообщение от adolfus (ok), 04-Янв-22, 09:57   +/
> Не, пусть лучше сделает.

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

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

49. Сообщение от Аноним (49), 04-Янв-22, 16:26   +/
> gnu recutils

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

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

51. Сообщение от erthink (ok), 04-Янв-22, 17:18   +/
> А где найти бинари под Windows?

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

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

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

52. Сообщение от 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)
и т.д.

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


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

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




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

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