powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
25 сообщений из 305, страница 2 из 13
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206347
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopArm79Посмотрел примеры. И что, запросы тоже надо в JSON писать? Вообще же жесть.
Реализуй LINQ-провайдер, тогда хоть перспективы появятся.

Там есть Link Queries. Дот Нет, Джава, С++
Linq.NET провайдер не реализовую ввиду невозможности его портировать под другие языковые клиенты.Вот это прям аргумент :) У 10gen почему-то такая проблема не встала.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206349
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopМонгу в 10+ раз и тд.
ну да, ну да... а где бенчмарки с участием различных движков MongoDB посмотреть, трёх-четырёх?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206360
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAstopМонгу в 10+ раз и тд.
ну да, ну да... а где бенчмарки с участием различных движков MongoDB посмотреть, трёх-четырёх?

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

https://github.com/Bazist/DniproServer/blob/master/DniproDB/DniproDB/Test.h

На что способна ваша машинка с Днипро, можно узнать если в консоли запустить db.SelfTest()

Также я выкладывал выше результаты более высокоуровневых бенчмарков, через ДотНет провайдер.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206372
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Также если будете делать тесты, учитывайте пожалуйста, что Mongo не поддерживает ACID и Транзакции.
А также при добавлении документа, он не индексируется по всем полям ( кроме блоб ). Так что желательно это учесть в бенчмарках.

Со своей стороны скажу, что архитектура Монги неочень.
Эти bson-ы никуда не годятся.
У меня подходы совершенно другие и резульаты совершенно другие.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206378
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopА также при добавлении документа, он не индексируется по всем полям ( кроме блоб ).
А если это и не нужно?

Например, добавляется сложный иерархический и весьма объемный json. Зачем мне индексировать все поля? Какой оверхед на индексы использует ваша СУБД?

Кстати, в PostreeSql используется бинарный формат json. Вы анализировали?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206387
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такова специфика базы.
Наконец с пользователя снят головняк добавлять индексы.
Если индекс не нужен. Ну там картинка видео длинный текст - создавайте блоб.

По поводу размеров тут все специфично. Инвертация дает компрессию данных. На это можно найти много примеров. Но есть и оверхед в других примерах. Для разных данных он будет разный как и везде
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206416
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stop
На открытом. В рамках импортозамещения у вас там как я понял свои правила игры.
Зато на в рамках импортозамещения нет опасных конкурентов. Там качество может быть ниже, а цена выше. Такая возможность не часто бывает.

А на открытом начнется: Флэшбэки, Секции (партиции), Резервные БД, Синхронная репликация, Аналитические запросы с оконными ф-ми и т.д. и т.п. Тут надо что-то эдакое, чтобы прорваться.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206421
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopТакже если будете делать тесты, учитывайте пожалуйста, что Mongo не поддерживает ACID и Транзакции.
А также при добавлении документа, он не индексируется по всем полям ( кроме блоб ). Так что желательно это учесть в бенчмарках.
А на кой оно мне нужно?

stopСо своей стороны скажу, что архитектура Монги неочень.
Эти bson-ы никуда не годятся.
У меня подходы совершенно другие и резульаты совершенно другие.
Раскройте тему, о чём это Вы? О каком конкретно движке монги?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206424
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopТакова специфика базы.
Наконец с пользователя снят головняк добавлять индексы.
А у пользователей когда-то был такой головняк? :) И кстати какие структуры Вы для индексов используете?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206430
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну окей. Давайте начнем с азов.
Тут важно понять саму архитектуру.

Arm79Например, добавляется сложный иерархический и весьма объемный json.


Допустим у нас есть обьект, сложный, иерархический. Допустим это Джисон и занимает 1 мб.
В коллекции у вас таких джисонов допустим 100 тысяч.

Итак, берем формат

Arm79Кстати, в PostreeSql используется бинарный формат json. Вы анализировали?

И пытаемся понять, что у нас произойдет если мы захотим, допустим, вставить 1 млн атрибутов в середину ...
Один новый атрибут, для каждого документа. Очевидно что Монге или Постгресу прийдется идти и перезаписывать каждый такой бинарный джисон ! А сколько это займет времени ?
Не мало. Мегабайты прочитать и перезаписать. С некоторыми небольшими оптимизациями.

Вместе с тем Днипре достаточно просто вставить 1 млн ключей.
Днипра это сделает за считаные миллисекунды, разница буде в сотни раз с Монгой или Постгресом ...

Далее, тотже пример, с 100 млн джисонов нам нужно вычитать только по три аттрибута с каждого.
Что произойдет с бисонами и прочьим трешем ? Опять будем читать всё с небольшими оптимизациями ...

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

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

Короче Днипра ведет себя как поколоночное хранилище, хорошо оптимизироаное на вставки и апдейты документов,
(а что нам еще нужно?). Она предоставляет транзакции и ОРМ и имеет няшный синтаксис.
Вместе с тем Постгрес, Монго, Каучи и прочий западный треш спасет только выброс в море.

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

Сегодня в репо я добавил новый раздел. DniproExample там я буду собирать примеры работ на Днипре.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206434
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stop, повторю вопрос: о каком движке монги Вы говорите?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206436
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+ о каком движке компрессии?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206439
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перечитайте мой пост выше.
Также в книге моей есть архитектура. Самые первые страницы.

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

Кто тут неленивый, пишите бенчмарки. Но я бы не стал тратить на это время, если
вчитаться в то что я написал выше. Это глупо. Речь идет не о 10%, а о десятках и сотнях раз.
Именно во столько Днипра топчет всякие недолугие бисоны.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206446
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfostopНа открытом. В рамках импортозамещения у вас там как я понял свои правила игры.
Зато на в рамках импортозамещения нет опасных конкурентов. Там качество может быть ниже, а цена выше. Такая возможность не часто бывает.

А на открытом начнется: Флэшбэки, Секции (партиции), Резервные БД, Синхронная репликация, Аналитические запросы с оконными ф-ми и т.д. и т.п. Тут надо что-то эдакое, чтобы прорваться.

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

Если в импортозамещение уйдут базы тогоже Стоунберга, Пост Ингрес или Линтер то ИМХО, это будет шаг назад.
Нет никаких серьезных приимуществ у этих баз и собраны они по книжкам 20ти летней давности.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206482
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopПеречитайте мой пост выше.
Зачем? Чтобы ещё раз задать свои вопросы?

Короче ладно. Думаю Вы продолжите уходить от них, так что давайте прямо: Вы в современной монге не разбираетесь и пишите глупости.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206483
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopВ целом, чтобы не разбираться в множестве этого треша, могу дать следующий ориентир.
Если база не индексирует по всем полям джисон (как полнотекстовый движок) значит
она не использует инвертацию раз, не работает эффективно два.
А это вообще граничит с фееричным бредом.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206484
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAstopПеречитайте мой пост выше.
Зачем? Чтобы ещё раз задать свои вопросы?

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

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

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

Удачи в дальнейшем слепом освоении американских поделок )
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206486
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopЭтот разговор пуст. Поскольку нет понимания что же все-таки происходит внутри.
Вот это верная мысль, так как у Вас нет понимания того, что происходит внутри различных движков, доступных для монги.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206491
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAstopЭтот разговор пуст. Поскольку нет понимания что же все-таки происходит внутри.
Вот это верная мысль, так как у Вас нет понимания того, что происходит внутри различных движков, доступных для монги.

Я вам уже ответил на вопрос.
Современные движки монги - муссор. Обьяснил на пальцах как работают бисоны.
Пояснил почему такие подходы работают в десятки раз медленее.
Намекнул почему такие ущербные архитектуры не увидят транзакции и АСИД. Индусы могут поднапрячься конечно,
но на бенчмарках всеравно всех выведут на чистую воду.
Обратного вы доказать не сможете, поскольку это разговор механика (меня) и водителя (вас).
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206563
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopИ пытаемся понять, что у нас произойдет если мы захотим, допустим, вставить 1 млн атрибутов в середину ... Очевидно что Монге или Постгресу прийдется идти и перезаписывать каждый такой бинарный джисон...

Что за странная идея? Почему я что-то должен вставлять в какую то середину? Мне например, неочевидно.

stopНет никаких серьезных приимуществ у этих баз и собраны они по книжкам 20ти летней давности
Эвклидова геометрия тоже, чай, не на днях появилась, и до сих актуальна. Поэтому считать то, что появилось 20 лет назад, негодным - опрометчиво.

stopЕсли база не индексирует по всем полям джисон (как полнотекстовый движок) значит
она не использует инвертацию раз, не работает эффективно два.
Это совершенно неверное утверждение. Например, у меня есть сложный иерархический JSON, например, профиль клиента ЮЛ. Размер такого JSON может достигать нескольких мегабайт. Из всех реквизитов для поиска используется ну штук 50 реквизитов. Остальные несколько тысяч - идут в нагрузку. Вопрос - зачем мне тратить время на индексацию ВСЕХ реквизитов? Это бессмысленная трата времени.


stopОбратного вы доказать не сможете, поскольку это разговор механика (меня) и водителя (вас).
На всякий случай - тема называется "... предлагаю обсудить...". Не скатывайтесь в персональные оскорбления, иначе будете обсуждать вашу БД сами с собой. Проявите конструктивизм. Выложите тест, с загрузкой пользовательских JSON (а не то, что у вас 3 атрибута), чтобы каждый мог запустить у себя и рассказать о результатах.


Кроме того, осталась нераскрыта тема того, каким образом у вас обеспечивается транзакционность, если скорость вставки документов 1-3 млн/сек, а диск, собака такая, не поддерживает такую скорость, из чего следует, что эта толпа документов только у вас в оперативке.

И второй момент, который я хотел бы услышать - если я загружаю JSON с 2 тысячами атрибутов и размером 1 мегабайт, то какой оверхед по потребляемой памяти будет заниматься индексами?

ЗЫ Если речь о "импортозамещении", сравните ваше поделие с Tarantool
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206573
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Что за странная идея? Почему я что-то должен вставлять в какую то середину? Мне например, неочевидно.


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

Arm79Это совершенно неверное утверждение. Например, у меня есть сложный иерархический JSON, например, профиль клиента ЮЛ. Размер такого JSON может достигать нескольких мегабайт. Из всех реквизитов для поиска используется ну штук 50 реквизитов. Остальные несколько тысяч - идут в нагрузку. Вопрос - зачем мне тратить время на индексацию ВСЕХ реквизитов? Это бессмысленная трата времени.


А мне так удобней, можно искать по всем атрибутам. Строить разную аналитику.
Если работает быстрее, то почему бы и нет, почему меня должно заботить что чтото там не должно быть проиндексировано ?

stopВыложите тест, с загрузкой пользовательских JSON (а не то, что у вас 3 атрибута), чтобы каждый мог запустить у себя и рассказать о результатах.


Тестов у меня уже предостаточно. (из выложеных только уже под 20)
Если хотите свой сделать - пожалуйста делайте.

stopКроме того, осталась нераскрыта тема того, каким образом у вас обеспечивается транзакционность, если скорость вставки документов 1-3 млн/сек, а диск, собака такая, не поддерживает такую скорость, из чего следует, что эта толпа документов только у вас в оперативке.


Если в одной транзакции миллион вставок то позволяет делать. Поскольку коммит на диск происходит только на последней операции
db.Commit().

stopИ второй момент, который я хотел бы услышать - если я загружаю JSON с 2 тысячами атрибутов и размером 1 мегабайт, то какой оверхед по потребляемой памяти будет заниматься индексами?


Я вам уже отетил. От компрессии до оверхеда. Для сложных иерархических обьектов скорее всего будет компрессия.
Подробнее - изучать архитектуру и пробовать.

stopЗЫ Если речь о "импортозамещении", сравните ваше поделие с Tarantool

Не вижу смысла сравнивать базу с полноценными транзакциями, ОРМ и джисонами
с обычным ИнМемори Key\Value. Ф-сть не эквивалентна.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206644
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79
ЗЫ Если речь о "импортозамещении", сравните ваше поделие с Tarantool
А Tarantool в списке для импортозамешения? Оно как бы связано с LUA? Но это вроде бразильский язык( хотя и юзается у нас в QUIK). Они что открытые или чьи?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206683
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoArm79ЗЫ Если речь о "импортозамещении", сравните ваше поделие с Tarantool
А Tarantool в списке для импортозамешения? Оно как бы связано с LUA? Но это вроде бразильский язык( хотя и юзается у нас в QUIK). Они что открытые или чьи?
В официальном сиске по моему нет, но mail.ru-шная разработка, opensource, LUA - это язых хранимок в TARANTool. Для CRUD операций не нужен.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206685
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopбазу с полноценными транзакциями, ОРМ и джисонами
с обычным ИнМемори Key\Value
Вы бы сначала почитали про них. Они тоже дают транзакции. В отличие от вас их разработка на продуктиве.
Когда ваши сервера будут обслуживать реальные миллионы обращений секунду, как у них, тогда вы можете так пренебрежительно относиться. Пока что у вас бета. И мы обсуждаем плюсы и минусы.

Кстати, а где это у вас ОРМ?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39206710
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79stopбазу с полноценными транзакциями, ОРМ и джисонами
с обычным ИнМемори Key\Value
Вы бы сначала почитали про них.


Про кого, про них ?

Arm79Они тоже дают транзакции.


Какие из трех стандартных видов поддерживают ? (ReadCommited, RepeatableRead, Snapshot)

Arm79В отличие от вас их разработка на продуктиве.
Когда ваши сервера будут обслуживать реальные миллионы обращений секунду, как у них, тогда вы можете так пренебрежительно относиться. Пока что у вас бета. И мы обсуждаем плюсы и минусы.


А вы уверены что у меня не также ?
Вообщето эта Днипра пришла к нам как форк из поисковика.
А в поисковике терабайты данных и при реиндексировании
нагрузка на ядро миллиарды запросов в час.

К томуже, нет у Меил ру никаких миллионов обращений в секунду.
У Гугла даже таких нагрузок нет. Если про реальные пользовательские обращения,
то всего около 3 миллиардов запросов в сутки.

Arm79Кстати, а где это у вас ОРМ?

А вы уверены что у них не Key\Value ?
У меня, как мы уже разобрались, можно записать в ламповом шарпе на няшном синтаксисе чтото вроде (ORM)

Код: c#
1.
db.AddDoc(obj);



И всё готово. Сложный иерахический обьект сериализирован в джисон, добавлен в базу
и проиндексирован по всем полям. А каже это сделать на Тарантуле ?
...
Рейтинг: 0 / 0
25 сообщений из 305, страница 2 из 13
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]