LINUX.ORG.RU
Ответ на: комментарий от anonymous

Могу.

Объясните почему openldap решил выкинуть конфетку и запилить говно с нуля, если конфетка — такая конфетка.

Причин несколько. Во-первых, пилили изначально (и пилят по большей части) люди из Питер-Сервиса. Им понадобилась такая вот база, они её в начале запилили, а потом предложили в openldap. Это если подходить чисто формально.

Во-вторых, оракл (я не зря выше про лицензию помянул) изменил лицензию на bdb в сторону AGPLv3. Году в 2013, в результате в дебиане взвыли первыми и понеслись выносить bdb. Пока, как я понимаю, не особо вышло.

В третьих, возможности bdb для нужд ldap всё таки избыточны. bdb это уже не просто какой-то менеджер записей типа key-value, это уже больше бд. Для ldap нужно всё скромнее.

В-четвёртых, «все хотят in-memory db», что lmdb и предоставляет. Т.е., это решение ближе к redis/tarantool, чем к bdb. Хотя, в bdb тоже можно in-memory db (https://docs.oracle.com/cd/E17076_05/html/articles/inmemory/C/index.html). Даже реплицируемость сохраняется, но все, как я понимаю, хотят сразу и искаропки. И чтоб без задержек, всё в RAM. И похрен репликации (понимаю, в современном мире думать это несколько не модно).

Ну вот, как-то вот так... Основные причины таковы.

Moisha_Liberman ★★
()
Ответ на: комментарий от Deleted

Ну хам, так хам...

Невежественный, так невежественный. Лай не говно, к сапогам не липнет. Переход на личности свидетельствует о том, что оппонент глубока погрузился в задницу и понимает это. Но по ряду причин не находит в себе смелости это признать. Я не удивлён. К тому дискуссия и шла.

Счастливого пути! Надеюсь, намёк понятен без дополнительного указания точки назначения.

Если до Вас опять не дошла семантика, то, как я надеюсь, секс Вы любите и догадки насчёт дороги уже забрезжил в Вашем сознании.

Ещё раз разрешите пожелать Вам счастливого пути! =)))

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)
Ответ на: А почему я её должен путать, мне интересно? от Moisha_Liberman

Я lmdb и не смотрел внимательно и не буду. Разок палочкой потыкал и хорош, дела надо делать. Просто потому что не вижу реальных преимуществ.

Вы некомпетентны, не желаете ни признать это, ни исправить.

Как не было в ldbm репликаций, так их и в lmdb нет. Смысл менять одно говно на другое?

ldbm отличается от lmdb чуть больше чем голова от попы.

А «репликации» нет чуть менее чем во всех key-value движках хранения (не путать с СУБД). Объяснять вам причины мне кажется как горохом об стену.

«Репликация» в BDB - костыльное решение, которое иногда кое-где можно использовать. Но компетентный специалист предпочтет до последнего не связываться с такой «репликацией», ибо говно (выражаясь вашей терминологией).

Вот Вам ответ К. Чоу, радуйтесь — https://www.openldap.org/lists/openldap-technical/201507/msg00091.html

There are quite a few distributed data systems out there built on top of LMDB. Replication isn't really a subject area that's relevant to an embedded data store.

Совершенно верный ответ, но без пояснения пары десятков «почему», и не от «К. Чоу», а от Говарда Чу.

Т.е., Вы хотите мне сказать что эти два сорта одного говна фатально различаются?

По-моему, Вы несёте херню. И да, Вам откомментировать нечего.

Феноменальный фонтан некомпетентности и апломба. Вам лучше RTFM по 4 часа в день и к зеркалу.

Deleted
()
Ответ на: комментарий от Deleted

Батенька, Вы не нашли дорогу? Заплутали? =)))

Если до Вас ещё не дошло почему я задал своему оппоненту (не Вам, Вам бесполезно) вопрос про то, какие из бэкэндов имеют реплицируемость, то я готов медленно и печально (и специально для Вас) объяснить.

Если мы о репликации, то мы (ну, я по крайней мере) понимаю под этим процесс синхронизации содержимого нескольких копий объекта. И более ничего. Если у Вас, у малолетнего долб..., простите, более молодого и менее искушённого типа... «коллеги» до сих пор в Вашем межушном ганглии ещё не зажглась лампочка с надписью «хреново без репликаций-то», то я Вам, точнее Вашему работодателю соболезную.

Потому что Вы так ни хера и не поняли и требуете чтобы Вам объяснили что и в случае ldbm и в случае lmdb разницы нет, т.к. ни там, ни там репликаций не было, нет и не предвидится. Так что, если Вы даже не поняли о чём речь, то да, в своём диагнозе я был прав.

До Вас даже не доходит что lmdb это Lightning Memory-Mapped Database. Хотя Вы же сами сказали:

А «репликации» нет чуть менее чем во всех key-value движках хранения (не путать с СУБД).

Т.е., с Ваших же слов, database это ни как к СУБД не относится? Или, это всё таки, несколько не database тогда?

Правда, Вам бы стоило заняться продажей tarantool db (опять не database?) в OpenLDAP, возможно бы и продали...

Здесь, пожалуй, точка. Ну Вас на хер в игнор. Вы бесперспективны.

UPD. И да! Забыл! Увидел как в ответ на приведённый кусок вывода в терминал насчёт сборки redis Вы меня в гугль вознамерились отправить, взоржахом аки конь стоялый... =))) Понимаю, не всем дано... Да... Не всем... =)))

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)
Ответ на: Могу. от Moisha_Liberman

Объясните почему openldap решил выкинуть конфетку и запилить говно с нуля, если конфетка — такая конфетка.

Могу.
Причин несколько. Во-первых, пилили изначально (и пилят по большей части) люди из Питер-Сервиса.

Эти «люди» - я, но уже более трех лет назад )

Им понадобилась такая вот база, они её в начале запилили, а потом предложили в openldap. Это если подходить чисто формально.

WTF?

Но в целом изложенная версия соответствует вашей компетенции.

Во-вторых, оракл (я не зря выше про лицензию помянул) изменил лицензию на bdb в сторону AGPLv3. Году в 2013, в результате в дебиане взвыли первыми и понеслись выносить bdb. Пока, как я понимаю, не особо вышло.

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

Поэтому bdb не вынесли, а зафиксировали версию (т.е. новых версий не будет).

Это всё на фоне неудовлетворенности производительностью bdb и жалоб на баги. Соответственно, чуть менее чем все стали смотреть по сторонам в поисках альтернатив.

В третьих, возможности bdb для нужд ldap всё таки избыточны. bdb это уже не просто какой-то менеджер записей типа key-value, это уже больше бд. Для ldap нужно всё скромнее.

Совершенно верно - для LDAP как и «чуть менее чем всех» нужен не набор глючащих свистелок и примочек, а нормально работающий основной функционал. В том числе поэтому, ни один LDAP не использует чудо-мудо-репликацию bdb.

На всякий цитата из https://directory.fedoraproject.org/docs/389ds/design/backend-redesign.html

There have been many issues with the transaction model in BDB leading to blocking read access during writes or leading to deadlocks. It is time to offer the choice of an implementation which uses copy on write and where readers are not blocked by writes.

В-четвёртых, «все хотят in-memory db», что lmdb и предоставляет. Т.е., это решение ближе к redis/tarantool, чем к bdb. Хотя, в bdb тоже можно in-memory db (https://docs.oracle.com/cd/E17076_05/html/articles/inmemory/C/index.html).

lmdb/mdbx/libfpta могут работать с БД больше размера RAM, но если БД помещается в память то latency намного ровнее.

При этом мне не известны сценарии (вне зависимости от размеров RAM и БД) когда bdb была-бы лучше lmdb и тем более mdbx/fpta. Ссылки на бенмарки уже показывал.

Даже реплицируемость сохраняется, но все, как я понимаю, хотят сразу и искаропки. И чтоб без задержек, всё в RAM. И похрен репликации (понимаю, в современном мире думать это несколько не модно).

Как уже пояснял «реплицируемость» в bdb где-то между токсична/малополезна/неприменима.

Deleted
()
Ответ на: Батенька, Вы не нашли дорогу? Заплутали? =))) от Moisha_Liberman

Если до Вас ещё не дошло почему я задал своему оппоненту (не Вам, Вам бесполезно) вопрос про то, какие из бэкэндов имеют реплицируемость, то я готов медленно и печально (и специально для Вас) объяснить.

Попробуйте, будет забавно.

Если мы о репликации, то мы (ну, я по крайней мере) понимаю под этим процесс синхронизации содержимого нескольких копий объекта. И более ничего. Если у Вас, у малолетнего долб..., простите, более молодого и менее искушённого типа... «коллеги» до сих пор в Вашем межушном ганглии ещё не зажглась лампочка с надписью «хреново без репликаций-то», то я Вам, точнее Вашему работодателю соболезную.

Вы откровенно нарываетесь, демонстрируя предельное хамство, смешанное с некомпетентностью и апломбом.

Потому что Вы так ни хера и не поняли и требуете чтобы Вам объяснили что и в случае ldbm и в случае lmdb разницы нет, т.к. ни там, ни там репликаций не было, нет и не предвидится. Так что, если Вы даже не поняли о чём речь, то да, в своём диагнозе я был прав.

Там нет репликации, потому что она там не нужна, точнее будет малополезной с кучей ограничений и «фифектов» (как в bdb).

До Вас даже не доходит что lmdb это Lightning Memory-Mapped Database. Хотя Вы же сами сказали:

Т.е. вы хотите объяснить (контрибьютору OpenLDAP/LMDB и разработчику-меинтейнеру ReOpenLDAP/mdbx) куда он коммител, что может означать «database» и чем «storage engine» отличается от DBMS?

Давайте, будет забавно )

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.