The OpenNET Project / Index page

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



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

"Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9.3"  +/
Сообщение от opennews (??), 08-Фев-21, 22:16 
После двух месяцев разработки состоялся выпуск библиотеки libmdbx 0.9.3 (MDBX) с реализацией высокопроизводительной, компактной встраиваемой базы данных класса ключ-значение. Код libmdbx распространяется под лицензией OpenLDAP Public License. libmdbx является глубокой переработкой СУБД LMDB и по заявлению разработчиков превосходит своего прародителя по надежности, набору возможностей и производительности. Заявляется, что libmdbx до 20% быстрее LMDB в CRUD сценариях, и до 30% быстрее если при сборке libmdbx отключить внутренний контроль до сопоставимого с LMDB уровня...

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

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

Оглавление

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


1. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –1 +/
Сообщение от Аноним (1), 08-Фев-21, 22:16 
Это как berkeley db?
Ответить | Правка | Наверх | Cообщить модератору

3. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +6 +/
Сообщение от erthink (ok), 08-Фев-21, 22:58 
> Это как berkeley db?

Смотря что подразумевать под этим "как".

Согласно википедии (https://en.wikipedia.org/wiki/Embedded_database#Oracle_Berke... последнее время наблюдается массовый переход с Berkeley DB на LMDB, поскольку второе меньше глючит и работает быстрее. Ну и плюс изменение лицензии.

За вычетом лицензии, наверное, главная проблема Berkeley DB в кешировании: большие накладные расходы, глюки и деадлоки - всё с момента появления этого кеширования.

Тем не менее, в Berkeley DB есть немало фичей отсутствующих в LMDB (тут не добавляли не затребованного). Эти фичи кому-то могут быть крайне важны, но одновременно превращают Berkeley DB в монструозный легасу-комбайн.

---

Ну и соответственно MDBX - это "улучшенная" LMDB. Но важно что кроме "улучшений" в libmdbx устранено достаточно багов (пример проявления https://github.com/ledgerwatch/turbo-geth/issues/1473).

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

62. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –11 +/
Сообщение от Энон (?), 09-Фев-21, 19:45 
вопрос из 4-х (четырёх!) слов... Ответ такого объёма, что первая мысль -- иди на [запрет в интернете]
Ответить | Правка | Наверх | Cообщить модератору

63. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +5 +/
Сообщение от erthink (ok), 09-Фев-21, 19:46 
> вопрос из 4-х (четырёх!) слов... Ответ такого объёма, что первая мысль --
> иди на [запрет в интернете]

Дак идите, не задерживайте очередь

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

74. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –2 +/
Сообщение от adolfus (ok), 10-Фев-21, 11:33 
До BerkeleyDB этому поделию, как до Луны раком. Оно даже на база данных, а обычный ретривер. BerkeleyDB поддерживает ISAM и полностью ACID. Это единственная нормальная не SQL база данных.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

77. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +2 +/
Сообщение от erthink (ok), 10-Фев-21, 12:07 
> До BerkeleyDB этому поделию, как до Луны раком.
> Оно даже на база данных, а обычный ретривер.

Без обид, но чушь.
Видимо от незнания/недопонимания.

> BerkeleyDB поддерживает ISAM и полностью ACID. Это
> единственная нормальная не SQL база данных.

Так было лет ~30 назад. Процитирую аргументацию, которую не нашлось кому опровергнуть:

BerkeleyDB — очень старый продукт в области, которая активно развивалась в последнее время, перенесла несколько революций и родила массу альтернатив с учетом набитых шишек. Лучшее враг хорошего и сейчас при (пожалуй) любом наборе критериев можно выбрать альтернативу превосходящую BerkeleyDB. К этому добавляется ряд проблем/недочетов: плохая производительность и/или deadlock-и при конкурентной обработки транзакций, полу-ручное восстановление БД после падений, смена лицензии на AGPL (неприемлема для некоторых проектов).

BerkeleyDB является встраиваемым движком хранения, но предлагает больше чем key-value. В результате получился комбайн, у которого что-то не так с каждой из features. Поэтому в последние годы (несмотря на усилия и деньги Oracle) разработчики предпочитают мигрировать с BerkeleyDB, когда им нужна хотя-бы одна features (производительность, надежность, масштабируемость, репликация, шифрование и т.д.) на актуальном для индустрии уровне.

Сомнительным, но всё-же аргументом, стало то, что при всей "чудесности" BerkeleyDB (исходя из проспектов Oracle) удаленный из MySQL 5.1 бэкенд хранение так и не был возвращен (работы и багов много, а толку нет).

--

В подтверждение, по списку https://en.wikipedia.org/wiki/Berkeley_DB#Past_users (который далеко не полный) видно, что от BerkeleyDB бегут все кому нужно что-то не-глючное, надежное и производительное.

А если сравнивать MDBX/LMDB c BerkeleyDB, то в той-же Википедии также неплохо сформулировано:
"... over recent years many well-known projects switched to using LMDB, because it outperform Berkeley DB in key scenarios on the ground of "less is more" design, as well due to the license changing."
Отсюда https://en.wikipedia.org/wiki/Embedded_database#Oracle_Berke...

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

2. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –10 +/
Сообщение от Аноним (2), 08-Фев-21, 22:32 
Судя по патчу для порта FreeBSD, написано крайне непрофессионально.
Ответить | Правка | Наверх | Cообщить модератору

4. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –1 +/
Сообщение от Аноним (4), 09-Фев-21, 00:17 
Ишвините, возможно не по адресу, но чем оно лучше leveldb? Понятно что leveldb не самая надёжная и устойчивая к поврежденями, кроме того у неё значительные футпринт и оверзхэд в рантайме, но помимо этого? А то lmdb что-то совсем никуда не годится.
Ответить | Правка | Наверх | Cообщить модератору

6. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +8 +/
Сообщение от erthink (ok), 09-Фев-21, 01:08 
> чем оно лучше leveldb?

Это разные движки, с принципиально различным внутренним устройством, т.е. теплое и мягкое.

> Понятно что leveldb не самая надёжная и устойчивая к поврежденями, кроме того у неё значительные футпринт и оверзхэд в рантайме, но помимо этого?

Дедушку levedb конечно пора отпустить, если только нет противопоказаний (например) от RocksDB.

Если же сравнивать MDBX (b+tree и ACID поверх MVCC за счет page shadowing) и RocksDB (LSM tree с "бантиками"), то минусы каждого из движков могут с запасом перекрыть плюсы в зависимости от сценариев и условий использования.
Т.е. если вам нужен "утюг", то подойдет одно, а если "подушка" - то другое.

При этом, для желающего понять как внутреннее устройство MDBX и RocksDB, так и для каких сценариев использования они (не)подходят - в Сети полно информации.


> А то lmdb что-то совсем никуда не годится.

ТТХ и поведение LMDB отлично соответствует целевым сценарием использования этого движка.

Поэтому оно очень даже годится с двумя оговорками:
1) в LMDB ребусный стиль кодирования, (как следствие) высокий порог вхождения и относительно малое кол-во людей готовых что-либо поправить с SLA.
= в MDBX это осталось, ибо иначе нужно "переписать".

2) в LMDB отсутствуют полноценные тесты и средства проверки целостности БД, (как следствие) баги приводящие к повреждению БД и/или потерям данных
= в MDBX это полностью устранено.

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

7. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –3 +/
Сообщение от Аноним (4), 09-Фев-21, 01:18 
> Это разные движки, с принципиально различным внутренним устройством, т.е. теплое и мягкое.

Если будете делать такие заявления, я сейчас начну сравнивать MDBX и HDF5, и скорее всего даже не придётся долго подбирать кейсы на которых последняя окажется предпочтительнее.

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

8. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +3 +/
Сообщение от erthink (ok), 09-Фев-21, 01:23 
>> Это разные движки, с принципиально различным внутренним устройством, т.е. теплое и мягкое.
> Если будете делать такие заявления, я сейчас начну сравнивать MDBX и HDF5, и скорее всего даже не придётся долго подбирать кейсы на которых последняя окажется предпочтительнее.

Т.е. вы считаете что MDBX и RocksDB схожи насколько, что метафора "теплое и мягкое" не подходит?

Просветите тогда уж меня убогого.

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

9. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –2 +/
Сообщение от Аноним (4), 09-Фев-21, 01:35 
Нет. Я считаю, что это всё совершенно не интересно пользователям, имеют значение только осязаемые параметры. И вот скажем это "ура, мы на 5% быстрее на узкоспецифичных кейсах!" не тянет на конкурентное преимущество. По многим пользовательским параметрам rocks и lmdb проигрывают leveldb, во всяком случае так было неделю назад, когда я крайний раз выбирал key-value хранилище для проекта. Может быть, с тех пор что-нибудь и поменялось.
Ответить | Правка | Наверх | Cообщить модератору

11. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 01:58 
отредактировано/удалено: кот прыгнул на тачпад...
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +4 +/
Сообщение от erthink (ok), 09-Фев-21, 02:15 
>[оверквотинг удален]
> быстрее на узкоспецифичных кейсах!" не тянет на конкурентное преимущество. По многим
> пользовательским параметрам rocks и lmdb проигрывают leveldb, во всяком случае так
> было неделю назад, когда я крайний раз выбирал key-value хранилище для
> проекта. Может быть, с тех пор что-нибудь и поменялось.
> Нет. Я считаю, что это всё совершенно не интересно пользователям, имеют значение
> только осязаемые параметры. И вот скажем это "ура, мы на 5%
> быстрее на узкоспецифичных кейсах!" не тянет на конкурентное преимущество. По многим
> пользовательским параметрам rocks и lmdb проигрывают leveldb, во всяком случае так
> было неделю назад, когда я крайний раз выбирал key-value хранилище для
> проекта. Может быть, с тех пор что-нибудь и поменялось.

1) Позвольте пожелать удачи вашему (похоже воображаемому) "проекту".

2) Не 5%, а до 30%. Не в "узкоспециализированных кейсах", а в CRUD-сценариях с псевдо-случайным порядком записей.
По ссылкам, кроме _ВСЕХ_ исходных текстов, легко найти примечание: 2 inserts, 1 read, 1 update, 1 delete.

3) Ничего не поменялось примерно с самого начала.
Что-чему проиграет/выиграет принципиально зависит от требований, например:
- сколько процессов работают с БД;
- нужны ли транзакции и с какой изоляцией;
- отношение read/write в нагрузке;
- ограничения на выброс latency;
- нужны ли выборки диапазонов;
- как долго живут версии данных;
- отношение объема данных и ОЗУ;
- какие диски;
- и т.д.

Короче, просится RTFM:
https://github.com/erthink/libmdbx#performance-comparison
https://github.com/erthink/libmdbx#comparison-with-other-dat...

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

26. Скрыто модератором  –6 +/
Сообщение от Аноним (4), 09-Фев-21, 10:18 
Ответить | Правка | Наверх | Cообщить модератору

28. Скрыто модератором  +4 +/
Сообщение от erthink (ok), 09-Фев-21, 10:27 
Ответить | Правка | Наверх | Cообщить модератору

29. Скрыто модератором  –2 +/
Сообщение от Аноним (4), 09-Фев-21, 10:35 
Ответить | Правка | Наверх | Cообщить модератору

33. Скрыто модератором  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 10:47 
Ответить | Правка | Наверх | Cообщить модератору

37. Скрыто модератором  –8 +/
Сообщение от Аноним (4), 09-Фев-21, 11:11 
Ответить | Правка | Наверх | Cообщить модератору

30. Скрыто модератором  –3 +/
Сообщение от Аноним (4), 09-Фев-21, 10:36 
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

34. Скрыто модератором  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 10:51 
Ответить | Правка | Наверх | Cообщить модератору

35. Скрыто модератором  –1 +/
Сообщение от Аноним (4), 09-Фев-21, 11:05 
Ответить | Правка | Наверх | Cообщить модератору

36. Скрыто модератором  +2 +/
Сообщение от erthink (ok), 09-Фев-21, 11:09 
Ответить | Правка | Наверх | Cообщить модератору

38. Скрыто модератором  –3 +/
Сообщение от Аноним (4), 09-Фев-21, 11:14 
Ответить | Правка | Наверх | Cообщить модератору

40. Скрыто модератором  +7 +/
Сообщение от Аноним (-), 09-Фев-21, 12:01 
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

59. Скрыто модератором  +/
Сообщение от Аноним (-), 09-Фев-21, 17:04 
Ответить | Правка | К родителю #34 | Наверх | Cообщить модератору

10. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (10), 09-Фев-21, 01:52 
> Если будете делать такие заявления, я сейчас начну сравнивать MDBX и HDF5, и скорее всего даже не придётся долго подбирать кейсы на которых последняя окажется предпочтительнее.

так сравни, с диагнозом сразу станет понятно ;)

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

13. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –1 +/
Сообщение от Аноним (13), 09-Фев-21, 02:17 
Ужасно сложно выражаешь свои мысли
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

15. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (10), 09-Фев-21, 02:28 
он и код пишет такой-же, даже говард чу не осиливает.
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (13), 09-Фев-21, 02:25 
> LSM tree с "бантиками"

Каким еще "бантиками"?

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

16. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +2 +/
Сообщение от erthink (ok), 09-Фев-21, 02:31 
>> LSM tree с "бантиками"
> Каким еще "бантиками"?

https://github.com/facebook/rocksdb/wiki/Features-Not-in-Lev...

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

24. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от crypt (ok), 09-Фев-21, 10:11 
это все, конечно, да... а где в каких продуктах PT она используется?
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

27. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 09-Фев-21, 10:20 
https://github.com/PositiveTechnologies/libfpta внутри https://www.ptsecurity.com/ru-ru/products/mpsiem/
Ответить | Правка | Наверх | Cообщить модератору

17. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от Аноним (17), 09-Фев-21, 02:51 
const uint64_t cadabra =
      rrxmrrxmsx_0(*abra + UINT64_C(7680760450171793) * (unsigned)mdbx_getpid())

качество кода зашкаливает

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

18. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +2 +/
Сообщение от erthink (ok), 09-Фев-21, 02:57 
> const uint64_t cadabra =
>       rrxmrrxmsx_0(*abra + UINT64_C(7680760450171793) * (unsigned)mdbx_getpid())
> качество кода зашкаливает

Не знакомы с иньективными отображениями и примитивами/миксерами хеш-функций?

Но я подскажу вам где действительно стоит критиковать - см. код функции mdbx_update_gc().
Это действительно то, что Howard Chu не стал осиливать ;)

А если "понравится", то начните с https://github.com/LMDB/lmdb/tree/mdb.master/libraries/liblm...

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

53. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от nuclightemail (??), 09-Фев-21, 15:08 
Вполне очевидно, что речь про:

> cadabra
> rrxmrrxmsx_0

а не константы хэшей - которые, впрочем, тоже можно было вынести в макросы.

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

54. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 09-Фев-21, 16:25 
>Вполне очевидно, что речь про:
>> cadabra
>> rrxmrrxmsx_0
>а не константы хэшей - которые, впрочем, тоже можно было вынести в макросы.

Это (пожалуй) предельно простой и прозрачный фрагмент кода, примерно как hello world, но не пример из учебника.
Его читаемость улучшит только знание что такое rrxmrrxmsx и чем может быть константа, а не приседания с вынесением "магических" констант в макросы.
Поэтому, пожалуйста, не надо делать что-то вроде code review настолько беспощадно (к себе).
Тем не менее, если вы хотите облагородить какие-то фрагменты кода, то я с радостью приму PR.

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

55. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от llolik (ok), 09-Фев-21, 16:29 
> rrxmrrxmsx_0

Нет бы взяли да назвали RotateRotateXorMultiplyRotateRotateXorMultiplyShiftXor_0, да. Это общепринятые сокращения, а не авторский стиль.

https://github.com/martinus/better-faster-stronger-mixer

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

21. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (21), 09-Фев-21, 09:48 
А не подскажете, для сценария, однопоточного чтения/записи, с очень редкими записями из других потоков, какая KV-бд подойдёт? Надо максимизировать скорость.
Ответить | Правка | Наверх | Cообщить модератору

25. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 10:15 
> А не подскажете, для сценария, однопоточного чтения/записи, с очень редкими записями из
> других потоков, какая KV-бд подойдёт? Надо максимизировать скорость.

Если данные помещаются в ОЗУ и чтения существенно больше чем записи, то MDBX может быть очень неплохим вариантом:
- чтения будут неблокируемыми, OlogN и со скоростью доступа в память, и на каждом ядре CPU.
- редкие пишущие транзакции можно делать no-sync и сбрасывать на диск асинхронно (вызывая mdbx_env_sync из отдельного треда).


RocksDB также стоит примерить, особенно если какая-либо фича может вам помочь (например фильтр Блума).

Но в целом может подойти очень многое и надо внимательно смотреть на все остальные аспекты.

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

70. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (21), 10-Фев-21, 07:30 
спасибо
Ответить | Правка | Наверх | Cообщить модератору

22. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от Наноним (?), 09-Фев-21, 10:00 
mdbx.c++
mdbx.h++

"Быть не как все" снова детектед.

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

31. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –4 +/
Сообщение от Аноним (-), 09-Фев-21, 10:39 
Очень хорошо . Только если рискнули на гитхабной помойке разрабатывать - закройте возможность гадить в код кому попало иначем мы вас потеряем очень скоро.
Ответить | Правка | Наверх | Cообщить модератору

32. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –1 +/
Сообщение от Аноним (-), 09-Фев-21, 10:44 
> Please don't use my work, if you are associated with Adolf Hitler, Stepan Bandera, George Soros, Michael Hodorkovsky, either support an actions of these felons.

Одобрямс. Надо лицензию придумать чтоб копрорации не имели право использовать код, есть идеи ?

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

39. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –2 +/
Сообщение от pansa2 (?), 09-Фев-21, 11:36 
Да, хорошо бы такое ... выпиливать с гитхаба. Предлагаю флешмобчик в виде абьюзов. =)
Ответить | Правка | Наверх | Cообщить модератору

42. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от anonymous (??), 09-Фев-21, 12:14 
Ставить Ходорковского в один ряд с Гитлером -- это знать про Ходорковского из пропагандистских СМИ. А вообще в свободных лицензиях не должно быть ничего такого конечно же. Навязывать свои тараканы чужим -- это уже не свободная лицензия.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

43. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 12:20 
> Ставить Ходорковского в один ряд с Гитлером -- это знать про Ходорковского
> из пропагандистских СМИ.

Ваше мнение является следствием других пропагандистских СМИ.
Тем не менее, там нет явного знака равенства (т.е. не нужно передергивать), а ограничение на длину не позволяет что-либо уточнить.

> А вообще в свободных лицензиях не должно быть
> ничего такого конечно же. Навязывать свои тараканы чужим -- это уже
> не свободная лицензия.

Читайте внимательно.
Это просьба, а не часть лицензий (которые явно указаны внутри каждого проекта).

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

46. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (46), 09-Фев-21, 12:22 
>а ограничение на длину не позволяет что-либо уточнить.

https://github.com/erthink/erthink

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

76. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от anonymous (??), 10-Фев-21, 11:37 
> Ваше мнение является следствием других пропагандистских СМИ.

Скорее собственного небольшого исследования на эту тему. При участии СМИ конечно же, но скорее как для получения дополнительного набора ссылок для уточнения.

> там нет явного знака равенства

Я и не говорил, что он там есть.

> Это просьба, а не часть лицензий (которые явно указаны внутри каждого проекта).

Я и не говорил "убрать из лицензии" или как либо иначе о том, что оно есть в лицензии. Я лишь говорю, что такого в свободных лицензиях быть не должно.
Читайте внимательнее.

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

44. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (46), 09-Фев-21, 12:20 
>лицензию придумать чтоб копрорации не имели право использовать код

GNU GPL

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

48. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (48), 09-Фев-21, 12:42 
Ты читать умеешь ?

ИСПОЛЬЗОВАТЬ, не только закрывать

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

80. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от anonymous (??), 10-Фев-21, 22:18 
А где граница между корпорацией и ООО из двух человек?
Ответить | Правка | Наверх | Cообщить модератору

47. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 12:24 
> Очень хорошо . Только если рискнули на гитхабной помойке разрабатывать - закройте
> возможность гадить в код кому попало иначем мы вас потеряем очень
> скоро.

Не понял что вы хотели сказать.
В код кому-то гадить крайне сложно, нужны явные разрешения и некое понимание кода.

Ну и никакой особой разработки на github нет, это просто удобная и общеизвестная площадка, которая используется для:
- раздачи кода.
- взаимодействия с пользователями библиотеки и накопления "ачивок" (гитхабовых звездочек).
- прогона CI-тестов на условиях "для open source".

А после блокировки Крыма основным репо считается https://abf.io/erthink/libmdbx, о чем добавлены примечания.

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

49. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –1 +/
Сообщение от Аноним (-), 09-Фев-21, 12:48 
> Не понял что вы хотели сказать.
> В код кому-то гадить крайне сложно, н общеизвестная площадка

Общественный сартир. Никогда не знаешь какой баг тебе завезут "случайно" под видом поддержки windoz (кстати поддержку оно лучше выпилить в идеале не заявлять изначально). У меня уже музей проектов которые мы потеряли. То тут вдруг и неожиданно пофиксили что работать стало в тысячи раз медленнее, то тум вдруг буфер стал вылазить и ни один санитайзер не видит этого. Могу только посоветовать если не плевать на свое творчество (которое потеряешь когда принимаешь чужие комиты, точнее они становятся совладельцами и могут сыграть с тобой в демократические выборы, и всем будет чьхать что ты 99.9999% кода написал) .

Хороший же проект, опомнись пока не поздно !

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

50. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 09-Фев-21, 13:04 
> Хороший же проект, опомнись пока не поздно !

Все несколько проще:
- MDBX основывается на LMDB, поэтому лицензию уже не изменить (OpenLDAP Public License), вне зависимости от (не)принятия каких-либо коммитов.
- что касается MithrilDB, то вне зависимости от лицензии там будет Contribution Agreement.

Тем не менее, модель Open Source, как таковая, имеет свои как плюсы, так и минусы...

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

51. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Наноним (?), 09-Фев-21, 13:27 
> MithrilDB

AdamantiumDB тоже свободно!

Вроде бы взрослый человек...

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

52. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 13:38 
>> MithrilDB
>AdamantiumDB тоже свободно!
>Вроде бы взрослый человек...

Так это же для пользователей, а они как дети - хотят тесла, яблоки всякие...

Но на всех не угодишь - тут вот какому-то дитяте тайтл "libmdbx" не нравился, а вам "мифрил".
Короче, сделайте усилие и привыкайте ;)

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

57. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Наноним (?), 09-Фев-21, 16:43 
Ну да, ну да. Это пользовательское бессознательное шутить изволит.
Побойтесь Зевса!
Ответить | Правка | Наверх | Cообщить модератору

65. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от andy (??), 09-Фев-21, 21:13 
> А после блокировки Крыма основным репо считается https://abf.io/erthink/libmdbx, о чем добавлены > примечания.

Это просто камни с неба! Но им то что? Они же в родной гавани!
  

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

69. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Tifereth (ok), 10-Фев-21, 03:45 
В подвале сайта стоит

ROSA Lab © 2021

при этом и rosalab.com, и rosalinux.com недоступны. Хотя жив wiki.rosalab.com - подправили бы подвал, что ли...

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

72. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (72), 10-Фев-21, 11:01 
> при этом и rosalab.com, и rosalinux.com недоступны. Хотя жив wiki.rosalab.com - подправили бы подвал, что ли...

РОСА всегда жила в зоне *.ru, а не *.com

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

79. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Tifereth (ok), 10-Фев-21, 14:33 
>> при этом и rosalab.com, и rosalinux.com недоступны. Хотя жив wiki.rosalab.com - подправили бы подвал, что ли...
> РОСА всегда жила в зоне *.ru, а не *.com

Ну тогда им точно нужно малость починить сайт. На главной

https://abf.io/

в подвале стоит вот что:

[a href="http://www.rosalab.com/about"]About the company[/a]

(нормальные теги по понятной причине поставить не могу)

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

41. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от Аноним (41), 09-Фев-21, 12:07 
Субдб либмдбх. Высокопроизводительный. Скороговорка. После 3-х стаканов.
Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от erthink (ok), 09-Фев-21, 12:21 
> Субдб либмдбх. Высокопроизводительный. Скороговорка. После 3-х стаканов.

Есть еще и "t1ha", так что лучше не пейте (тем более стаканами).

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

56. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от жабабыдлокодер (ok), 09-Фев-21, 16:35 
erthink, а API по сравнению с lmdb сильно изменено? Чем-то вроде https://github.com/lmdbjava/lmdbjava удастся воспользоваться или биндинг самому писать придется?
Ответить | Правка | Наверх | Cообщить модератору

58. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 09-Фев-21, 16:58 
> erthink, а API по сравнению с lmdb сильно изменено? Чем-то вроде https://github.com/lmdbjava/lmdbjava
> удастся воспользоваться или биндинг самому писать придется?

API существенно расширено и в паре мест принципиально изменено (время жизни и требования явно закрывать курсоры, время жизни DBI хендлов).
Но всё такие изменения (включая причины) описаны в доке.

Поэтому биндинги на 95% получаются путем замены префиксов.

Кроме этого, в README есть ссылки на существующие привязки. Там есть и для Явы, хотя порядком протухшие.
Есть от чего оттолкнуться.

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

60. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от жабабыдлокодер (ok), 09-Фев-21, 17:07 
Спасибо. Разбираться и писать самому увы, времени нет...
Ответить | Правка | Наверх | Cообщить модератору

61. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 09-Фев-21, 17:08 
Если вдруг сподвигнитесь на собственные байдинги, то большая просьба глянуть на новое C++ API и "повторить на яве" ради унификации. При этом сейчас ещё можно обсуждать и встречно менять плюсовое API.
Ответить | Правка | К родителю #56 | Наверх | Cообщить модератору

64. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от andy (??), 09-Фев-21, 21:11 
Поклонники Сороса, Ходорковского и Бандеры не используют Ваши продукты?
Ответить | Правка | Наверх | Cообщить модератору

68. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  –1 +/
Сообщение от rico (ok), 10-Фев-21, 00:10 
Они очень страдают морально и финансово, но нет. Не используют.
Ответить | Правка | Наверх | Cообщить модератору

75. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +1 +/
Сообщение от Аноним (75), 10-Фев-21, 11:34 
Почему Miranda NG переходит на SQLite, если MDBX так хороша?
Ответить | Правка | Наверх | Cообщить модератору

78. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от erthink (ok), 10-Фев-21, 13:32 
> Почему Miranda NG переходит на SQLite, если MDBX так хороша?

Насколько мне известно, там не переход, а добавление еще одного драйвера хранения.

Тем не менее, история такая:

1.
До каких-то последних версий (если не ошибаюсь, в январе этого 2021 года) libmdbx внутри Miranda NG использовалась некорректно, из-за чего пользователи теряли данные.
Пользователи считали что причина проблем в MDBX, ругались и активно просили добавить еще один драйвер хранения.

Суть проблемы была в том, что БД явно и намеренно открывалась в небезопасном режиме (без гарантий сохранности данных при системном сбое, выключении питания и т.п).
Это неоднократно было пояснено разработчикам, но они считали что риски мизерны и долго не могли сподвигнуться на переделку своего кода.

Следы этих обсуждений и моих пояснений/комментариев есть как в https://github.com/miranda-ng/miranda-ng/issues, так и на форуме Miranda NG http://forum.ru-board.com/topic.cgi?forum=5&topic=34402

2.
Примерно за год до этого (до февраля 2020 года), в драйвере Miranda NG были какие-то баги, из-за которых в БД записывались неверные данные.
Подробностей я не помню, но они есть в истории коммитов Miranda NG и в issues проекта на github.

3.
Еще примерно за год до этого (до февраля 2019 года) было две неприятности именно в libmdbx:

- Из-за моей оплошности в миранду (и далее к пользователям) исходно попала "девелоперская" версия, которая намерено делалась несовместимой по формату БД с релизами (чтобы в production не попадали экспериментальные фичи).
Эту проблему огораживали как могли, но пользователей она конечно злила.

- Был обнаружен и устранен унаследованный из LMDB баг, который мог приводить к повреждению БД.
Возможно этот баг также затронул пользователей миранды, но субъективно проблемы были от описанного выше.

--

В libmdbx при этом много чего было сделано для лучшей поддержки Windows, включая даже поддержку Windows 2000/XP и работу под Wine.

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

82. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от AnonPlus (?), 10-Апр-21, 02:25 
В следующем выпуске именно переход, т.к. mdbx-базы будут только читаться, создавать новые уже запрещено.
Ответить | Правка | Наверх | Cообщить модератору

81. "Выпуск высокопроизводительной встраиваемой СУБД libmdbx 0.9...."  +/
Сообщение от AnonPlus (?), 10-Апр-21, 02:24 
Две причины:

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

- под SQLite есть тонна внешних утилит для работы с базами, пользователи это очень хотят

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

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

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




Спонсоры:
Inferno Solutions
Ideco
A-Real
Hosting by Hoster.ru
Хостинг:

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